Unity 5上的OnLevelWasLoaded在哪里?

Muh*_*cak 6 c# unity-game-engine

在这个新的统一版本中,我认为使用了SceneManager.但我无法找到如何在水平上加载SceneManager.

旧方式:

void OnLevelWasLoaded(){
// do something
}
Run Code Online (Sandbox Code Playgroud)

当我尝试旧的方式时,我得到了这个:

在MusicManager上找到OnLevelWasLoaded此消息已被弃用,将在更高版本的Unity中删除.将一个委托添加到SceneManager.sceneLoaded,以在场景加载完成后获取通知

我不知道如何使用

SceneManager.sceneLoaded();
Run Code Online (Sandbox Code Playgroud)

不知道要传递什么......

Pro*_*mer 7

你必须sceneLoaded作为一个事件.

sceneLoadedStart()Awake()函数中注册事件.

SceneManager.sceneLoaded += this.OnLoadCallback;
Run Code Online (Sandbox Code Playgroud)

OnLoadCallback然后在加载场景时调用该函数.

OnLoadCallback函数签名:

void OnLoadCallback(Scene scene, LoadSceneMode sceneMode)
{

}
Run Code Online (Sandbox Code Playgroud)