Unity/UnityBasic

[UnityDocs 정리] 이벤트 함수의 실행 순서

devrabbit22 2026. 4. 13. 16:29

이벤트 함수의 실행 순서

이벤트 함수(Event Function)는 MonoBehaviour 클래스를 상속한 스크립트에서 Unity 엔진이 자동으로 호출해주는 콜백 함수(Callback Function) 들을 의미한다.

Unity에서 MonoBehaviour는 스크립트가 게임 오브젝트의 생명주기(Life Cycle) 에 맞춰 동작할 수 있도록 다양한 이벤트 함수를 제공한다.

이러한 이벤트 함수들은 다음과 같은 상황에서 자동으로 호출된다.

  • 스크립트의 생명주기
    (생성, 활성화, 초기화, 업데이트, 비활성화, 소멸 등)
  • Unity 엔진 시스템의 동작
    (물리 처리, 렌더링, 입력 처리 등)

개발자는 이벤트 함수를 직접 호출하지 않아도 Unity가 정해진 실행 순서에 따라 자동으로 호출해준다.

Unity의 MonoBehaviour 이벤트 함수 실행 순서는 게임 오브젝트의 생성부터 파괴까지 이어지는 전체 생명주기를 관리하는 데 중요한 개념이다.
이 순서를 이해하면 여러 스크립트 간의 초기화 순서나 의존성을 효과적으로 처리할 수 있으며, 예상하지 못한 오류나 동작을 방지할 수 있다.

 

Unity는 이벤트 함수들을 미리 정해둔 순서에 따라 호출하기 때문에, 스크립트 생명주기 실행 순서도를 통해 전체적인 흐름을 쉽게 파악할 수 있다.

하지만 모든 이벤트 함수가 이 순서에만 의존하는 것은 아니다.
예를 들어 사용자 입력에 반응하는 이벤트 함수와 같이 게임 실행 중 언제든지 발생할 수 있는 이벤트 함수도 존재한다.


스크립트 생명 주기 실행 순서도

MonoBehaviour 스크립트의 생명 주기 동안 실행되는 이벤트 함수의 순서

위 이미지는 MonoBehaviour 스크립트에서 구현할 수 있는 내장 이벤트 함수들에 한정되어 있다.
이 함수들은 MonoBehaviour 문서의 Messages 섹션에 정리된 콜백 함수들이며, 일부는 해당 이벤트를 발생시키는 Unity 내부 시스템 함수를 이해하기 위한 맥락 제공 목적으로 함께 포함되어 있다.

이러한 기본 제공 이벤트(MonoBehaviour) 외에도 다른 클래스에서 제공하는 델리게이트(delegate) 를 통해 사용자 정의 콜백을 등록할 수 있다. 예를 들어 Application, SceneManager, Camera 등의 클래스에서 다양한 이벤트를 제공한다.

또한 RuntimeInitializeOnLoadMethod 같은 특성(Attribute) 을 사용하면 특정 시점에 메서드를 자동으로 실행하도록 설정할 수도 있다.


기본 원칙

Unity에서는 이벤트 함수의 실행 순서에 대해 몇 가지 기본 원칙이 존재한다.

일반적으로 문서에 명시되어 있거나 실행 순서를 설정할 수 있는 경우를 제외하고, 서로 다른 GameObject에 존재하는 동일한 이벤트 함수의 실행 순서에 의존해서는 안 된다.

만약 플레이어 루프(Player Loop)보다 더 세밀한 실행 제어가 필요한 경우에는 PlayerLoop API를 사용할 수 있다.

또한 동일한 MonoBehaviour 서브 클래스의 다른 인스턴스 간 이벤트 함수 호출 순서를 직접 지정할 수 없다.

예시

예를 들어 MonoBehaviour의 Update() 함수는 부모 GameObject나 자식 GameObject 여부와 관계없이 호출 순서가 보장되지 않는다.

  • 부모 오브젝트의 Update()
  • 자식 오브젝트의 Update()

어느 것이 먼저 실행될지 Unity는 보장하지 않는다.

따라서 부모-자식 관계라고 해서 이벤트 함수 실행 순서가 보장되는 것은 아니다.

 

