[Unity] 40. Find 함수

Connected Brain·2025년 5월 9일

면접 질문 대비

목록 보기
40/60

Find 함수 사용을 자제해야 하는 이유에 대해 설명해주세요.

Find 함수

  1. GameObject.Find("오브젝트 이름")
  2. GameObject.FindWithTag("태그 이름")
  3. GameObject.FindGameObjectsWithTag("태그 이름")
  4. UnityEngine.Object.FindObjectOfType() 또는 GameObject.FindObjectOfType<컴포넌트 타입>()
  5. UnityEngine.Object.FindObjectsOfType() 또는 GameObject.FindObjectsOfType<컴포넌트 타입>()
    ...

Find 함수의 사용을 자제해야 하는 이유

  • 해당 함수를 활용하면 Scene에 있는 해당 조건을 만족하는 오브젝트를 쉽게 찾을 수 있어 편리할 수 있음
  • 다만 Scene에 있는 모든 오브젝트를 검사하기 때문에 오브젝트가 많을 수록, 그리고 런타임일 경우에는 특히 속도가 느려지는 원인이 될 수 있음
  • 따라서 StartAwake에서 최초 실행시 1번 실행되게 하는 것이 좋음
  • 심지어 최초 실행시에도 Scene 로딩을 느려지게 하는 원인이 될 수 있으므로 객체 참조에 대해서 다른 방법을 사용하는 것이 유리

0개의 댓글