코루틴의 업데이트는
보통 Update
함수가 리턴한 후 실행됩니다.
코루틴은 주워진 Yield
Instruction이 끝날 때까지 그것을 실행을
중지할 수 있는 함수입니다.
C#언어
기준으로 반드시 다음 형태로 선언되어야 합니다.
IEnumerator
함수명(인자)
예제..
using UnityEditor;
using System.Collections;
public class ExampleClass: MonoBehaviour
{
void Start(){
print("Starting " + Time.time);
StartCoroutine(WaitAndPrint(2.0f));
print("Before WaitAndPrint FInishes " + Time.time);
}
IEnumerator WaitAndPrint(float waitTime){
yield return new WaitForSeconds(waitTime);
print("WaitAndPrint " + Time.time);
}
}
코루틴용 데이터
|
엔진이 수행하는 기능
|
yield
return null
|
다음 프레임까지 대기
|
yield
return new WaitForSeconds(float)
|
지정된 초만큼 대기
|
yield
return new WaitForFixedUpdate()
|
다음 물리 프레임까지 대기
|
yield
return new WaitForEndOfFrame()
|
모든 렌더링 작업이 끝날 때까지 대기
|
yield
return StartCoroutine()
|
다른 코루틴이 끝날 때까지 대기
|
yield
return new WWW(string)
|
웹 통신 작업이 끝날 때까지 대기
|
yield
return new AsyncOperation
|
비동기 작업이 끝날 때까지 대기(씬로딩)
|