Unityで実行するとき、コンポーネントが違うと少しめんどいので、 やり方をまとめて、どういう状況で使うのか整理しとこうかと。 大雑把に4種類、実行したいメソッドをTargetMethod()として以下。 1.GetComponent<T>() + TargetMethod(): 注意:対象GameObjectを事前に参照する必要がある。Findするとゲロ重い。 ×GetComponentが重い。 ○1度ゲットしとくと後は使い放題。複数引数とれるし、メソッド実行自体は早い 【用法】初期化でGetできて、動的にGetする必要がない場合+メソッド実行が複数回ある場合 【実用例】オセロ盤で作ったGUIに対してひっくり返るたびにひっくり返るメソッドを実行したい場合 SendMessage("TargetMethod") ※対象GameObjectを参照する必要がある。 ×引数が一つしか送れない ×
![【Unity】【備忘録】コンポーネント間のメソッド呼び出しとパフォーマンス - 順調に転がってます](https://cdn-ak-scissors.b.st-hatena.com/image/square/872911e1cfd7396888567707dc1ab696193ff790/height=288;version=1;width=512/http%3A%2F%2Fooo-qm-ooo.cocolog-nifty.com%2F.shared-pleasy%2Fnifty_managed%2Fimages%2Fweb%2Fogp%2Fdefault.png)