기본 원칙에서 알 수 있는 중요한 내용은 다음과 같다.

  • 동일한 이벤트 함수가 서로 다른 GameObject에서 어떤 순서로 실행될지 보장되지 않는다.
  • 부모-자식 관계 역시 실행 순서를 보장하지 않는다.
  • 여러 스크립트 간 이벤트 실행 순서는 Script Execution Order 설정을 통해 제어할 수 있다.
  • 여러 씬을 Additive 방식으로 로드할 경우 씬 단위로 순차적으로 적용된다.

씬 로드 (Scene Load)

Unity에서 씬이 로드될 때 호출되는 이벤트 함수들이다.
이 이벤트 함수들은 씬에 존재하는 각 GameObject마다 한 번씩 호출된다.

Awake()

Awake()는 스크립트 인스턴스가 로드될 때 가장 먼저 호출되는 함수이다.

  • 객체의 새 인스턴스가 생성될 때 호출된다.
  • 모든 Start() 함수보다 먼저 호출된다.
  • GameObject가 비활성화 상태여도 호출된다.

Awake()는 주로 스크립트 내부 초기화에 사용된다.

OnEnable()

OnEnable()은 GameObject 또는 컴포넌트가 활성화될 때 호출되는 함수이다.

  • Awake() 이후 호출된다.
  • Start() 이전에 호출된다.
  • 오브젝트가 비활성화 → 활성화될 때마다 다시 호출된다.

씬 로드 및 언로드 전

Unity에서는 기본적인 MonoBehaviour 이벤트 함수 외에도 씬의 로드와 언로드 시점을 감지할 수 있는 이벤트를 제공한다.

위의 실행 순서도에는 포함되어 있지 않지만,
SceneManager의 이벤트인 sceneLoadedsceneUnloaded 를 사용하면 씬이 로드되거나 언로드될 때 알림을 받을 수 있다.

  • sceneLoaded
    → OnEnable() 이후, Start() 이전에 호출된다.

또한 RuntimeInitializeOnLoadMethod 특성을 사용하면 씬 로드 전후 특정 시점에 메서드를 자동 실행하도록 설정할 수 있다.

이 특성의 옵션을 사용하면 다음과 같은 시점에 코드를 실행할 수 있다.

  • BeforeSceneLoad
    → 씬이 로드되기 전에 실행
  • AfterSceneLoad
    → 씬이 로드된 직후 실행

이 기능을 사용하면 MonoBehaviour에 의존하지 않고도 씬 로딩 단계에서 전역 초기화 코드를 실행할 수 있다.


에디터(Editor)

다음 이벤트 함수들은 Unity 에디터 환경에서 동작하는 함수들로, 게임 실행 중이 아니라 Unity Editor에서 오브젝트나 스크립트 설정이 변경될 때 호출된다.

Reset()

Reset()은 스크립트를 GameObject에 처음 추가할 때 또는 Reset 명령을 실행할 때 호출되는 함수이다.

이 함수는 스크립트의 기본 프로퍼티 값을 초기화할 때 사용된다.

예를 들어 컴포넌트를 처음 추가했을 때 기본 값이나 참조를 자동으로 설정하는 용도로 자주 사용된다.

OnValidate()

OnValidate()는 스크립트의 프로퍼티 값이 변경될 때 호출되는 함수이다.

다음과 같은 상황에서 호출될 수 있다.

  • 인스펙터에서 변수 값을 수정할 때
  • 오브젝트가 역직렬화(deserialization) 될 때
  • 에디터에서 씬을 열 때
  • 도메인 리로드(Domain Reload) 이후

이 함수는 에디터에서 데이터가 유효한지 검사하거나 자동으로 값을 보정하는 용도로 사용된다.


첫 번째 프레임 업데이트 전

Start()

Start()는 Unity에서 첫 번째 프레임의 Update()가 호출되기 전에 한 번 실행되는 이벤트 함수이다.

이 함수는 스크립트 인스턴스가 활성화된 경우에만 호출된다.

동작 특징

  • Start()는 첫 번째 Update() 이전에 한 번만 호출된다.
  • 오브젝트가 비활성화 상태라면 호출되지 않는다.
  • 씬에 미리 배치된 오브젝트의 경우, Update()가 호출되기 전에 모든 스크립트의 Start()가 먼저 실행된다.

하지만 게임 실행 중(런타임)에 생성된 오브젝트의 경우에는 이러한 순서가 보장되지 않는다.

예시

예를 들어 어떤 오브젝트의 Update() 함수에서 새로운 오브젝트를 Instantiate()로 생성했다고 가정해 보자.

