생명주기 순서
Coddy Unity 여정의 Unity 스크립팅 기초 섹션에 포함된 레슨. 67개 중 58번째.
Unity는 스크립트의 객체가 나타나는 순간부터 파괴되는 순간까지, 정해진 순서로 메서드를 호출합니다.
Awake(): 객체가 로드되거나 생성될 때 한 번 호출됩니다.OnEnable(): 그 직후 호출되며, 객체가 표시될 때마다 다시 호출됩니다.Start(): 스크립트의 첫 프레임이 시작되기 전에 한 번 호출됩니다.FixedUpdate(): 물리 시계를 기준으로 기본적으로 초당 50회 호출되므로, 한 프레임에서 0회, 1회 또는 여러 번 호출될 수 있으며, 항상 해당 프레임의Update()보다 먼저 호출됩니다.Update(): 프레임마다 한 번 호출됩니다.LateUpdate(): 프레임마다 한 번 호출되며, 모든Update()가 끝난 뒤에 호출됩니다.OnDisable(): 객체가 숨겨질 때마다 호출되며, 객체가 파괴되기 전에 호출됩니다.OnDestroy(): 객체가 파괴될 때 한 번 호출됩니다.
객체가 활성 상태인 동안 4~6단계는 매 프레임 반복됩니다. 생성된 객체도 같은 순서를 따릅니다. Instantiate는 반환되기 전에 복제본의 Awake()와 OnEnable()을 실행하고, 복제본의 Start()는 첫 Update()보다 먼저 실행됩니다.
이 순서에 따라 두 가지 습관을 들일 수 있습니다. Awake()의 코드는 다른 모든 객체의 Start()가 실행될 때까지 객체 자체의 필드를 설정합니다. 그리고 물리 관련 코드는 FixedUpdate()에 넣습니다. 프레임이 아무리 빠르거나 느리게 진행되더라도 각 호출 간격은 항상 0.02초입니다.
직접 해보기
이 레슨에는 코드 챌린지가 없습니다.
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.