본문 바로가기
Unity 유니티

Unity GameObject.Find() 유니티 게임오브젝트를 찾는 함수

by 지나팩 2023. 8. 7.

GameObject.Find()는 찾고자 하는 게임 오브젝트의 이름으로 씬 내의 오브젝트들을 검색합니다. 만약 씬 내에 같은 이름의 오브젝트가 여럿 존재한다면 먼저 검색된 오브젝트를 반환하고, 해당 이름의 오브젝트가 없다면 null을 반환합니다.

 

간단한 예제를 통해 알아보도록 하겠습니다.

위 이미지의 Cube 오브젝트를 찾아서 가져옵시다.

TestSample 스크립트에 추가한 GameObject 타입의 변수 cube가 비어있는 상태입니다.

스크립트에 위 코드를 작성해준 뒤 플레이하면!!

Cube 오브젝트가 cube변수에 할당된 것을 볼 수가 있습니다. 더불어 GameObject.Find를 통해 찾은 오브젝트의 컴포넌트를 가져올 수도 있습니다. GetComponent를 함께 활용하시면 됩니다.

 

 

https://play.google.com/store/apps/details?id=com.goldenegg

 

골든 에그 - Google Play 앱

수박 게임류의 머지 게임입니다.

play.google.com

 

 

예를 들어 Cube에 포함되어 있는 BoxCollider 컴포넌트를 가져온다면

코드를 작성하고,

플레이하면!!

Cube 오브젝트에 포함되어 있는 BoxCollider 컴포넌트가 할당되어 있는 걸 보실 수가 있습니다.

 

다만 GameObject.Find()와 GetComponent는 씬내의 모든 오브젝트나 그리고 오브젝트의 모든 컴포넌트를 검색하기에 성능상 주의를 기울여야 합니다. 실시간으로 반복해서 사용하지 않도록 처음 시작시 한번만 사용하거나 또는 꼭 필요할 때만 사용하셔야 합니다. 사용상 경험이 좀 필요할 수 있습니다.

댓글