[Unity] Scene 내 호출 순서

spixychz·2025년 2월 23일

Unity

목록 보기
2/15

호출 순서

유니티의 Scene 내부에 아마 많은 오브젝트들이 배치되어 있고, 스크립트도 여러개 배치되어 있을 것이다.

하지만 이 많은 오브젝트와 스크립트 중에서 뭐가 먼저 실행될까?

의문점

  • 게임 오브젝트 생성 순서?
  • 하이어라키 배치 순서?
  • 컴포넌트 부착 순서?
  • 스크립트 생성 또는 저장 순서?
  • 컴포넌트 순서?
  • 자식 부모 관계?

실험 내용

One 스크립트가 부착된 One 게임 오브젝트와 Two 스크립트가 부착된 Two 게임 오브젝트를 정의하고, Start 메소드의 호출 순서를 확인해보았다.

실험 방식은 위의 의문점들을 바탕으로 시행해보았다.

실험 결과

  • 오브젝트 생성 순서는 영향을 주지 않는다.
  • 하이어라키 순서는 영향을 주지 않는다.
  • 스크립트 생성 또는 저장 순서는 영향을 주지 않는다.
  • 컴포넌트 순서는 영향을 주지 않는다.
    • A 스크립트를 부착하고 B 스크립트를 부착한 후, 인스펙터 상에서 B 컴포넌트를 위로 올린다고 먼저 실행되는 것은 아니다.
    • 하지만, 해당 게임 오브젝트를 프리팹으로 만들어서 생성하거나 복사하는 경우에는, 하단 컴포넌트부터 실행된다. 상단 컴포넌트부터 부착된다고 생각하면 될 것 같다.
  • 자식 부모 관계는 영향을 주지 않는다.

  • 컴포넌트 부착 순서에 영향을 받는다.
  • 나중에 부착된 컴포넌트를 우선 순위로 실행한다.
  • 스크립트 부착 순서에 영향을 받는다.
    • Queue 구조 (LIFO)로 예측
profile
UNITY로 게임 개발하는 사람

0개의 댓글