Unity3d yield
正常情况下,协程是在Update函数返回时执行,而协程的主要功能是延缓其执行,指定给定的YieldInstruction完成。
常用的协程有:
yield:当下一帧所有的Update方法被调用之后,协程继续执行。
yield WaitForSeconds:等待指定时间后,协程继续。
yield WaitForFixedUpdate:在所有脚本上的所有FixedUpdate被调用之后继续执行。
yield WWW:在WWW加载完成之后继续执行。
yield StartCoroutine(Fun):等待协程Fun完成后执行。
代码实例:
void Start () { StartCoroutine(PrintAfter_WaitAndPrintInvoke("OK!!!")); } IEnumerator WaitAndPrint(float time, string str) { yield return new WaitForSeconds(time); print(str); } IEnumerator PrintAfter_WaitAndPrintInvoke(string str) { yield return StartCoroutine(WaitAndPrint(3, "wait 3 second print")); print(str); }
//在WWW加载完成后继续执行
IEnumerator TestWWW()
{
string url = "http://img ges.ear thcam.com/ec_me tros/our cams/ fridays.jpg";
WWW www = new WWW(url);
yield return www;
}

浙公网安备 33010602011771号