Unity3D

Unity 주요함수 #4

초코맛퐁듀 2014. 1. 16. 14:06

1. 함수명을 이용한 StartCoroutine & StopCoroutine

- 문자열 사용의 코루틴 단점은 코루틴 시작 시점에서 런타임 성능의 부담이 크고

   하나의 파라메터만 전달이 가능함

- 현재 Behaviout에서 실행되고 있는 특정 함수의 모든 코루틴을 정지시킴

 

-> StopCoroutine은 문자열을 사용하는 StartCoroutine에 의해서 시작된 코루틴만

    멈출 수 있음

예) function Start() {

StartCoroutine("DoSomething", 5.0);

yield Wait ForSeconds(2.0);

 

StopCoroutine("DoSomething");

}

 

function DoSomething(someParam : float) {

while(true) {

Debug.Log("DoSomething Loop = " + Time.time);

yield;

}

}

 

* 결과는

(1) DoSomething Loop = 0

(2) ...

(3) DoSomething Loop = 2.011495

 

-> 주의  : 마지막 라인의 yield를 빼면 무한루프에 빠져서 유니티가 응답없음

              이 되버림

 

 

2. StopAllCoroutines

- 현재 Behaviour에서 실행되고 있는 모든 코루틴을 정지시킴

  

   StopAllCoroutines();

 

[출처] 유니티 주요함수 #4 | 작성자 만듀