코루틴

Unity 2016. 2. 14. 23:45

코루틴의 업데이트는 보통 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

비동기 작업이 끝날 때까지 대기(씬로딩)


'Unity' 카테고리의 다른 글

iTween  (0) 2016.02.15
Random.insideUnitCircle  (0) 2016.02.14
충돌체  (0) 2016.02.11
애니메이션 속도 관련  (0) 2016.02.11
Animator View Layer  (0) 2016.02.11
Posted by 빵원군
,