유니티 일기

유니티 오브젝트 라이프사이클

mky 2025. 8. 23. 17:05

골드메탈님의 유튜브 강의 영상의 내용을 정리해보았다.

 

using UnityEngine;

public class LifeCycle : MonoBehaviour
{
    void Awake() // 초기화(최초), 오브젝트가 씬에 로드될 때 한번만 호출되는 메서드
    {
        Debug.Log("플레이어 데이터가 준비되었습니다.");
    }

    void Start() // 초기화(프레임시작), 업데이트 시작 직전 최초 실행
    {
        Debug.Log("사냥 장비를 챙겼숩니다.");
    }

    void OnEnable() // 게임 오브젝트 활성화
    {
        Debug.Log("플레이어가 로그인하였습니다.");
    }

    void FixedUpdate() // 프레임(물리), 고정된 실행 주기로 호출(1초에 약 50회), CPU를 많이 사용.
    {
        Debug.Log("이동~");
    }

    void Update() // 프레임(로직), 환경에 따라 실행 주기가 떨어질 수 있음
    {
        Debug.Log("몬스터 사냥! ");
    }

    void LateUpdate() // 프레임(후처리), 모든 업데이트가 끝난 후에 호출, 카메라 이동이나 후처리에 주로 사용
    {
        Debug.Log("경험치 획득!");
    }

    void OnDisable() // 게임 오브젝트 비활성화
    {
        Debug.Log("플레이어가 로그아웃하였습니다.");
    }

    void OnDestroy() // 해제, 오브젝트가 파괴될 때 무언가를 남기고 삭제될 때 유용
    {
        Debug.Log("플레이어 데이터를 해제하였습니다.");
    }
    


}