Unity事例ノート

UNITY

ジャンプしたときのアニメーションをつくる

移動のアニメーション、ジャンプの動きに続いて、今度はジャンプのアニメーションをつけていきましょう。

アイドリング状態、歩いている状態、どちらからでもジャンプのアニメーションに遷移できるようにします。

このページは、下記の続きを制作しています。

【Unity C#】前進と停止のアニメーション
【Unity C#】キャラクターをジャンプさせる





ステートを作成

アニメーターウィンドウ > パラメータ > +マーク

Boolを作成し、Jumpingという名前にしました。

ステートを作成します。

画面上で右クリック > ステートの作成 > 空

Jumpという名前にしました。

インスペクターに、Motionという項目があります。

表示させたいアニメーションを選択しましょう。

Idleのステートを右クリックして、遷移を作成。

矢印を、Jumpまで伸ばします。

矢印を選択して、インスペクターを設定します。

アイドリング状態からジャンプするということで、JumpingをTrueに。

逆に、Jumpステートから遷移をIdleへ向けます。

ジャンプからアイドリングへ戻るので、Jumpingはfalseですね。

全く同じように、WalkステートとJumpステートの間も、遷移させます。

デフォルトの設定では、アニメーションに入るのに、少しだけ間(0.25秒)があったりします。

遷移間隔を0にすれば、すぐにアニメーションが始まります。

アニメーションのスクリプト

ここまで準備できれば、今度はスクリプトを書いていきましょう。

2行だけコードを追加しています。

スペースキーが押されたら、JumpingをTrueに。

Jumpingをfalseにするのは、着地したタイミングです。

プレイしてみましょう。

歩きながらジャンプ、着地するとアニメーションが戻ります。

関連記事:【Unity C#】シフトキーで走るアニメーション