Unityで使うキャラクターにオリジナルのポーズをさせたいので、ポーズの作り方を勉強します。
そもそもUnityで使われているポーズorアニメーションの形式ってなんなでしょう?
よくわからないけどfbxモデルにアニメーションを含めとけば、勝手にアニメーションファイルとしてunityにインポートされるらしい。
Mayaでポーズを作ってunityに入れる
maya
ポーズを作るために仮の人体モデルが必要です。標準ボーン的なモデルとかないのかなと思ってググったけど見つけれなかったので、unityのとあるアニメーションアセットに入っていたfbxモデルをmayaに入れました。
アニメーションモードにします。
ボーンを表示するにはジョイントX線表示というボタンを押します。
ちゃんとボーンが入っていました。
キーフレームを打つのは、Sキーです。赤くなったら打てたってことらしい。
関節を動かすごとにSキーを押さないと、あとでまとめて全部キー登録とかはできません。
こんな感じで1フレーム目でポーズをつけて試しに出力。
全て書き出しで、設定画面でアニメーションをベイク処理にチェックを入れで終了フレームを設定します。そしてfbxで書き出します。
unityで読み込み
fbxを入れると中にTake001という名前でアニメーションが入っています。ただこの状態ではポーズは反映されていません。
モデルをhumanoidにします。
そしてanimation controllerにtake001をセットして動かすと・・・
できたー!!
他のhumanoidモデルにも適用可能!ただ、他のモデルは手が重なってしまいました。元ポーズがT字とA字の違いなのか、体の大きさのせいなのか?
ポーズだけでなくアニメーションも同じ感じで作れました。
©Kizuna_AI
おまけ:左右対称
Mayaでポーズを左右対称にするにはポーズエディタを使えばいいらしいですが、うまく対象になりませんでした。
最後に
意外と簡単にできました。Mayaじゃなくてもfbxで書き出せるソフトだったらなんでもいいと思います。
これで簡単なポーズとかアニメーションぐらいだったら自分でつけられますね。
unityでポーズつけれるようになってほしいです。できるのかな?
ちなみに今回作ったポーズはスマホで写真を撮る人のつもりなんですが、あまりsれっぽく見えない・・・人体は奥深い
参考
[Unity] Mayaからアニメーション付きでFBXファイルをエクスポートするときにコンストレインが壊れる: ものづくりログ