이 경우

  • 새로 생성된 오브젝트의 Start()는
  • 해당 프레임이 아닌 다음 프레임의 Update 이전에 호출될 수 있다.

즉, 기존 오브젝트의 Update()가 먼저 실행될 수 있다.


프레임 사이

OnApplicationPause()

OnApplicationPause()는 Unity에서 애플리케이션의 일시 정지 상태가 변경될 때 호출되는 이벤트 함수이다.

이 함수는 일반적인 프레임 업데이트 사이에서, 일시 정지가 감지된 프레임의 끝에서 호출된다.

또한 OnApplicationPause()가 호출된 이후에는 게임이 일시 정지 상태를 나타내는 화면을 표시할 수 있도록 추가 프레임이 한 번 더 실행된다.

특징

  • 애플리케이션이 일시 정지(pause) 상태로 전환될 때 호출된다.
  • 프레임의 끝에서 실행된다.
  • 호출 이후 일시 정지 화면을 표시하기 위해 추가 프레임이 실행될 수 있다.
OnApplicationPause(true) //앱이 일시정지됨
OnApplicationPause(false) //앱이 다시 활성화됨

업데이트 순서

게임 로직 처리, 사용자 입력, 애니메이션, 카메라 위치 계산 등은 프레임마다 실행되는 업데이트 이벤트 함수를 통해 처리된다.

Unity에서는 이러한 작업을 처리하기 위해 여러 가지 업데이트 관련 이벤트 함수를 제공한다.

일반적으로 대부분의 게임 로직은 Update()에서 처리하지만, 목적에 따라 다른 업데이트 함수를 사용하는 것이 좋다.

FixedUpdate()

FixedUpdate()는 프레임 단위가 아닌 일정한 시간 간격으로 호출되는 함수이다.

  • 프레임 속도와 관계없이 고정된 간격으로 실행된다.
  • 물리 연산(Physics) 은 FixedUpdate() 이후에 수행된다.

프레임 속도에 따라 다음과 같은 상황이 발생할 수 있다.

  • 프레임 속도가 빠른 경우
    → 어떤 프레임에서는 FixedUpdate()가 호출되지 않을 수 있다.
  • 프레임 속도가 느린 경우
    → 한 프레임 동안 FixedUpdate()가 여러 번 호출될 수 있다.

또한 FixedUpdate()는 시간 간격이 일정하기 때문에
움직임을 계산할 때 일반적으로 Time.deltaTime을 사용할 필요가 없다.

FixedUpdate() 호출 간격은 고정 시간 간격(Fixed Timestep) 으로 정의되며 다음 값으로 설정된다.

Time.fixedDeltaTime

이 값은 스크립트에서 설정할 수도 있고 Unity Editor의 Time Settings에서 변경할 수도 있다.

Update()

Update()는 프레임마다 한 번씩 호출되는 가장 기본적인 업데이트 함수이다.

  • 게임 로직을 처리하는 데 가장 많이 사용된다.
  • 프레임 속도에 따라 호출 간격이 달라진다.

프레임 간격은 일정하지 않기 때문에 컴퓨터 성능이나 환경에 따라 호출 주기가 달라질 수 있다.

이 문제를 해결하기 위해 각 프레임 사이의 시간 간격을 나타내는 값을 사용한다.

Time.deltaTime
 

이를 이용하면 프레임 속도와 관계없이 일정한 속도로 움직임을 구현할 수 있다.

ex)

transform.Translate(speed * Time.deltaTime);

LateUpdate()

LateUpdate()는 Update()가 모두 실행된 이후 프레임당 한 번 호출되는 함수이다.

즉, Update()에서 수행된 모든 계산이 완료된 이후 실행된다.

이 함수는 다른 오브젝트의 움직임을 추적하는 작업에 주로 사용된다.

대표적인 예가 3인칭 카메라 시스템이다.

예를 들어

  1. Update()에서 캐릭터가 이동
  2. LateUpdate()에서 카메라 위치 계산

이렇게 하면 캐릭터 이동이 완전히 적용된 후 카메라가 위치를 갱신하기 때문에 더 자연스러운 카메라 움직임을 만들 수 있다.


애니메이션 루프

Unity에서는 애니메이션 시스템과 관련된 여러 이벤트 함수를 제공한다.

MonoBehaviour 기반 애니메이션 이벤트

