アニメーションを完成させる
メカニムの編集
まずはメカニムを編集して、アニメーションの遷移とその条件を設定しましょう。
Animatorウィンドウを開く
Projectウィンドウを開き、Imagesフォルダのcharactorという名前のAnimatorファイルを開きます(下画像の左上のアイコン)。
Animatorウィンドウが開きます。
状態を並び変える
Animatorウィンドウに表示されている長方形のそれぞれがアニメーションの「状態(State)」を表します。前回も説明しましたが「Any State」というのが「あらゆる状態」を表す特殊なもので、最初から存在しています。それ以外は、前回の記事で追加したアニメーションを表す状態です。stop_leftがオレンジ色で表示されているのは、前回の記事でデフォルトの状態として定義したからです。
初期の並びでは分かりにくいので以下の画像のように、それぞれの状態を並び変えます。
左方向への移動、ジャンプ停止などをAny Stateの左側に配置し、右方向は右側に配置しました。また、ジャンプのアニメーションを上部に中央に歩くアニメーション、停止を下になるように並べました。
このように並べ替える必要はありませんが、こうすることで遷移が見やすくなります。
遷移の追加
続いて、これらの状態に遷移するためのトランジション(Transition)を追加します。
Any Stateの上でマウスを右クリックし、「Make Transition」をクリックします。
その状態でjump_leftをクリックすると、Any Stateからjump_leftに伸びる線が引かれます。
Any Stateからそれ以外の状態にも遷移(Transition)を作成します。
Parametersの追加
遷移が追加されましたので、それぞれの状態へ遷移する「条件」を指定します。条件の指定はParametersへの追加という形で行います。
Parametersは、Animatorウィンドウ左下にあるParametersと書かれた枠の右側の「+」をクリックすることで追加できます。
「+」ボタンをクリックし、Boolをクリックします。これはBoolean型のパラメーターを追加するという意味です。
「New Bool」と書かれた箇所をクリックして「isJump」と入力します。
同じ手順でBool型のパラメーター「isLeftMove」と「isStop」を追加します。
パラメーターの意味
それぞれのパラメーターの意味は以下のようになります。
- isJump……キャラクターがジャンプ状態かどうか
- isLeftMove……キャラクターが左側に動いているかどうか
- isStop……キャラクターが停止しているかどうか
この3つパラメーターでアニメーションの遷移先を決定します。
遷移にパラメーターを追加する
それぞれの遷移に条件を追加していきましょう。まずはAny Stateからjump_leftに伸びる遷移の線をクリックして、水色の選択状態にします。
選択した状態で、Inspectorウィンドウを見ると下部に「Conditions」という項目があります。
初期状態では「Exit Time」という条件が設定されていますが、これは時間(0.9秒)でアニメーションを切り替えるという指定です。Exit Timeという条件を変更したいので文字をクリックします。
プルダウンからisJumpをクリックします。
isJumpが追加され右側の値がtrueになっています。jump_leftは左側にジャンプしているアニメーションなのでそのままにしておきます。
さらに条件を追加したいので、Conditionsウィンドウの右下の「+」ボタンをクリックします。isJumpがもう一つ追加されるので文字をクリックしてisLeftMoveを選択します。isLeftMoveの値もtrueのままでOKです。
これでjump_leftへの条件追加は完了です。
続けて、それ以外の遷移にも以下のように条件を追加していきます。
| パラメーター | 値 |
|---|---|
| isJump | true |
| isLeftMove | true |
| パラメーター | 値 |
|---|---|
| isJump | false |
| isLeftMove | true |
| isStop | false |
| パラメーター | 値 |
|---|---|
| isJump | false |
| isLeftMove | true |
| isStop | true |
| パラメーター | 値 |
|---|---|
| isJump | true |
| isLeftMove | false |
| パラメーター | 値 |
|---|---|
| isJump | false |
| isLeftMove | false |
| isStop | false |
| パラメーター | 値 |
|---|---|
| isJump | false |
| isLeftMove | false |
| isStop | true |
これでAnimatorウィンドウでのMenicam設定は終了です。





