こんにちは、エンジニアのオオバです。
※本件は先日リリースされた Unity2017.1f3で修正されていることを確認しました。
The referenced script on this Behaviour (Game Object 'Hoge') is missing!
Unity外でファイル名を変更などするとmetaファイルが書き換わり、上記のMissingコンポーネントという警告がコンソールに表示されます。
Missingコンポーネント状態になると↑のようにGUI(インスペクタ)上にもその旨が表示されます。
Unity5.6以前であれば、Missingコンポーネント状態がずっとインスペクタに表示されていたと思いますが、Unity2017.1f1では消えてしまいます。
これは非常に厄介な問題で、プレファブまたはシーンファイルをテキストエディタで開き、GUIDをプロジェクト内で検索して存在しなければ削除する、といった作業が発生します。
GUIDで検索する方法はコチラで紹介しています。
Unityでファイルを削除するときに必ずチェックしたい2つのポイント
Prefabの内部構造を調査した記事はコチラ。
Unity Prefabの中身(YAML)を読んで参照関係を正しく理解する
Missing Component自体があまりレアなケースではない
ため、早々にGUI上で解決出来るようにしてもらいたいです。
この記事が気に入ったらフォローしよう
オススメ記事
検証環境
- Unity2017.1f1
- Unity2017.1f3