Unity協程
阿新 • • 發佈:2021-10-05
yield介紹
yield return null; // 下一幀再執行後續程式碼 yield return 0; //下一幀再執行後續程式碼 yield return 6;//(任意數字) 下一幀再執行後續程式碼 yield break; //直接結束該協程的後續操作 yield return asyncOperation;//等非同步操作結束後再執行後續程式碼 yield return StartCoroution(/*某個協程*/);//等待某個協程執行完畢後再執行後續程式碼 yield return WWW();//等待WWW操作完成後再執行後續程式碼 yield return new WaitForEndOfFrame();//等待幀結束,等待直到所有的攝像機和GUI被渲染完成後,在該幀顯示在螢幕之前執行 yield return new WaitForSeconds(0.3f);//等待0.3秒,一段指定的時間延遲之後繼續執行,在所有的Update函式完成呼叫的那一幀之後(這裡的時間會受到Time.timeScale的影響); yield return new WaitForSecondsRealtime(0.3f);//等待0.3秒,一段指定的時間延遲之後繼續執行,在所有的Update函式完成呼叫的那一幀之後(這裡的時間不受到Time.timeScale的影響); yield return WaitForFixedUpdate();//等待下一次FixedUpdate開始時再執行後續程式碼 yield return new WaitUntil()//將協同執行直到 當輸入的引數(或者委託)為true的時候....如:yield return new WaitUntil(() => frame >= 10); yield return new WaitWhile()//將協同執行直到 當輸入的引數(或者委託)為false的時候.... 如:yield return new WaitWhile(() => frame < 10);