MonoBehaviour에서 파생된 스크립트에서는 다음과 같은 애니메이션 관련 이벤트 함수를 사용할 수 있다.

  • OnAnimatorMove()
  • OnAnimatorIK()

이 함수들은 애니메이터가 이동(root motion)이나 IK(Inverse Kinematics)를 계산하는 과정에서 호출된다.

StateMachineBehaviour 기반 애니메이션 이벤트

StateMachineBehaviour에서 파생된 스크립트에서는 다음과 같은 이벤트 함수를 사용할 수 있다.

  • OnStateMachineEnter()
  • OnStateMachineExit()
  • OnStateEnter()
  • OnStateUpdate()
  • OnStateExit()
  • OnStateMove()
  • OnStateIK()

이 함수들은 애니메이터 상태 머신(State Machine)의 상태 변화에 따라 호출된다.

Unity 내부 애니메이션 함수

위 실행 순서도에 표시된 다른 애니메이션 관련 함수들은 Unity 내부 시스템에서 사용하는 함수들이며, 일반적으로 사용자가 직접 호출하거나 구현하지 않는다.

이러한 함수들은 Unity Profiler에서 확인할 수 있는 Profiler markers를 통해 확인할 수 있다.

이를 통해 Unity가 프레임 내부에서 해당 함수들을 언제 호출하는지 분석할 수 있다.

MonoBehaviour → 오브젝트 기준 이벤트
StateMachineBehaviour → 애니메이션 상태 기준 이벤트

렌더링

이 섹션은 Built-in Render Pipeline 기준으로 설명된 내용이다.
하지만 Built-in Render Pipeline은 Unity 6.5부터 점진적으로 폐기될 예정이기 때문에, 본 글에서는 Built-in 관련 내용은 접은 글로 기록만 남기고자 한다.

더보기

Built-in Render Pipeline 렌더링 이벤트

현재 Unity에서는 Universal Render Pipeline과 같은 Scriptable Render Pipeline 기반 렌더링이 권장되지만, 기록 및 참고 목적으로 Built-in Render Pipeline의 렌더링 이벤트 함수들도 함께 정리한다.

이 이벤트 함수들의 실행 순서는 Built-In-Render Pipeline에만 해당된다.

OnPreCull()

카메라가 씬을 컬링(Culling) 하기 전에 호출된다.

컬링 과정에서는 카메라에 실제로 보이는 오브젝트가 결정된다.

OnBecameVisible / OnBecameInvisible

오브젝트가 카메라에 표시되거나 표시되지 않게 될 때 호출된다.

OnBecameInvisible()은 오브젝트가 언제든지 보이지 않게 될 수 있기 때문에 일반적인 실행 순서도에는 표시되지 않는 경우가 많다.


OnWillRenderObject()

오브젝트가 렌더링될 경우 각 카메라마다 한 번씩 호출된다.

즉 여러 카메라가 존재한다면 카메라 수만큼 호출될 수 있다.


OnPreRender() / OnPostRender()

  • OnPreRender()
    → 카메라가 씬 렌더링을 시작하기 전에 호출된다.
  • OnPostRender()
    → 카메라가 씬 렌더링을 완료한 후 호출된다.

OnRenderObject()

모든 일반 씬 렌더링이 완료된 후 호출된다.

이 시점에서는 GL 클래스나 Graphics.DrawMeshNow()를 사용하여
커스텀 지오메트리를 직접 그릴 수 있다.


OnRenderImage()

씬 렌더링이 완료된 이후 호출되며
포스트 프로세싱(Post Processing) 을 수행할 수 있다.


OnGUI()

GUI 이벤트에 응답하기 위해 프레임당 여러 번 호출될 수 있는 함수이다.

Unity의 IMGUI 시스템은 이벤트 기반으로 동작하기 때문에
Layout, Repaint, 입력 이벤트 등 다양한 이벤트 타입에 따라 OnGUI()가 반복적으로 호출된다.

일반적인 이벤트 처리 흐름은 다음과 같다.

  • Layout 이벤트
  • 입력 이벤트 (키보드 / 마우스)
  • Repaint 이벤트

OnGUI()는 IMGUI 기반 UI 이벤트이기 때문에 Built-in Render Pipeline뿐 아니라 URP와 HDRP에서도 동일하게 사용할 수 있다.


OnDrawGizmos()

Scene View에서 시각화 목적의 Gizmo를 그릴 때 사용되는 함수이다.

주로 디버깅용 시각화에 사용된다.

