網頁

2018年6月29日 星期五

場景切換時等待個幾秒鐘才切換過去

這是書上普遍都會用的方法
我參考Loading new scene after time [連結] 的寫法
改成適合我的專案的code。

解釋一下:
事先寫了名為LoadLevelAfterDelay的IEmumerator
要用的時候,使用StartCoroutine呼叫LoadLevelAfterDelay。

IEmumerator也可以寫一些參數進去,以下的例子是寫sceneName這個參數,決定要切換去哪個場景。


  1. IEnumerator LoadSceneAfterDelay (string sceneName) { yield return new WaitForSeconds(0); SceneManager.LoadScene(sceneName, LoadSceneMode.Single); }
這個指令另外寫到其他function裡面
StartCoroutine(LoadSceneAfterDelay("BaseballMain"));


你也可以寫delay參數,決定要等待幾秒鐘。

  1. IEnumerator LoadSceneAfterDelay (string sceneName, float delay) { yield return new WaitForSeconds(delay); SceneManager.LoadScene(sceneName, LoadSceneMode.Single); }

  2. 這個指令另外寫到其他function裡面
StartCoroutine(LoadSceneAfterDelay("BaseballMain",2));


參考資料 [連結1]  [連結2]


沒有留言:

張貼留言