Posted at

"Animator does not have an AnimatorController"と"Animator is not playing a Playable"

More than 1 year has passed since last update.

UnityのAnimatorでアニメーションをいろいろ付けて状態遷移させていると、以下のような警告がConsoleに出ることがあります。


  1. Animator is not playing a Playable

  2. Animator does not have an AnimatorController

もちろんGameObjectにAnimatorはAddされているし、AnimatorにAnimatorControllerが設定されています。

いろいろ試したところ、非アクティブなGameObjectに対してAnimator.SetTrigger(SetBool,SetInt,SetFloat等)をしたときに1が、Animator.Playをしたときに2が出るようです。

意味合いとしては、「GameObjectが非アクティブになるとAnimatorはリセットされるし、その間の操作は反映されないので意味ないよ」ということなのでした。

私の場合、Animatorの状態をリセットするためにPlayやSetTriggerを呼び、いったん非表示にするためにSetActiveで非アクティブにしていたので、この警告が出ていました。前述のとおり、非アクティブにするとAnimatorはリセットされるので、必要のない処理だったということになります。消そ。

※Unity 5.5.1f1で確認。