※ OnDrawGizmos()는 렌더 파이프라인과 관계없는 디버깅용 이벤트이므로 Built-in Render Pipeline뿐만 아니라 URP 및 HDRP에서도 동일하게 사용할 수 있다.

참고

다음 이벤트 함수들은 MonoBehaviour 스크립트에서 사용할 수 있는 Unity 내장 이벤트 함수이다.

  • OnPreCull
  • OnPreRender
  • OnPostRender
  • OnRenderImage

하지만 이 함수들은 해당 스크립트가 활성화된 Camera 컴포넌트와 동일한 GameObject에 연결된 경우에만 호출된다.

다른 GameObject에 연결된 MonoBehaviour에서 동일한 시점의 콜백을 받고 싶다면 다음과 같은 Camera 이벤트 델리게이트를 사용해야 한다.

  • Camera.onPreCull
  • Camera.onPreRender
  • Camera.onPostRender

이 델리게이트를 통해 카메라 렌더링 이벤트에 대한 콜백을 등록할 수 있다.

위 렌더링 이벤트 함수들은 Built-in Render Pipeline 기준으로 동작하며, URP와 같은 Scriptable Render Pipeline 환경에서는 대부분 사용되지 않는다.

URP 렌더링 이벤트

Universal Render PipelineScriptable Render Pipeline(SRP) 기반으로 동작한다.

Built-in Render Pipeline과 달리 OnPreRender, OnPostRender 같은 MonoBehaviour 기반 렌더링 이벤트는 대부분 사용되지 않는다.

대신 URP에서는 다음과 같은 방식으로 렌더링 흐름을 제어한다.

  • RenderPipelineManager 이벤트
  • ScriptableRendererFeature
  • ScriptableRenderPass

RenderPipelineManager 이벤트

RenderPipelineManagerSRP 렌더링 흐름에서 발생하는 이벤트를 제공한다.

이 이벤트들은 렌더링 파이프라인 실행 과정에서 호출된다.

beginFrameRendering

프레임 렌더링이 시작될 때 호출된다.

여러 카메라가 존재하는 경우 모든 카메라 렌더링이 시작되기 전에 한 번 호출된다.

beginCameraRendering

각 카메라가 렌더링을 시작하기 직전에 호출된다.

카메라별로 호출되기 때문에 카메라 수만큼 실행될 수 있다.

endCameraRendering

각 카메라의 렌더링이 완료된 후 호출된다.

endFrameRendering

프레임 렌더링이 완전히 종료된 후 호출된다.

ScriptableRendererFeature

URP에서는 렌더링 기능을 확장하기 위해
ScriptableRendererFeature를 사용할 수 있다.

이 기능을 통해 렌더링 파이프라인에 커스텀 렌더 패스를 추가할 수 있다.

일반적인 구조는 다음과 같다.

RendererFeature

ScriptableRenderPass

Execute()

 

ScriptableRenderPass

ScriptableRenderPass는 URP 렌더링 과정에서 특정 시점에 실행되는 커스텀 렌더 패스이다.

렌더 패스는 Execute() 함수에서 실제 렌더링 로직을 수행한다.

RenderPassEvent

RenderPass는 RenderPassEvent를 통해 실행 시점을 지정할 수 있다.

대표적인 실행 시점은 다음과 같다.

BeforeRendering

카메라 렌더링이 시작되기 전에 실행된다.

BeforeRenderingOpaques

불투명 오브젝트 렌더링 전에 실행된다.

AfterRenderingOpaques

불투명 오브젝트 렌더링 이후 실행된다.

AfterRenderingTransparents

투명 오브젝트 렌더링 이후 실행된다.

AfterRendering

모든 렌더링이 완료된 이후 실행된다.

참고

URP에서는 Built-in Render Pipeline에서 사용되던 다음 이벤트 함수들이 정상적으로 동작하지 않거나 사용되지 않는다.

  • OnPreCull
  • OnPreRender
  • OnPostRender
  • OnRenderImage

이러한 기능은 URP에서 다음 방식으로 대체된다.

  • RenderPipelineManager 이벤트
  • ScriptableRendererFeature
  • ScriptableRenderPass

URP에서는 MonoBehaviour 기반 렌더링 이벤트 대신 Scriptable Render Pipeline 구조를 통해 렌더링 흐름을 제어한다.


코루틴

