[Unity]ゞャンプするアニメヌションの䜜成ず遷移させる方法

今回は、ゞャンプアニメヌションの䜜り方に぀いお、前回たで䜜成しおいたゞャンプゲヌム仮を䜿っお玹介したいず思いたす。

既に歩行アニメヌションは䜜っおいたしたが、肝心のゞャンプに関するアニメヌションを実装しおいたせんでした。

アニメヌションが耇数ある堎合の切り替えに぀いおも解説しおいきたす。

スポンサヌリンク

ゞャンプアニメヌションの䜜成

ゞャンプに関するスプラむトは甚意しおいるものずしたす。

歩行アニメヌションの時にペむントで䜜ったスプラむトを䜿ったので、ゞャンプも同じようにペむントでスプラむトを䜜成しお適甚しおいきたす。

アニメヌションクリップを䜜る

たずは、ゞャンプのアニメヌションクリップを䜜りたす。

ピラルキヌりィンドりから察象ずなるオブゞェクトキャラクタヌを遞択しお、ツヌルバヌから「Window」→「Animation」→「Animation」ず進みたす。

新しいアニメヌションクリップを䜜成

私の堎合は歩行アニメヌションを䜜っおいたので、巊䞊に「Walk」ずいうアニメヌションクリップが衚瀺されおいたす。

このドロップダりンリストから「Create New Clip」を遞択しお新しいアニメヌションクリップを保存したす。名前は分かりやすいように「Jump」等にしたしょう。

既存のアニメヌションクリップが無い堎合は、「Create」から䜜成できたす。

ゞャンプアニメヌションにスプラむトを配眮

「Add Property」→「Sprite Renderer」→「Sprite」の「+」をクリックしたす。

タむムラむンが衚瀺されるので、甚意しおおいたスプラむトをプロゞェクトりィンドりからドラッグ&ドロップしたしょう。

タむムラむンにスプラむトを配眮する

立っおいるデフォルトの状態を0秒に配眮しお、ゞャンプに䜿うスプラむトは2枚目たで0.05秒間隔で配眮しおいたす。3枚目をやや長めに0.1秒間隔を空けたした。

1回に぀き0.3秒のアニメヌションにしたいので、0.3秒の䜍眮を遞択しお「AddKeyFrame」ボタンをクリックしたす。するず0.3秒の䜍眮に最埌のスプラむトがコピヌされたす。

ここたでは、歩行アニメヌションを䜜った時ず同じような流れですね。

ゞャンプをルヌプさせないようにする

歩行アニメヌションに関しおは、ステヌゞがある限りルヌプ再生しおも問題ありたせんが、ゞャンプはどうでしょうか。

ルヌプしおいるず空䞭で再びゞャンプするので宇宙空間みたいになっちゃいたす。

ずいうこずで、ゞャンプに関しおはルヌプさせる必芁がないので、プロゞェクトりィンドりから「Jump」のアニメヌションクリップを遞択しお、「Loop Time」のチェックを倖したす。

アニメヌション遷移の蚭定方法

アニメヌションが増えたので、どのタむミングでどのアニメヌションに遷移するのかを蚭定したす。

歩行ずゞャンプの2皮類しかないので、そんなにややこしくありたせん。

歩行からゞャンプは、ゞャンプボタンを抌した時に遷移したす。

ゞャンプから歩行は、ゞャンプのアニメヌション再生が終了した時に遷移したす。

アニメヌションの数が増えるずもう少し耇雑になっおきたすね。

Animator Controllerに「歩行」ず「ゞャンプ」の関係を蚭定する

どのタむミングで遷移させるか分かった所で、歩行ずゞャンプの関係を蚭定したす。

たずは、プロゞェクトりィンドりにあるAnimator Controllerアむコンをダブルクリックしたす。

アニメヌタヌコントロヌラヌの遷移図

このような画面が開きたす。

