Unity で設定したアニメーションが全く動かない、位置の変更も回転もできない、エラーも出てないという事がありました。
これの原因追求に非常に時間を要しましたので記事にしたいと思います。
現象
- アニメーションをスクリプトから再生しても全く動かない
- アニメーションは諦めて座標を直接動かそうと思っても動かない
- 他の同様のオブジェクトでは普通に動く
他のオブジェクトと同様に設定しても動かないので、半ば諦めかけていたら原因がわかりました。
原因は非常に単純なものでした。
原因
原因は静的(Static)設定です。インスペクターの右上にあります。
全く動かないものは静的設定にせよ、という文言を色々な場所で見かけたので設定していました。
静的設定とはライティングに関係がある設定です。全く動かないものであれば光の当たり方は変わらないので事前に計算して処理を軽くするというものです。
今回動く予定のないものは静的設定にしていて、これを忘れていて静的設定のオブジェクトを動かそうとしていました。
静的設定のオブジェクトは位置変更も回転もアニメーションも動きません。わかってみれば凄く単純な原因でした。