Developer

【Unity】3Dアクションゲームを作ろう!#4 アニメーションの作成
2022.09.30
Lv2

【Unity】3Dアクションゲームを作ろう!#4 アニメーションの作成


はじめに

本連載は以下の目次ページにまとまっています。

実践Unityゲームプログラミング 連載目次

前回の記事はこちら↓

【Unity】3Dアクションゲームを作ろう!#3 カメラ操作の実装

 

今回は基本的なアニメーションを作成していきます!

アニメーションについて詳しく知りたい方はこちらの記事もご覧ください。

【初心者Unity】アニメーションの基礎

今回は、プレイヤーの通常時(停止時)、歩行時、走行時のアニメーションを作成します。

アニメーションの切り替えは、移動速度によって切り替わるように設定します。

基本的なアニメーションの作成

① Animationsフォルダを作成し、Animator Controllerを追加

Assets に新規フォルダを作成します。
フォルダ名は Animations とします。

Animations フォルダを右クリックし、Create > Animator Controller

名前は 「PlayerController」とします。

② パラメータを作成

PlayerController をダブルクリックし、Animator ビューを開きます。
Float型のパラメータを作成し名前を「 MoveSpeed 」とします。

③ ステートを作成

レイアウトエリアを右クリックし、Create State > Empty を選択します。
New State というステートが追加されます。
インスペクターウィンドウで、名前を「Idle」に変更します。

同様に、2つステートを追加し名前は「Walk」「Run」としましょう。

④ 各ステートのアニメーションを設定

各ステートで再生するアニメーションを設定します。

Idle ステートをクリックし、インスペクターウィンドウの Motion を選択します。


アニメーションとして選択するのは、
UnityChan > SD_unitychan > Animations > SD_unitychan_motion_humanoid > Standing@loop です。

同様に、以下のように選択します。
・walk ⇒ Walking@loop

・Run ⇒ Running@loop

⑤ 遷移を作成

アニメーションの遷移については以下の記事でも取り上げています。ぜひご覧ください。

【初心者Unity】アニメーションの遷移を検証①【遷移条件】

【初心者Unity】アニメーションの遷移を検証②【ブレンド】

【初心者Unity】アニメーションの遷移を検証③【遷移の割り込み】

Idle ステートを右クリックして、Make Transition をクリックします。

図のように矢印が伸びますので、Walk に重ねてクリックします。

同様に下図のような遷移を作成します。

⑥ 遷移の詳細設定(Has Exit Time)

Idle → Walk の遷移の矢印をクリックします。

インスペクターウィンドウで、以下を設定します。

「Has Exit Time のチェックを外す」


これを、全ての遷移で同様に設定します。

Has Exit Time が有効の場合は、現在のアニメーションの再生が終わってから次のステートに遷移します。
無効にすると、条件を満たすとほぼ即時で次のアニメーションに遷移します。

⑦ 遷移の詳細設定(条件)

先ほどと同様に、Idle → Walk の遷移をクリックします。
インスペクターウィンドウで、Conditions の項目を以下に設定します。

・Idle → Walk  MoveSpeed Greater 0.01

同様に、他の3つの遷移も下記の通り設定します。

・Walk → Idle  MoveSpeed Less 0.01

・Walk → Run  MoveSpeed Greater 4

・Run → Walk  MoveSpeed Less 4

⑧ Playercontroller

Projectウィンドウ > Prefabs > Player を選択します。

インスペクターウィンドウで、Animator コンポーネントの Controller に「PlayerController」を設定します。


これで移動関連のアニメーションの作成は完了です。

次回の連載で行う、移動操作の実装を行うとアニメーションを確認することができます。

 

おわりに

今回はここまで!

ちなみにアニメーションの設定を行わなかった場合、以下のようになります。

これでは、歩いているのか走っているのかわかりづらいかと思います…

ですので、多少の手間をかけてでも、アニメーションはきちんと作成しておきたいですね!

 

次回はキャラクターの移動操作を実装します。

 


Unity実践編 - 目次リンク

実践Unityゲームプログラミング 連載目次