UnityのAnimatorOverrideControllerを使うと既存のAnimatorControllerのAnimationClipを置き換えることができる。
http://docs.unity3d.com/ja/current/Manual/AnimatorOverrideController.html
例えばゲームのモンスターのアニメーションでステートとトランジションは共通でバリエーションを作るときなど便利に使える。
ただアセットバンドル化した時に置き換えた元のアニメーションも含まれているようで、ファイルサイズが大きくなってしまった。
実験
- アニメーションクリップClipAとClipBを割り当てたAnimatorCntrolerを作成する。(controller0、controller1)
- AnimatorOverrideControllerを作ってClipAを割り当てたAnimatorControllerを参照し、ClipAをClipBで置き換える。
- それぞれをアセットバンドル化する。
それぞれのファイルサイズは以下のようになった。
- controller0:101KB
- controller1:139KB
- overridecontroller:226KB
まとめ
ステートを使い回す目的でOverrideAnimatorControllerを使うとアセットバンドルのサイズが大きくなってしまう。
そのためダミーのサイズが小さいアニメーションを付けておくか、AnimatorControllerを複製して使うような運用が必要になりそう。
コメントを残す