モデルにモーションを入れ込み、紳士的な動きをさせる。
この記事について
モデルデータの取得方法の続きで
モーション回りの取得方法と、Unityでの設定や調整方法の一例を紹介します。
モーションデータの取得
MixamoというAdobeが展開している
サービスがあり、アカウント作成のみで様々な
モーションデータを、Fbxファイルで取得できます。
Q&Aに利用についての範囲が明記されています。
多くのショートモーションが用意されており
一般的な動きであれば、そのまま利用できますし
成人向けのゲームにおいても、工夫すれば活用可能です。
モーションの再生方法
まずは、モデルにモーションさせるまでを整理します。
VRMをUnityにインポートする
まずは、VroidHubから取得したモデルをUnityにインポートしましょう。
インポートには「UniVRM」というパッケージを入れる必要があります。
公式ドキュメントから取得とインストールを済ませて下さい。
下記の様になれば、成功です。
ちなみに、「VRM」および「UniVRM」は
「VRM Consortium」というドワンゴが母体の会社から提供されており
MITライセンスでの運用が可能です。
Mixamoのモーションを適応する
次に、モデルにモーションさせたい紳士的な動きをイメージし
Mixamo内のモーションから、近しいものを探します。
大方無いと思うので、それっぽいモーションを見極め取得します。
今回は「Crossleg Freeze」というモーションを拝借します。
取得したモーションをUnityに取り込み
InspectorからRig設定をHumanoidにします。
その後、Fbx内のAnimationClipをCtrl + Dでコピーして取り出します。
VRMモデルは、読み込み時にでAnimatorをAddしているので
AnimationControllerを作成して、Animatorに登録します。
その後、コピーしたAnimationClipをAnimationControllerに登録し
再生を実行すると、下記の様にモーションしてくれるはずです。
モーションを改変して出力
さて、こんなブレイクダンスのモーションを取らせたい訳ではないので
モーションの尺をいじり、紳士的な動きとして調整します。
「Crossleg Freeze」のfbxを選択して
InspectorからAnimationタグを開くと、尺の調整ができます。
Lengthという項目があるので、使用するフレームを指定します。
今回は「63」~「73」フレームを取得したいので
StartとEndにフレーム数を指定して、Applyします。
その後、Fbx内のAnimationClipをコピーすると
下記の様に、指定フレームのモーションとなります。
これだと、ガクガクで何のモーションか分からないですが
AnimationControllerに登録しておきます。
ループモーションとして整える
AnimationControllerでは、モーション(ステート)を複製して
連結する事が可能で、再生速度も調整できます。
登録したCrossleg Freezeをコピー&ペーストすると
もう一つ、Crossleg Freezeが追加されます。
どちらかを選択して、右クリックする事で「MakeTransition」が
選べると思うので、お互いに矢印が向くように設定します。
そして、各モーションの再生速度を指定できるので
片方に「0.1」もう片方に「-0.1」と設定する事で
モーションの再生と、逆再生を交互に行うようになります。
ここまでくると、どの様に紳士的な動きをするか
イメージできて来たかと思いますが、まだ調整は残ってます。
手足と頭の位置を整える
Unityは標準でIK設定用のスクリプトを備えているので
そちらを利用して、手足や頭の位置を調整します。
まず、AnimatorのBaseLayer設定から
IkPassを有効にしておきます。
次に下記スクリプトを、VRMモデルにAddします。
※Animatorの付いてる階層でAddしてください。
vrm_ik_controller.cs (2.34kB)
ダウンロード指定のTransformに手足と頭を向ける処理なので
適当に、各パーツを付けたい位置を示す、Gameobjectを作成し
Inspectorから登録していきます。
これで再生すると、下記の様になります。
あとは、足場とか、台とか適当に用意して
IKの座標を調整してあげれば・・・
見事に紳士的なりましたね!
まとめ
という事で、短いモーションであれば
デザインスキルがなくても、それなりの表現は可能という例でした。
もちろん
MixamoのデータはBlender等で、修正可能ですので
スキルがある方は、そちらで調整頂いた方が簡単かと思いますが
参考になれば幸いです。
最後に、より紳士的な見た目になるように調整した動画を用意しました
粗末ですが、拝見頂ければと思います。
(フォローは要求しちゃいます・・・すいません・・・)
以上です。
フォロワー以上限定無料
説明した内容を、より紳士的なモデルで実行し、動画に収めました。
無料