はじめに
UnityC#ではスクリプト間の参照をPublicなどで作成してエディタ上で指定するか
Start関数などにスクリプトからアタッチされているオブジェクトをFindしてくるやり方があります。
GameObject.Findは重いので使用したくないのでエディタ上から指定するがよさそうですがいちいち選択するのがめんどくさいですよね。、
そこでインスペクターの拡張機能を使って実行前に自動で設定する機能の紹介です。
解説
方法はとても簡単で、取得するメソッドを作成して
[ContextMenu("メソッド名")]を記述するだけです。
するとインスペクター上から設定したいスクリプトを右クリックすると用意したメソッド名が表示されます。
クリックすると登録されました。
スクリプトだけでなくtextやButtonなど、メソッドに記載さえすれば簡単に登録できます。
たとえメタデータが破損して参照が消えてもこの機能を組み込んでおくとめんどくさい作業をしなくて済むのでおすすめです。