unity场景的同步和异步加载

unity场景的同步和异步加载

public static void LoadScene(intsceneBuildIndex,SceneManagement.LoadSceneModemode= LoadSceneMode.Single);

public static void LoadScene(stringsceneName,SceneManagement.LoadSceneModemode= LoadSceneMode.Single);

参数sceneBuildIndex表示在Building设置中加载的场景的序号; sceneName 表示要加载的场景的名称或路径; mode表示加载场景的方式,

有Single(只显示新加载的场景)和Additive(根据原场景加载新的场景)。

注意:使用 scenemanager.loadscene 时,加载不会立即发生,而是在下一帧完成。正是这种半异步行为导致加载场景时帧到帧的卡顿。因为加载是在下一帧完成的,所以调用 scenemanager.loadscene 将强制所有之前的 AsynOperations 完成,即使 AsyncOperation.allowSceneActivation 设置为 false。因此unity加载大型场景,在大多数情况下unity加载大型场景,为了避免场景加载时的卡顿地图场景,应该使用异步加载命令。 html

例子: