演習3-2: Mixamoデータの読み込み
Trimの設定
Mixamoのモーションデータは,基本的に周期モーションとして調整されています.
- デフォルト: 周期モーション
- 範囲を拡げる: 周期モーション+くり返し
※ 今後の回では,デフォルトのTrim設定でモーションをダウンロードして下さい.
FPSの設定
前述のとおり,Mixamoでは3段階のFPSでモーションデータを出力できます.
- 30 FPS (デフォルト)
- 24 FPS
- 60 FPS
試しに 60 FPSのデータをダウンロードしてBlenderに読み込んでみました.
- すると,BlenderのFPSが自動的に 60 FPSに変わります.
下記の画像の通り,FBXデータを読み込むと,自動でFPS設定が変わるのでどのFPSで作業しているか注意しましょう. (基本は,30 FPSを使えば良いです)
Keyframe Reduction
モーションデータの変化として面白いのがKeyframe Reduction(キーフレームの削減)です.
実行すると,動きが再現される範囲内で,自動的に不要なフレームデータを削減します.
- uniform: 全てのタイミングを合わせてキーフレームを削減する
- nonuniform: 各関節個別にキーフレームを削減する
※ nonuniformの場合,動きが滑らかなうちは良いですが,キーフレームを削減しすぎると各関節の動きが違って見えてくる点に注意しましょう.
1. モーションデータの準備: Adobe Mixamoからダウンロードしたファイル.
事前に宿題でダウンロードしたデータを使ってください.
FBXデータとは?
様々な3DCGソフトウェア・ゲームエンジンで活用できる汎用的な3Dファイルフォーマットです.
- カメラやライト,ポリゴンメッシュ,アニメーションまで多岐なデータを含んでいます.
- blenderやMaya等の3DCGソフトウェアやUnity, Unreal Engine等のゲームエンジンで相互にデータをやり取りする際に活用されます.
2. blenderを起動して空のシーンを用意する
第1回の授業内容を復習して空のシーンを作ってください.
- Blenderを起動するとデフォルトの立方体のシーンが出る.
- 立方体を削除して空のシーンを用意する.
※ 既にBlenderを立ち上げている場合,File > New > Generalで立方体のデフォルトシーンにリセットできます.
3. FBXデータをインポートする.
まずは,選んだモーションに対してモーションデータをBlenderに読み込んでみましょう.
- File > Import > FBX (.fbx)を選択する
- ダウンロードしたファイルを選んで開く
- モデルが表示されるか,アニメーションが再生されるか確認する.
4. データ構造の確認
アウトライナー(右側のフォルダのようなGUI)上でArmatureの階層を開き,以下の3つのデータについて確認してください.
- Armature: 階層構造を持ったスケルトンデータ.
- Beta_Joints: 関節用の3Dモデル
- Beta_Surface: ボディ用の3Dモデル
3Dモデルの部分はキャラクター毎に異なる
例えば,Ninjaの場合,
- Armature
- Ch24: 全身用の3Dモデル
Armatureの中のArmatureの階層を開くと?
mixamorig:Hips...以下の構造が見えると思います.
- 階層的に開いてみて,何のデータを指しているのかを想像してみましょう.
5. スケルトンの確認
- 3Dモデルはいったん邪魔なので,非表示にします.
- 右側の目のアイコンを押していくと表示状態を切り替えることができます.
- 左上の編集モードを「Object Mode」⇒「Pose Mode」に切替えます.
- Poseからスケルトンを選択できるようになります.
- アウトライナーでPoseを階層的に開く
- mixamorig:Hips...以下の各関節名をクリックすると,対象のボーンを選択できます.
- 3Dモデルビューからの直接選択
- Pose Modeであれば,3Dモデルビュー上で各関節をクリックして選択できます.
Pose Modeに注意
- 関節の選択は,Pose Modeにしないと行えません.
- スケルトン全体しが選択出来ない場合は,Object Modeになっています.
Mixamoデータとモーションキャプチャデータの比較
以前グループで撮影したモーションキャプチャデータを読み込んで, Mixamoデータと比較してください.
- スケルトン構造
- アニメーションデータ
どのような違いがあるでしょうか?