Merge Animator
Merge Animatorコンポーネントは、指定したアニメーターをアバターの指定したレイヤーに追加します。 ドラッグアンドドロップだけで導入できるAV3ギミックを実装する時には便利です。
このコンポーネントを使ったサンプルも二つ付属します。手を合わせて叩くギミックと、指ペンが使えるギミックです。
いつ使うもの?
アセットの中に、アバター本体のアニメーターに追加するコントローラーがあった場合に使います。
非推奨の場合
既存のレイヤーをそのままにして、指定したコントローラーを追加するだけです。完全に既存のアニメーターを置き換える場合は従来通り ユーザーに差し替えてもらいましょう。
セットアップ方法
Merge Animatorコンポーネントをプレハブの中の任意のオブジェクトに追加して、統合されるアニメーターに自分のアニメーターコントローラーを指定します。 そして、「レイヤー種別」をFXなど、アバターディスクリプタにあるアニメーター種別を指定します。
アニメーションの収録
デフォルトでは、アニメーターの中のパスはMerge Animatorコンポーネントを基準に相対的に解釈されます。 Merge Animator以下のオブジェクトだけをいじる場合は、これでアニメーションの収録が簡単にできます。
GameObjectにAnimatorコンポーネントも追加して、Animationパネルでアニメーションを収録できます。
開発の補助として、「付属アニメーターを削除」を入れると、同じオブジェクト内のAnimatorが自動的に排除されます。
ヒューマノイドボーンのアニメーション
ヒューマノイドボーンを操作するアニメーションは上記の相対的なパスで解釈されるのではなく、アバター全体に適用されます。 AFKアニメーションなどほとんどのヒューマノイドアニメーションがそのまま使えるというわけです。
パスモード
パスモード設定に応じて、アニメーションのパスの扱いが変わります。「相対的」モードでは、アニメーションのパスが特定のオブジェクトを基準として解釈されます。これで移動されても動作するギミックが作れるし、アニメーションの収録がしやすくなります。デフォルトでは、コンポーネントがついているオブジェクトが基準になりますが、「相対的パスのルート」で変更できます。
自分のプレハブ外の、元々からあったオブジェクトを操作する場合は、「パスモード」を「絶対的」に変えてください。 これでアニメーターの中のパスがアバターを基準に解釈され、Merge Animatorから相対的に解釈されるシステムがはずされます。 上記の収録方法が使えなくなるわけです。
Write Defaults
デフォルトでは、アニメーターの中のWrite Defaults設定がそのまま使われます。アバターに合わせたい場合は、「アバターのWriteDefaults設定に合わせる」を入れてください。 アバターの既存アニメーターが一貫して同じWriteDefault設定を使っているかを判断して、それに合わせます。 なお、アバターがもともとからWD設定を混合している場合は、統合するアニメーターの設定をそのまま採用します。
制限
VRCAnimatorLayerControl
現在、VRCAnimatorLayerControlのState Behaviorに関しては、単一アニメーター内のレイヤーを操作する場合のみに対 応しています。
かならずPlayable
値がMergeAnimatorのレイヤー種別と同じになるようにして、Layer
値を自分のアニメーター内のレイヤー番号にしてください。