Unityは Animation Layer を使用することで,異なる体のパーツで複雑なステートマシンを管理できます。例をあげると下半身のレイヤーで歩いたりジャンプして,上半身のレイヤーでオブジェクトを投げたり,撃ったりする,といった場合です。
アニメーションレイヤーの管理には Animator Controller の左上の角のLayers Widget から行うことができます。
新規レイヤーの追加には ウィジェットのOverride は,他のレイヤーの情報は無視されることを意味し,Additive は既存のレイヤーに加えてアニメーションが追加されることを意味します。。
を押します。各レイヤーでは,ボディーマスク(アニメーションが適用される体のパーツ)およびブレンドのタイプのを指定出来ます。Mask プロパティではこのレイヤーで使用するボディマスクを指定します。例えば,歩いたり走ったりしている最中に,上半身の投げるアニメーションを使用した場合,上半身のボディマスクを次にように使用します:
アバター ボディマスクの詳細については ヒューマノイドアニメーションでの作業 を参照下さい。
ときどき異なるレイヤーで同じステートマシンを再利用することが便利です。例えば “マウント” の動作をシミュレーションしたくて,歩いたり,走ったり,ジャンプするときに “ダメージあり”があって “ダメージなし” がない場合です。レイヤーのどれかで
をクリックして,同期したいレイヤーを選択します。ステートマシン構造は同じになりますが,ステートにより使用される実際のアニメーションクリップは別になります。