Unity에서 코루틴(Coroutine) 은 yield 문을 사용하여 실행을 일시 중지하고 이후 특정 시점에 다시 실행할 수 있는 함수이다.

일반적으로 코루틴은 Update()가 종료된 이후 실행된다.

코루틴은 YieldInstruction을 이용해 특정 조건이 만족될 때까지 실행을 중단(양보) 할 수 있다.

 

코루틴의 다양한 사용 방법

yield

yield return null;

현재 코루틴 실행을 중단하고 다음 프레임의 Update() 이후에 다시 실행된다.

yield return WaitForSeconds

yield return new WaitForSeconds(1f);
 

지정한 시간이 지난 후 다음 프레임에서 코루틴이 재개된다.

yield return WaitForFixedUpdate

yield return new WaitForFixedUpdate();
 

다음 FixedUpdate() 이후에 코루틴이 실행된다.

만약 코루틴이 FixedUpdate 이전에 양보하면 현재 프레임의 FixedUpdate 이후에 재개될 수 있다.

네트워크 작업 대기

과거에는 WWW 클래스를 사용하여 다운로드가 완료될 때까지 기다릴 수 있었다.

yield return www;

하지만 WWW는 현재 deprecated 되었으며 대신 UnityWebRequest 사용이 권장된다.

yield return request.SendWebRequest();

 

yield return StartCoroutine

코루틴 안에서 다른 코루틴을 실행하고 완료될 때까지 기다릴 수 있다.

yield return StartCoroutine(coroutineB());

이 경우 실행 흐름은 다음과 같다.

  1. coroutineA 실행
  2. coroutineB 시작
  3. coroutineB 완료까지 대기
  4. 이후 coroutineA 계속 실행

이러한 방식을 코루틴 체이닝(Coroutine Chaining) 이라고 한다.


정리

코루틴은 다음과 같은 특징을 가진다.

  • yield를 통해 실행을 일시 중지할 수 있다.
  • 특정 조건이나 시간이 지나면 다시 실행된다.
  • StartCoroutine()을 이용해 코루틴 간 체이닝이 가능하다.
Update()

Coroutine

LateUpdate()

 

오브젝트 파괴 및 애플리케이션 종료

Unity에서는 오브젝트가 제거되거나 애플리케이션이 종료될 때 호출되는 이벤트 함수들이 존재한다.

OnDestroy()

오브젝트가 파괴될 때 호출되는 함수이다.

  • 마지막 프레임 업데이트가 끝난 후 호출된다.
  • Destroy()가 호출된 오브젝트에서 실행된다.

즉, 오브젝트가 씬에서 제거되기 직전에 정리 작업(cleanup) 을 수행할 때 사용된다.

OnApplicationQuit()

애플리케이션이 종료되기 직전에 호출되는 함수이다.

  • 모든 오브젝트에서 호출된다.
  • 에디터에서는 플레이 모드를 중지할 때 호출된다.

게임 종료 시 저장 처리나 리소스 정리 등에 사용할 수 있다.

OnDisable()

오브젝트 또는 컴포넌트가 비활성화될 때 호출되는 함수이다.

다음과 같은 상황에서 호출된다.

  • GameObject가 비활성화될 때
  • 컴포넌트가 Disable 될 때
  • 오브젝트가 파괴될 때(OnDestroy 전에 호출)

즉 OnDisable()은 활성 상태 → 비활성 상태로 전환될 때 실행되는 이벤트이다.

실행 흐름 정리

오브젝트가 제거될 때 일반적인 호출 흐름은 다음과 같다.

OnDisable()

OnDestroy()
 

애플리케이션이 종료될 경우에는 다음 이벤트도 호출된다. → OnApplicationQuit()

이벤트 호출 시점
OnDisable 오브젝트 또는 컴포넌트 비활성화
OnDestroy 오브젝트 파괴
OnApplicationQuit 애플리케이션 종료

이미지 출처: https://docs.unity3d.com/kr/current/Manual/execution-order.html

 

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

Customizing the Player loop 이벤트 함수의 실행 순서 이벤트 함수는 MonoBehaviour 스크립트가 적절한 메서드를 구현하여 선택적으로 구독할 수 있는 빌트인 이벤트 세트로, 콜백이라고 부릅니다. 콜백은

docs.unity3d.com

 

'Unity > UnityBasic' 카테고리의 다른 글

유니티 [CreateAssetMenu]  (0) 2026.04.29