disable な GameObject は FindWithTag/GetComponent できない
![Unityのロゴ。](http://neareal.com/wp-content/uploads/unitylogo0-840x473.png)
disable が設定された GameObject は、FindWithTag
, GetComponent
, 他に Camera.main
などによって、取得することができません。
disable が設定される可能性がある GameObject は、disable が設定されるよりも前に参照を保持しておく必要があります。
例えば次のような場合です。少々冗長なコードですが、実際には Camera.main で取得することができます。
Camera mainCamera = GameObject.FindWithTag("MainCamera").GetComponentInChildren<Camera>();
このとき mainCamera が何かしらの実行によって disabled になったとしても、mainCamera から参照が途絶えることはありません。