[Unity] 유니티 생명주기 콜백 함수

2025. 6. 11. 19:39·개발/Unity
728x90

유니티 생명 주기

Unity에서 MonoBehaviour 스크립트는 다양한 생명주기(Lifecycle) 콜백 함수를 제공한다.

이 함수들은 특정 타이밍에 자동으로 호출되며, 주로 객체의 초기화, 게임 루프에서의 반복 실행, 충돌 처리, 파괴 등과 관련되어 있다.

아래는 MonoBehaviour 생명주기 콜백 함수의 실행 순서와 각 함수의 간단한 설명이다.

 

자세한 이미지와 설명은 Unity Documentation을 참고하자.

https://docs.unity3d.com/kr/2021.3/Manual/ExecutionOrder.html

 

이벤트 함수의 실행 순서 - Unity 매뉴얼

Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행됩니다. 이 페이지에서는 이러한 이벤트 함수를 소개하고 실행 시퀀스에 어떻게 포함되는지 설명합니다.

docs.unity3d.com

 

 

✅ 초기화 함수


1. Awake()

  • 호출 시점: 스크립트 인스턴스가 로드될 때 (활성화 여부와 관계없이)
  • 용도: 다른 컴포넌트 참조 설정 등 초기화에 사용
  • 특징: 오브젝트가 비활성화되어 있어도 호출됨

2. OnEnable()

  • 호출 시점: 오브젝트가 활성화될 때마다 호출
  • 용도: 이벤트 구독, 타이머 초기화 등

3. Start()

  • 호출 시점: Awake() 호출 후, 첫 번째 Update()가 호출되기 직전에 한 번만 호출
  • 용도: 초기화 작업 (Awake보다 늦게 호출되므로 다른 오브젝트 초기화 후 접근 가능)

 

✅ 프레임 루프 관련 함수


4. Update()

  • 호출 시점: 매 프레임마다 호출
  • 용도: 입력 처리, 움직임 등 프레임 단위 로직

5. LateUpdate()

  • 호출 시점: Update() 이후에 호출
  • 용도: 카메라 따라가기 등, 다른 오브젝트의 Update()가 완료된 후 처리하고 싶을 때

6. FixedUpdate()

  • 호출 시점: 일정한 시간 간격마다 호출 (물리 연산 전)
  • 용도: 물리 연산 관련 처리 (Rigidbody 이동 등)

 

✅ 물리 관련 함수


7. OnCollisionEnter(Collision collision)

  • 충돌 시작 시 1회 호출

8. OnCollisionStay(Collision collision)

  • 충돌 중 매 프레임마다 호출

9. OnCollisionExit(Collision collision)

  • 충돌이 끝날 때 호출

참고: Trigger 충돌은 OnTriggerEnter, OnTriggerStay, OnTriggerExit 사용

 

✅ 렌더링 관련 함수


10. OnPreRender()

  • 카메라가 씬을 렌더링하기 직전 호출

11. OnRenderObject()

  • 씬의 모든 오브젝트가 렌더링된 후 호출

12. OnPostRender()

  • 카메라 렌더링이 끝난 후 호출

대부분의 경우 렌더링 콜백은 커스텀 셰이더나 디버깅용으로 사용

 

✅ 비활성화 및 종료 함수


12. OnApplicationQuit()

  • 애플리케이션 종료 전 모든 게임 오브젝트에서 호출.
  • 에디터에서 사용자가 플레이 모드를 중지할 때 호출됩니다.

13. OnDisable()

  • 오브젝트가 비활성화될 때 호출

14. OnDestroy()

  • 오브젝트가 파괴될 때 호출

'개발 > Unity' 카테고리의 다른 글

[Unity3D] 마우스 좌표에 미사일 투하  (2) 2023.03.13
[Unity3D] 슈팅 게임 제작 7장 - 적 공격, 사망 이벤트  (0) 2023.03.02
[Unity3D] 슈팅 게임 제작 6장 - 적 캐릭터 구현  (0) 2023.02.28
[Unity3D] 슈팅 게임 제작 5장 - 코루틴, 오디오  (0) 2023.02.24
[Unity3D] 슈팅 게임 제작 4장 - 총 발사 로직(Mac)  (0) 2023.02.22
'개발/Unity' 카테고리의 다른 글
  • [Unity3D] 마우스 좌표에 미사일 투하
  • [Unity3D] 슈팅 게임 제작 7장 - 적 공격, 사망 이벤트
  • [Unity3D] 슈팅 게임 제작 6장 - 적 캐릭터 구현
  • [Unity3D] 슈팅 게임 제작 5장 - 코루틴, 오디오
Majangnan
Majangnan
  • Majangnan
    개발 모코코
    Majangnan
  • 전체
    오늘
    어제
    • 분류 전체보기 (76) N
      • 개발 (75) N
        • C# (10)
        • SQL (3)
        • Unity (9)
        • Unreal (10)
        • C++ (3)
        • Server (1)
        • DX11 (8)
        • 알고리즘 (30) N
  • 블로그 메뉴

    • 홈
    • 방명록
    • 깃허브
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    MAC
    C#
    dx3d
    3dlight
    블루프린트
    언리얼
    상속
    슈팅게임
    UnReal
    Mecanim
    Unity
    c++
    프로그래머스
    백준
    blueprint
    알고리즘
    DirectX11
    sql
    코딩테스트
    DX11
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Majangnan
[Unity] 유니티 생명주기 콜백 함수
상단으로

티스토리툴바