アニメーションを設定する

プレイヤーキャラクターができたら、今度はそのアニメーションの設定を行います。ここは設定が少し難しいかもしれませんが頑張りましょう。

Animator Controllerの作成

まずは「Animator Controller」を作ります(これはアニメーションを制御するためのものです)。「Animations」フォルダを右クリックし、「Create」→「Animator Controller」をクリックしてください。すると新しいAnimator Controllerが作成されるので、名前を「PlayerAnimatorController」に変更してください。

そうしたら、次にAnimatorコンポーネントをプレイヤーキャラのオブジェクトに追加します。Playerをクリックし、「Add Component」→「Miscellaneous」→「Animator」を選択してください。コンポーネントが追加されるので、Controllerに先ほどの「PlayerAnimationController」を追加しましょう。

これでAnimatorの設定ができました。

アニメーションクリップの作成

お次はアニメーションクリップを作っていきます。アニメーションクリップというのは、その名の通りコマ送りのアニメーションを作るための機能です。今回作るのは次の2種類のアニメーションです。

  • Dash:走りアニメーション(画像3コマ)
  • Jump:ジャンプ(画像1枚のみ)

まずはDashからいきましょう。Animationタブ(表示されていない場合は「Window」メニュー→「Animation」で表示)を開き、「Create New Crip」をクリックします。Animationsフォルダに「Player_Dash」という名前でアニメーションクリップファイルを保存しましょう。

そうしたら、Animationタブに下の画像のようにスプライトをドラッグ&ドロップしてください。

Unityでのアニメーションの作成1

これでDashアニメーションはOKです。

続いてJumpですが、こちらは新しく「Player_Jump」という名前のアニメーションクリップファイルを作り、残りのジャンプしているスプライトを追加するだけで完了です。

アニメーションの遷移の設定

最後に、アニメーションの遷移の設定を行います。Unityではアニメーションの遷移(例えば、ダッシュからジャンプに切り替わる等)を簡単に設定できる便利な機能(メカニム)があるのでそれを使いましょう。

Animatorタブを開くと、「Any State」「Entry」「Player_Dash」「Player_Jump」などと書かれた四角がある画面が表示されます。この四角が状態(ステート)を表していて、これを矢印でつないでいくことで状態遷移を設定します。ちなみに「Entry」は初期状態、「Any State」はすべての状態です。

今回は下の画像のように矢印を設定します。

Unityでのアニメーションの作成2

まず、状態遷移用のトリガーを設定します。左上の「Parameters」をクリックし、「+」マークをクリックします。そうすると

  • Float
  • Int
  • Bool
  • Trigger

という選択肢が出るので、「Trigger」を選択してください。これを2つ作ったら、それぞれ「Dash」「Jump」という名前に変更しましょう。

次に状態遷移を設定します。「Player_Dash」を右クリックし、「Make Transition」を選択してください。すると矢印が伸びるので、これを「Player_Jump」に接続します。

この矢印をクリックするとインスペクタに設定が出るので、下記の設定を行ってください。

  • 「Has Exit Time」のチェックを外してください。チェックを外すと、アニメーションの途中でも状態遷移するようになります。
  • 「Setting」をクリックして「Transition Duration」を「0」にしてください。Transition Durationというのはアニメーションの遷移をなめらかにするための設定ですが、今回は不要なので0としました。
  • Conditionsに「Jump」トリガーを設定します。

Unityでのアニメーションの作成3

同様にして、「Player_Jump」から「Player_Dash」への状態遷移も作成しましょう。

これでアニメーションの設定が一通り終わりました。テストプレイして下の動画のようになっていれば成功です。

Unityでのアニメーションの設定結果

次のページ→プレイヤーのスクリプトを作る

コメントを残す

メールアドレスが公開されることはありません。