Unity の勉強がてら 3Dモデルをアニメーションさせます。
環境
- Windows 10 Home 20H2
- Unity 2020.2.0f1
プロジェクト作成
今回は 3Dテンプレート で作成します。
3Dモデル読み込み
まず、Assetsフォルダ内 に3Dモデルを保存する空フォルダを作ります。
今作った空フォルダ(Models)内に、拡張子が「fbx」のファイルをドラッグします。
今回お借りした 3Dモデルは「Lowpoly Cat Rigged + Run Animation 3Dモデル」です。ダウンロードと展開を事前に済ませておきました。
3Dモデル配置
3Dモデルを Unity の3D空間に配置します。
「Assets > Models」フォルダ内の cat_rigged を 左のツリーにドラッグすると配置出来ます。
ついでに床も作っちゃいます。
左のツリーで「SampleScene」を選択し、右クリックから「ゲームオブジェクト > 3Dオブジェクト > 平面」を選択し、平面を追加します。
ここまで出来たら、試しに実行してみます。
まだ、アニメーションしていないですよ。
アニメーション設定
3Dモデルにアニメーションを設定します。
Modelsフォルダ内で右クリックをして「作成 > アニメーターコントローラー」を作ります。名前は「cat_rigged」にしました。
作ったアニメーターコントローラーをダブルクリックすると、アニメーターパネルが開きます。
3Dモデルのアニメーションをアニメーターパネルにドラッグして、アニメーションを設定します。
次に、3Dモデルに アニメーターコンポーネント を追加します。
左のツリーで cat_rigged を選択して、インスペクターの「コンポーネントを追加」ボタンを押下。
「その他 > アニメーター」を選択して、アニメーターコンポーネント を追加します。
アセットタブのアニメーターコントローラーを選択します。前に作った「cat_rigged」がアニメーターコントローラーです。
これで、走るようになりましたがループ設定が出来ていないので、すぐ止まってしまいます。
ループ設定
アセットの3Dモデル内にあるアニメーションクリップ(Animation Clip)を選択して「Edit」ボタンを押すと、アニメーションの設定を変更することが出来ます。
「時間をループ」にチェックを入れるとアニメーションがループするようになります。