유니티에서 오브젝트를 찾는 방법은 아래와 같습니다.
1. GameObject.Find("찾고 싶은 오브젝트 이름");
- 이름으로 오브젝트를 찾아서 gameObject 형식으로 반환 받습니다.
2. GameObject.FindWithTag("찾고 싶은 오브젝트의 태그명");
- 태그로 오브젝트를 찾아서 gameObject 형식으로 반환 받습니다.
3. GameObject_FindGameObjectsWithTag("찾고 싶은 오브젝트들의 태그명");
- 태그로 오브젝트들을 찾아서 gameObject[ ] 형식으로 반환 받습니다.
4. GameObject.Find("찾고 싶은 오브젝트 이름").transform;
- 이름으로 오브젝트를 찾아서 transform 형식으로 반환 받습니다.
사용 예시
참고 사항
- 이름으로 오브젝트를 찾을 경우 찾고자 하는 오브젝트와 이름이 같은지 확인해야합니다.
- 태그로 오브젝트를 찾을 경우 찾고자 하는 오브젝트와 태그가 같은지 확인해야합니다.
- GameObject.Find()로 오브젝트를 찾을 경우 하이어라키에 있는 모든 오브젝트를 모두 검사해야 하기 때문에 많은
시간과 비용이 듭니다. 따라서 실시간으로 동작하는 Update에서는 사용을 최대한 자제해야하며,
필요한 경우 이름이 아닌 Tag로 찾는 쪽이 속도와 비용면에서 더 좋습니다.
'Unity > 3D' 카테고리의 다른 글
유니티 3D 플레이어 추적 구현 (0) | 2023.11.17 |
---|---|
Unity 3D에서 플레이어 이동시키기 (0) | 2023.11.16 |