p_chinのおっぱいブログ

UnityとPerlなど

SetActiveRecursively()とSetActive()を比較

前書き

Unity4からSetActiveRecursively(bool)が非推奨(ScriptReferenceからは無くなったけど、現状では使えるので)になった。    

その代わりにSetActive(bool)が用意されているのだが、

少しSetActiveRecursively(bool)と振る舞いが異なっていたので、今回はその事について書く。

     

簡単な振る舞いの比較

GameObject.SetActiveRecursively(bool)
  • GameObjectも含めたGameObjectの子GameObject全てのactiveを指定したbool値に変更する。

     

GameObject.SetActive(bool)
  • GameObjectも含めたGameObjectの子GameObject全てのactiveを指定したbool値に変更する。
  • 対象のGameObjectが引数のbool値と同じだと、仕事してくれない。

     

まとめ

多分、こんな感じに少し振る舞いが変わってると思う。