この記事は
『プログラミング完全未経験からUnityでの開発現場に迎え入れてもらえた世界一の幸せ者』
の記事です。そのつもりでお読みください。
##コンポーネントのON、OFF(enable)
enable はインスペクターにチェックボックスがあるタイプのコンポーネントなら、ON,OFFできる。(たぶん)
Renderer _renderer;
GameObject cube;
_renderer = cube.GetComponent<Renderer>();
_renderer.enabled = false;
##SetActiveはゲームオブジェクトの表示をオン、オフに切り替える。
GameObject cube;
cube.SetActive(false);
enableに出会うまでは なんでもかんでもSetActiveかDestroy使ってました。。。
2019/04/01 追記
コンポーネントそのものを削除したい!...という場面に出くわしたのでメモしときます。
Destroy(参照したいゲームオブジェクト.GetComponent<削除したいコンポーネント名>());
2019/04/9 追記
ゲームオブジェクトの存在確認で便利なものを見つけました。
ゲームオブジェクトのアクティブ・非アクティブに関係なく参照できます。
if(ゲームオブジェクト名)
{
//存在してたら実行
}
ちなみにactiveInHierarchy
を使うと
ゲームオブジェクトのアクティブ・非アクティブ状態を参照できます。
if(ゲームオブジェクト名.activeInHierarchy)
{
//アクティブなら実行
}