초기화를 위한 이벤트 함수
Awake()
- 게임 오브젝트가 활성화되었을 때 1회 호출
- 컴포넌트가 비활성화 상태여도 게임 오브젝트가 활성화 되어 있으면 호출
- 데이터를 초기화 하는 용도
Start()
- 현재 씬에서 게임 오브젝트와 컴포넌트가 모두 활성화 되어 있을 때 1회 호출
- 데이터를 초기화 하는 용도
- 첫번째 업데이트 함수가 실행되기 직전 호출
- 초기화 함수 호출 순서 Awake() -> OnEnable() -> Start()
OnEnable()
- 컴포넌트가 비활성화 되었다가 활성화 될 때마다 1회 호출
업데이트를 위한 이벤트 함수
Update()
- 현재 씬이 실행된 후 컴포넌트가 활성화 되어 있을 때, 매 프레임마다 호출(FPS 60이라고 하면 Update() 함수가 1초에 60번 호출된다는 뜻)
LateUpdate()
- 현재 씬에 존재하는 모든 게임 오브젝트의 Update() 함수가 1회 실행된 후 실행된다
- 업데이트 함수 호출 순서 : Update() -> LateUpdate()
- 예를 들어 플레이어 캐릭터, 카메라와 같이 서로 다른 오브젝트가 존재할 때 플레이어 캐릭터를 쫓아다니는 카메라를 구현한다면 플레이어 캐릭터를 Update()를 이용해 움직이고 난 후, 카메라는 LateUpdate()에서 플레이어의 위치를 바탕으로 이동한다
FixedUpdate()
- 프레임의 영향을 받지 않고 일정한 간격으로 호출
- Edit -> Project Settings -> Time 옵션의 Fixed Timestep 변수로 조절 가능(기본값 0.02로 0.02초에 1번 호출됨, 1초에 50번 호출)
오브젝트 파괴를 위한 이벤트 함수
OnDestroy()
- 게임 오브젝트가 파괴될 때 1회 호출
- 씬이 변경되거나 게임이 종료될 때도 오브젝트가 파괴되기 때문에 호출된다
종료를 위한 이벤트 함수
OnApplicationQuit()
- 게임이 종료될 때 1회 호출
- 유니티 에디터에서는 플레이 모드를 중지할 때 호출
OnDisable()
- 컴포넌트가 활성화 되었다가 비활성화 될 때 마다 1회 호출 (OnEnable과 반대)
'Study > Unity' 카테고리의 다른 글
Unity Collision2D (0) | 2021.07.15 |
---|---|
[Unity Component] Rigidbody2D Collider2D (0) | 2021.07.14 |
Unity Time.deltaTime (0) | 2021.07.14 |
Unity Scene View 화면 조작법 (0) | 2021.07.13 |
Unity View 단축키 (0) | 2021.07.13 |