Unityで3Dモデルにアニメーションを設定する方法
今回はUnityで3Dモデルにアニメーションを設定して待機モーションをとらせたいと思います。
プロジェクトは前回の記事の続きから↓
それではまずProjectのAssets/Animationsフォルダの中を右クリックして" Create → Animator Controller "としてAnimatorを作成しましょう。(Project上部の+ボタンからでもできます。)そして名前を" PlayerController "としておきましょう。↓
次に作成したAnimatorにアニメーションを設定していきましょう。
アニメーションはMixamoのモーションを使用します。Idleのモーションデータを開くとその中の" mixamo.com "を選択” Ctrl + D "を押して複製しましょうそしてわかりやすくIdleと名前を変更しておきましょう。↓
次は先ほど作成したPlayerControllerを選択しInspectorにある" Open "を押してAnimatorを開きましょう。すると↓の画像の赤線で囲んである部分のようなWindowが立ち上がっているはずです。
そのWindowへ先ほど複製してIdleという名前にしたアニメーションクリップをドラッグ&ドロップしましょう。↓の画像のようになっていれば大丈夫です。
次にHierarchyのPlayerオブジェクトに" Add Component "で" Animator "というコンポーネントを追加しましょう。そして追加したAnimatorに" Controller "という項目と" Avatar "という項目があります。↓画像の赤枠部分
" Controller "には" PlayerController "を設定し、Avatarには使用しているモデルの中に入っているものを設定しておきましょう。↓の画像が設定後
この状態で再生ボタンを押すと、
待機モーションをするようになりました。(動きが小さすぎてわかりにくいですが・・・)
なおキャラクターの脚が地面についていない場合はPlayerオブジェクトのCharactor ControllerにあるHightの値やCenterのY値を変更するなどして調整してください。
今回はここまでです。本当は今回でプレイヤーの歩きモーションを設定して移動に合わせてアニメーション遷移させるつもりだったんですが・・・CharactorControllerのIsGroundedの判定が安定していないのでうまく移動できなくなってししまったため次回に回します。