最終更新:2019-12-03 (火) 06:22:20 (1606d)
Unity/Find
GameObject
- Unityで特定のGameObjectをアクティブにしたい場合、SetActive?を使うがGameObject.Findで取得しようとするとnullが返ってくる
GameObject GameObject.Find
- Hierarchy内の全オブジェクトを検索
- そこそこ重い
- GameObjectが非アクティブ(チェックが入っていない)だった場合には取得することができない(nullが返される)
GameObject GameObject.FindWithTag
- GameObject.FindGameObjectWithTag -> it is now GameObject.FindWithTag
GameObject.FindGameObjectsWithTag?
Transform
Transform Transform.Find
- 子オブジェクトの中から指定したUnityEngine.Transformを取得する関数
- 非アクティブでも取得可能
- Transform.gameObjectでゲームオブジェクトを取得
GameObject g = parent.transform.Find("Target").gameObject;