[Unity] 오브젝트 라이프사이클
2023. 4. 4. 13:16ㆍ학부 강의/SW종합설계
0. 출처
1. 오브젝트 라이프 사이클
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
// 초기화 영역
void Awake()
{
// 초기화.
// 게임 오브젝트 생성 시 최초 실행
// 단 한번만 실행
Debug.Log("Awake");
}
// 활성화
void OnEnable()
{
// Awake와 Start 사이에서 게임 오브젝트가 활성화 되면 실행
// 활성화될 때마다 실행
Debug.Log("OnEnable");
}
void Start()
{
// 업데이트 시작 직전
// 단 한번만 실행
Debug.Log("Start");
}
// 물리
void FixedUpdate()
{
// 고정된 일정한 주기마다 실행
// 프레임 독립적
// Fixed Timestep으로 실행 주기 설정 (보통 초당 50회 정도)
// 일정하게 호출되기 때문에 보통 물리 연산 업데이트 많이 사용
// CPU 부하가 높음
Debug.Log("FixedUpdate");
}
// 게임로직
void Update()
{
// 프레임마다 실행
// 실행환경에 따라 실행 주기가 지속적으로 변화
// 물리 연산이 아닌 게임로직 업데이트에 많이 사용
// CPU 부하가 높음
Debug.Log("Update");
}
void LateUpdate()
{
// Update 종료 후 실행
// 프레임마다 실행
// 카메라 이동, 로직의 후처리 등에 사용
Debug.Log("LateUpdate");
}
// 비활성화
void OnDisable()
{
// 모든 업데이트 종료 후 비활성화 시 실행
// 해체되기 전 혹은 비활성화될 때마다 실행
Debug.Log("OnDisable");
}
// 해체
void OnDestroy()
{
// 오브젝트 삭제 시 실행
Debug.Log("OnDestroy");
}
}
'학부 강의 > SW종합설계' 카테고리의 다른 글
[Fusion] 102 - Setting Up A Scene (0) | 2023.04.12 |
---|---|
[Fusion] 설치 (0) | 2023.04.12 |
[Unity] 게임의 구조와 C# (0) | 2023.04.04 |
[Unity] 유니티 기초 (0) | 2023.04.04 |
SW종합설계 시작 (0) | 2023.04.04 |