Animatorコンポーネントのアタッチされていないprefabがあり、
スクリプト上でAnimatorコンポーネントをアタッチして使っていました。
ところがある時、挙動がおかしくなった時にprefabの中身を確認すると、
なんと手動では決してアタッチした記憶のないAnimatorコンポーネントが勝手にくっついていました。
一体どのタイミングでそうなってしまったのか、ゲーム起動中になんらかの誤操作をしたのか分かりません。
プレハブが勝手にそういったゲーム内で追加したコンポーネントをゲーム終了後も維持し続けることってあるのでしょうか?
◆環境
Unity2017.3.1f1
Windows10
Animatorコンポーネントをアタッチするスクリプトの内容によると思います(エディタスクリプトだと例示の動作になる場合もあります)。「プレハブにAnimatorが無いことを確認→Animatorをアタッチするスクリプトを動作させる→プレハブにAnimatorが付与されたか確認」で原因の絞り込みは出来るのでは?
AddComponentはStart()で1回のみ呼んでいました。[InitializeOnLoad]は使ってないのでエディタスクリプトではなさそうです。ゲーム起動中にもHierarchyからProjectパネルにドラッグしたらプレハブが作られると分かったので、原因はこの類かなと思い始めました。
回答1件
あなたの回答
tips
プレビュー