代官山らへんで働くengineerのUnityブログ

サーバサイドやってきたエンジニアがUnityとか触って遊ぶだけのブログ

【Unity】ComponentをdisabledにしてもCollider関連のイベントには反応するらしい【OnTrigger】

インスペクターからdisabledにしているはずのComponentでエラーが出るのでおっかしいな〜と思ったら
どうもdisabledにして動かないのはStartやUpdateメソッドのみで
Collider関連のイベントであるOnTriggerEnterOnCollisionEnterなどの呼び出しには応じてしまうらしい

なのでスクリプト内で分岐させるなり、
Destroy(GetComponent<スクリプト名>())
コンポーネント自体を取り外さなければならないという
一番スマートなのはそのComponent専用のオブジェクトを作って非アクティブにしてしまう方法かもしれない

この仕様いらない気がするんですけど.....どうなんだろう(現在Unity5.3.3)