お問い合わせTopUnityトップAnimatorAnimator概要Animatorはアニメーションクリップを管理する機能です。Animatorを使用することで、オブジェクトの状態が変化するとともに使用しているアニメーションクリップを変更できます。使用画像サンプル画像この画像は両方とも分割機能を使用してスプライトを分割しておきます。Animatorで表示可能です。Controllerで作成します。State」と「Entry」というのステートを持っています。※Animatorをコントロールする部品のことをステートと呼びます。State本来AnimatorでAnimationを管理する場合は関連するステート同士をつなぐ必要があります。AnyStateは条件さえ満たせばどのような状態からでも切り替えることが可能です。これは大変便利な機能ですが、きちんと考えて使わないと意図しない挙動になるので注意が必要です。EntryEntryはアニメーションが起動した時に一番初めに動き出すStateです。このStateには1つだけAnimationの設定ができ、それが実質最初に動き出すアニメーションになります。ステート追加アニメーション間の遷移を作成するには複数のステートを作成する必要があります。State」=>「Empty」を選択します。ステート削除ステートの削除は削除したいステートを選択して右クリックをして表示されたメニューから「Delete」を選択します。使用する可能性があるパラメータのみを抜粋しています。・NameInspector直下の項目です。このステートの名前を指定します。・Motionこのステートが起動した時に動作するアニメーションを指定します。・Speedアニメーション速度の設定をします。この速度はアニメーションクリップの速度を1とします。・Transition遷移するステートのリストを表示しています。ステート遷移ステートの遷移(待機=>移動など)はステート同士の結びつきを設定することで行います。Animatorではこの結びつきはステート間に矢印のついた線をつなげることで表現します。関連(Transition)の作り方ステート間の関連を作るには「遷移前」と「遷移後」を決めます。MakeTransitionを選択します。MakeTransitionを選択すると矢印つきの線が作成されます。それを遷移後のステートでクリックすることでステート間のつながりが作成されます。Transition情報ステート間をつなげた線をクリックするとInspectorに遷移情報が表示されます。今回も必要と思われるパラメータについてのみ説明をします。・HasExitTimeHasExitTimeのチェックは遷移時にアニメーションが終了して遷移するか、途中でも遷移するかを設定します。チェックがONになっていたら、最後まで待ち、チェックがOFFなら途中で切り替わります。・グラフグラフ部分はアニメーションの切り替えの状態を表しています。これはブレンドツリーと呼ばれる機能を使用するときに利用するようになります。・ConditionsConditionsは遷移をするきっかけとなる設定のリストが表示されています。こちらについてはこの後の項目で説明します。遷移設定ステートの切り替えはパラメータと呼ばれる数値で切り替えます。パラメータの表示パラメータはAnimatorの左側にある「Parameters」タグをクリックすることで表示されます。新規パラメータ追加パラメータの追加は「+」アイコンをクリックします。遷移させたいパラメータを選択します。名前の設定パラメータが作成されたら次はそのパラメータに名前をつけます。意味のある名前をつけます。パラメータ設定パラメータの設定はTransitionを選択してInspector内にあるCondisions項目の「+」「-」を使用して設定を行います。追加は「+」削除は「-」を使用します。「↓」アイコンをクリックするとパラメータのリストが表示されるので、遷移で使用するパラメータを選びます。Equals」があります。遷移条件を満たすために必要な値です。上記の設定はSpeedが2.0より上なら遷移を行う設定です。パラメータの削除は「Animatorからの削除」と「Transitionに設定しているパラメータの削除」があります。Animatorからの削除Animatorからの削除はAnimatorのパラメータのリストから削除したいパラメータの上で右クリックをします。メニューの中の「Delete」を選択するとパラメータが削除されます。削除パラメータをクリックします。その後、右下の「-」アイコンをクリックでパラメータが削除されます。パラメータの値変更パラメータの値を変更してアニメーションを遷移させるのはスクリプトで行います。Animatorコンポーネント取得パラメータ設定用の関数はAnimatorコンポーネントが持っているので、GetComponent関数を使用してAnimtorを取得します。「SetTrigger」があります。基本的に第一引数にパラメータ名、第二引数に変更値を指定します。※SetTriggerのみ、第二引数がありません。2.0f);この変更された値が遷移条件を満たしたらアニメーションが切り替わります。分割機能を使用したスプライトをSceneビューにD&DしてAnimationを作成します。※1.使用画像のPlayerWait.png、PlayerRun.pngを使用しています。※2.名前は「PlayerWait」「PlayerRun」でサンプルは進めます。Controller」を作成します。※「名前はPlayerAnim」で進めます。・Spriteオブジェクト作成HierarchyにSpriteを作成して「Player」とつけます。・Sprite指定PlayerのInspectorの「Sprite」からPlayerWait、またはPlayerRunのいずれかのスプライトを選択します。事前準備で作成したPlayerAnimを使用してAnimatorを実装します。1.パラメータ作成AnimatorにFloat型でSpeed項目を追加します。2.ステート作成ステートを二つ作成し以下の設定を行います。PlayerRun3.Transition作成PlayerWait、PlayerRunをTransitionで相互に結び付けます。各Transitionに対して以下の設定をします。add_pos;6.Animator、スクリプト指定PlayerAnimtorとPlayerMoveスクリプトをHierarchyのPlayerオブジェクトに指定します。実行してアニメーションが切り替わることを確認します。探している内容が見つからなかったら以下のサイトにあるかもしれません。筆者が開発にかかわらせてもらったアプリのリンクです。