使用したUnityのバージョン:2020.3.30f1
この記事では、アニメーションクリップ・Animatorコンポーネントを使用して、アニメーションを作成、再生する方法を書いています。
アニメーションを再生させたいゲームオブジェクトを用意します。
今回は例としてCubeを使います。
①まず、AnimatorControllerを用意します。
Assets→Create→Animator Controllerの順に選択し、Animator ControllerをクリックするとAssets内にAnimator Controllerが作成できます。今回は名前をCubeAnimaConに変えています。
②次に用意しておいたCubeに、Add ComponentをクリックしAnimatorをクリックします。
③下の画像のように、①で作成したAnimatorControllerをAnimatorコンポーネントにドラッグ&ドロップします
①AnimatorControllerを作成した時の同じように、Assets→Create→Animationの順に選択し、AnimationをクリックするとAssets内にAnimation Clipが作成できます。今回は名前をCubeAnimaに変えています。
②Window→Animation→Animatorの順に選択し、Animatorをクリックすると下の画像のようにAnimator Controller ウィンドウが表示されます。
③作成したAnimation ClipをAnimator Controller ウィンドウにドラッグ&ドロップすると、下の画像のように、EntryからCubeAnimaに矢印(Transition)が伸びているはずです。
これでゲームが再生されるとアニメーションも再生されることになります。しかしこのままではゲームを開始しても何も起きません。Animation Clipに何もアニメーションが登録されていないからです。
いよいよアニメーションを作成します。まずWindow→Animation→Animationの順に選択し、Animationをクリックすると下の画像のようにAnimation ウインドウが表示されます。編集するAnimation ClipがCubeAnimaになっていることを確認してください。
①レコードモードをオンにするために、Previewの横の赤い丸をクリックします。
②0.30のところをクリックしてCubeのScaleの値をx、y、zをそれぞれ3に変更します。この時0:00と0:30にKeyが追加されているはずです。
③0:00の時のKeyをコピー(command+C)して、1:00のところでペースト(command+V)します(1:00のところを選択してScaleの値をそれぞれ1に戻しても結果は同じです)。
これで、完成です。ゲームを再生するとCubeが大きくなった後に、元の大きさに戻っていくアニメーションが再生されるはずです。
先ほど作ったアニメーションは一度しか再生されませんが、アニメーションをループさせたい場合はCubeAnimaを選択して、Loop Timeにチェックを入れればアニメーションが繰り返し再生されます。