Unity3d yield

正常狀況下,協程是在Update函數返回時執行,而協程的主要功能是延緩其執行,指定給定的YieldInstruction完成。函數

經常使用的協程有:url

yield:當下一幀全部的Update方法被調用以後,協程繼續執行。spa

yield WaitForSeconds:等待指定時間後,協程繼續。code

yield WaitForFixedUpdate:在全部腳本上的全部FixedUpdate被調用以後繼續執行。協程

yield WWW:在WWW加載完成以後繼續執行。blog

yield StartCoroutine(Fun):等待協程Fun完成後執行。string

代碼實例:it

  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;  }
相關文章
相關標籤/搜索