最終更新:2019-12-03 (火) 06:22:20 (1606d)  

Unity/Find
Top / Unity / Find

GameObject

  • Unityで特定のGameObjectをアクティブにしたい場合、SetActive?を使うがGameObject.Findで取得しようとするとnullが返ってくる

GameObject GameObject.Find

  • Hierarchy内の全オブジェクトを検索
  • そこそこ重い
  • GameObjectが非アクティブ(チェックが入っていない)だった場合には取得することができない(nullが返される)

GameObject GameObject.FindWithTag

GameObject.FindGameObjectsWithTag?

Transform

Transform Transform.Find

  • 子オブジェクトの中から指定したUnityEngine.Transformを取得する関数
  • 非アクティブでも取得可能
  • Transform.gameObjectでゲームオブジェクトを取得
    GameObject g = parent.transform.Find("Target").gameObject;

関連