Event 함수의 실행 순서 [[http://docs.unity3d.com/Documentation/Manual/ExecutionOrder.html]] ====== 퀵 ====== * 모든 Awake() * 모든 Start() * while( Time.deltaTime ) 안에 * FixedUpdate() * Physics 연산 * OnEnter/Exit/Stay Trigger * OnEnter/Exit/Stay Collision * 리지드바디의 인터폴레이션 적용 * 마우스와 같은 입력 대응 이벤트 * 모든 Update() * 모든 LateUpdate() * 렌더링 ====== 첫번째 Scene 로드 ====== * Scene 내부의 오브젝트에 대해서 모두 한번씩 호출 된다. = Awake : Start()가 실행 되기 전 또는 Prefab가 막 초기화 되었을때 실행. 오브젝트가 비활성 상태면 활성화 될때 호출. = OnEnable : 오브젝트가 활성화 되면 호출. MonoBehaviour 인스턴스화 되었을때. ====== 첫 프레임이 시작 되기 전에 ====== = Start : 첫 프레임이 그려지기 전에 ====== Update 순서 ====== - FixedUpdate : Update()보다 더 많이 호출된다. FixedUpdate()에서는 **Time.deltaTime**을 곱할 필요가 없다. - Update : 프레임당 한번씩. - LateUpdate : Update()가 실행된 다음 프레임당 한번씩 호출된다. ====== Coroutine ====== * **yield;** : 다음 프레임에 실행된다. * **yield WaitForSeconds(2)** : 모든 Update()가 실행된 다음에 * **yield WaitForFixedUpdate() : FixedUpdate() 다음에 * **yield StartCoroutine(MyFunc)** : MyFunc()이 종료될때까지 ====== 힌트 ====== * Coroutine은 Update() 다음에 실행된다.