Unity 오브젝트의 라이프 사이클 / Unity object lifecycle
Reset()
조건 : 에디터에서 게임 오브젝트에 스크립트 컴포넌트를 처음 추가했거나, 우클릭 - Reset 버튼을 눌렀을 때
실행 : 매번 호출
※ 에디터 모드에서만 실행되며, 플레이 모드에서는 아무 동작도 하지 않는다.
Awake()
조건 : 스크립트 컴포넌트의 활성화 여부와 상관 없이, 게임 오브젝트가 활성화 되면
실행 : 최초 1회만 호출
OnEnable()
조건 : 게임 오브젝트와 스크립트 컴포넌트가 둘 다 활성화 상태가 되면
실행 : 매번 호출되며, 최초 실행일 경우 Start() 보다 먼저 호출
Start()
조건 : OnEnable() 과 동일
실행 : 최초 1회만 호출
※ 각 게임 오브젝트의 Start() 는 하이어라키 뷰에 나열된 순서대로 호출된다.
Update()
조건 : OnEnable() 과 동일
실행 : 매 프레임마다 호출
OnDisable()
조건 : 게임 오브젝트와 스크립트 컴포넌트가 둘 다 활성화 상태일 때, 둘 중 하나가 비활성화 되면
실행 : 매번 호출
OnDestroy()
조건 : 게임 오브젝트가 최소 1번 이상 활성화 상태였고, Destroy 가 발생하면
실행 : 1회만 호출