Unity中自定義協程函式

2021-10-01 21:34:46 字數 653 閱讀 4274

unity中提供了協程的方法,在處理一些需要非同步的函式時非常方便,尤其是在處理網路請求響應的時候,但是協程函式有些時候需要自定義,這就需要自己實現滿足條件的協程函式了,好在unity提供了這樣的類來幫助我們實現相關的功能。通過繼承customyieldinstruction實現自己的協程函式。

其中介面函式keepwaiting是一定要實現的,以一段http請求的**為例:

當然了unity的原生類unitywebrequest是支援協程的就沒這麼麻煩,可是如果需要c#的httpwebrequest來實現的時候就沒那麼容易了,需要自己實現了。 實現方式如下,通過keepwaiting的返回值來通知呼叫的**是否執行完畢。

/// /// 自定義協程函式,解決httpwebresponse不支援協程的問題

///

class getresponse : customyieldinstruction

catch (exception ex)

code = false;//結束協程的掛起等待

}public override bool keepwaiting}}

Unity中的協程

1.建立協程 迭代器 ienumerator private ienumerator test 裡面可以使用 yield return new waitforsecond 1 等待1s後執行後面的 yield return new waitforseconds 0.3f 等待0.3秒,一段指定的時間...

Unity中協程方法使用

開啟協程 void start 返回值是ienumerator 返回引數時使用 yield return null 協程方法的呼叫是startcoroutine changecolor ienumerator changecolor 關閉協程 關閉協程的方法需要和開啟協程的方法對應 不能使用star...

unity中自定義滑鼠樣式

在用unity製作遊戲過程中,執行遊戲時,有沒有感覺到原來的滑鼠看著是不是特別不爽了?反正我是看膩了,哈哈!下面來看看自定義滑鼠樣式的自作 首先你需要在unity中將的樣式改為cursor型別的 然後我們來看看 public texture2d cursortexture 在外面為該變數賦值 voi...