見出し画像

TDPTでポーズ取得してBlenderで調整してChatVRMで再生する

「TDPT」でポーズ取得して「Blender」で調整して「ChatVRM」で再生する手順をまとめました。


1. TDPT

TDPT」(Three D Pose Tracker) は、誰でも簡単にWebカメラ (またはiPhoneカメラ) のみでフルボディトラッキングできるツールです。今回はiOS版を使います。

ダウンロード無料、一部買い切り課金で利用できる「プレミアムメニュー」(600円) があります。「プレミアムメニュー」ではVRoidHubからアバターを変更できたり、ライブストリーミング配信、モーションデータの送信や書き出し、といった機能を利用できます。

今回は、モーションデータを書き出したいので課金します。

2. TDPTによるポーズ取得

「TDPT」によるポーズ取得の手順は、次のとおりです。
今回は手をふるポーズを作成します。

(1) iOSのカメラで手をふる動画を撮影。
動画には全身が入るようにします。

(2) 「写真」(iOSアプリ)で動画を選択し、「シェア→フォルダに保存」を選択。

(3) 「TDPT」のアプリを起動し、「左下のメニュー→Select Video」を選択し、動画選択。
動画をもとにしたモーションが再生されます。

(4) 「中央下のプレミアムボタン→BVH」を選択。
ポーズの録画を開始します。

(5) 「画面をタップ→Stopボタン」を選択。
ポーズの録画を停止します。「ファイル」(iOSアプリ) に「bvh」が保存されます。

(6) 「ファイル」(iOSアプリ) の「bvh」をシェアしてPCに送信。

(7) 「bvh2vrma」で「vrma」に変換。
「bvh」をドラッグ&ドロップするだけで「vrma」に変換できます。

(8) ChatVRMで再生。
「vrma」を「public/idle_loop.vrma」と入れ替えて実行すると再生できます。
ループの継ぎ目のカクつきが気になります。

3. Blenderによるキーフレーム調整

Blenderでキーフレームを調整します。

3-1. セットアップ

(1) Blenderを起動し、初期配置されてるCubeを削除。

3-2. BVHの読み込み

(1) メニュー「ファイル → インポート → モーションキャプチャー(.bvh)」を選択。

(2) 「bvhファイル」を選択し、前方「Yが前方」、上「Zが上」を選択し、「BVHをインポート」を押す。
「bvh」の出力で座標系変更が見つからなかったので、OpenGLと同じ座標系で読み込んでいます。

「OpenGL」の座標系は 右方向が+x・上方向が+y・奥方向が-z (右手座標系) なのに対し、「Blender」の座標系は 右方向が+x・上方向が+z・奥方向が+y になります。

3-3. アニメーションの確認

(1) 「レイアウト」タブの下端の「アニメーション再生ボタン」で動作を確認。

3-4. キーフレームの調整

(1) 「アニメーション」タブの「ドープシート」を選択。
キーフレームの編集を行う画面です。
(2) 「3Dビューポート」選択状態の「a」キーで全選択。
ドープシートに全キーフレームが表示されます。

(3) 先頭のキーフレームをコピーし、最後尾に貼り付け、そこを終了フレームに設定。
キーフレームのコピーは、キーフレームを選択して「右クリック→コピー」、貼り付けは「右クリック→貼り付け」です。

(4) アニメーションの確認。

3-5. BVHの保存

(1) メニュー「エクスポート→モーションキャプチャ(.bvh)」で「bvh」を保存。

3-6 ChatVRMでのアニメーションの確認

(1) 「bvh2vrma」で「vrma」に変換。
(2) ChatVRMで再生。
ループの継ぎ目のカクついてないことを確認します。

4. その他のキーフレーム調整

「原点の設定」以外は、「アニメーション」タブでの操作になります。

4-1. キーフレームの削除

(1) キーフレームを選択して、「右クリック → キーフレームを削除」。

4-2. キーフレームのフレーム移動

(1) キーフレームを選択して、「g」キーを押し、マウスで移動させ、左クリックで決定。

4-3. キーフレームの位置・回転・スケール

(1) キーフレームを選択して、「デルタトランスフォーム」を編集。
相対移動させる値になります。

4-4. キーフレームを間引く

(1) 「グラフエディター」を開く。

(2) 「グラフエディター」のメニュー「キー → 密度 → キーフレームを掃除」を選択。

(3) 「しきい値」を選択。

4-5. 原点の設定

(1) 「レイアウト」タブで、「a」キーなどでオブジェクトを選択。
(2) 「オブジェクト → 原点を設定 → 原点を3Dカーソルへの移動」。



この記事が気に入ったらサポートをしてみませんか?