▣ 안녕하세요. 이번장에서는 유니티 엔진에 기본 함수들에 호출 순서를 공부해보겠습니다.
▣ 먼저 빈 게임 오브젝트를 만든 다음에 TestManager라는 스크립트를 생성해서 넣어주세요.
▣ Awake(), OnEnable(), OnDisable(), Start(), FixedUpdate(), Update(), LateUpdate() 함수를 생성해주시고,
각각 호출되는 순서를 확인하기위해 Debug.Log()를 코드 해주세요.
▣ OnEnable() 함수는 게임 오브젝트가 활성화될 때 실행하는 함수이고,
OnDisable() 함수는 게임 오브젝트가 비활성화될 경우 실행되는 함수입니다.
Awake(), Start() 함수는 스크립트가 실행할 때 기본으로 한번 실행되는 함수인데 이건 순서를 확인해보겠습니다.
▣ 저장을 하고 확인을 해보면 Awake()가 Start() 보다 먼저 한번 호출되는 걸 확인할 수 있습니다.
또한 OnEnable() 함수는 활성화되어 있을 때 Start() 함수보다 먼저 실행하는 것도 확인할 수 있습니다.
OnDisable()는 비활성화될 때 실행됩니다.
▣ FixedUpdate() 함수는 Fixed Timestep 설정된 값에 따라 호출하는 함수인데 이 설정은
▣ Edit에서 Project Settings에서 Time에서 Fixed Timestep을 설정할 수 있습니다.
이 값에 따라 호출됩니다.
▣ Update() 활성화되어 있는 상태일 때, 매 프레임마다 호출하는 함수이고
LateUpdate() 함수는 Update 함수가 호출된 후, 마지막으로 호출하는 함수입니다.
▣ 이건 우리가 실행을 해보면 FixedUpdate() -> Update() -> LateUpdate() 순서로 호출되는 걸 확인할 수 있습니다.
▣ 꼭 직접 코드를 작성해서 호출 순서를 눈으로 확인해주세요.
그리고 코드를 작성하고 확인할 때는 꼭 Debug.Log()하는 습관을 만들어가세요.
https://docs.unity3d.com/kr/2021.3/Manual/ExecutionOrder.html
▣ 그리고 유니티메뉴얼을 확인하시면 유니티에 있는 함수에 실행 순서를 나타내는 순서도를 보실 수 있습니다.
이것도 꼭 한번 보고 공부하시면 많은 도움이 됩니다.
'[ Unity ] > - 유니티 실습' 카테고리의 다른 글
유니티 - [이동, 방향, 키입력] (0) | 2022.08.22 |
---|---|
유니티 - [오브젝트 이동 여러 예시] (0) | 2022.08.19 |
유니티 - [CameraShake, 카메라 쉐이크효과] (0) | 2022.06.09 |
유니티 - [마우스커서 숨기기, 마우스커서 고정] (2) | 2022.04.23 |
유니티 - [회전과 방향 전환] (0) | 2022.04.20 |
댓글