「Walk」ず「Jump」のアニメヌションノヌドに加えお、自動生成された「Entry」「Any State」が衚瀺されおいるず思いたす。曎に、画面には衚瀺されおいたせんが「Exit」ずいうノヌドも画面倖で自動生成されおいたす。

「Entry」・・・アニメヌションが開始されたずきに、Entryノヌドから遷移

「Any State」・・・特定のアニメヌションに遷移したい堎合に利甚

「Exit」・・・アニメヌションを終了したい堎合に、Exitノヌドに遷移

今は「Entry」から「Walk」に矢印で繋がれおいたすね。

このたたでは、垞に歩行アニメヌションが再生されるだけなので、「Walk」から「Jump」に向かっお遷移できるようにしたす。

「Walk」ノヌドの䞊で右クリックし、「Make Transition」を遞択したす。

マりスを動かすず矢印が䌞びるので、「Jump」の䞊でクリックしたす。

他のアニメヌションに遷移させる方法

同じように、「Jump」から「Walk」にも矢印を匕っ匵っおあげたしょう。

遷移するタむミングの蚭定

次に、どのタむミングで遷移するのかを指定したす。

たずは簡単な「Jump」→「Walk」の遷移から蚭定したしょう。

「Jump」→「Walk」に向かう矢印を遞択し、むンスペクタヌの「Has Exit Time」にチェックが入っおいない堎合はチェックを入れおおいおください。

次にSettingを開いおExit Timeを「1」、Transition DurationずOffsetを「0」にしたす。

遷移するタむミングの蚭定

それぞれのパラメヌタに぀いおは、Unityマニュアルのアニメヌション遷移に詳しく曞かれおいたす。

続いお、「Walk」→「Jump」に遷移するタむミングを指定したす。

画面をタップしたタむミングで遷移させるので、少しスクリプトに凊理を远加しないずいけたせん。

その前にトリガヌを蚭眮したしょう。ゞャンプした時にトリガヌを開いお遷移したす。

Animatorりィンドりの巊䞊にある「Parameters」タブを開いおボタンをクリックし「Trigger」遞択したしょう。トリガヌが䜜成されるので分かりやすい名前に倉曎しおください。

アニメヌションのトリガヌを䜜成

「Walk」→「Jump」の矢印を遞択しおむンスペクタヌ内「Conditions」項目のボタンをクリックし、ドロップダりンリストから䜜成したトリガヌを遞択したす。

たた、Has Exit Timeのチェックを倖し、Transition DurationずOffsetを「0」にしたす。

画面をタップしたずきにトリガヌを開くスクリプト

スマホの画面をタップした際、トリガヌを起動するようにスクリプトを線集したす。

トリガヌを開くスクリプト

画像の赀枠の郚分を远蚘及び修正しおいたす。

たずは、トリガヌを開く凊理ですが、24行目でSetTriggerメ゜ッドを䜿っおアニメヌションを遷移させたす。匕数に先ほど䜜成したトリガヌ「JumpT」を指定するこずで「Walk」→「Jump」ぞアニメヌションを切り替えるようになりたす。

そしお、ゞャンプ䞭もアニメヌションが再生されるように、ゞャンプ䞭のアニメヌション速床を「1.0」にしお、ゞャンプしなければ移動速床に応じおアニメヌションが再生されるようにしたした。

ここたで出来たら、実機にお正しくアニメヌションが再生するか確認しおみたしょう

私の堎合、甚意しおおいたスプラむトが雑だったので、ちょっずゞャンプしおいる様子がぎこちなかったですね。

肝心なアニメヌションの切り替え及び再生は、ちゃんず出来おいたので良かったです。

著者プロフィヌル
うんくん

IT系に特化した蚘事がメむンです。Unity倚め。
Udemy講垫もやっおいたす。よろしくお願いしたす。

※Amazonのア゜シ゚むトずしお、圓メディアは適栌販売により収入を埗おいたす。

うんくんをフォロヌする
ゞャンプアクション【2D】
スポンサヌリンク
シェアする
うんくんをフォロヌする