SceneManager 场景管理

描述:运行时的场景管理方法。

静态变量说明
sceneCount场景的总数。
sceneCountInBuildSettings在BuildSettings中的场景数量。
静态函数说明
CreateScene创建一个空的新场景并指定名称。名称不能为空或者与已存在的场景名称一样。
GetActiveScene获取激活的场景。
GetSceneAt获取在场景管理列表添加场景的索引。索引必须大于或等于0并且小于SceneManager.sceneCount。
GetSceneByName通过场景添加到场景管理器的指定名称查找该场景。该名称不会有.unity扩展名。在BuildSettings窗口中显示返回匹配到的首个场景的名称,该名称可以是名称的最后部分。在Build Settings中显示的名称也可以是路径,依然没有扩展名,在这种情况下将会仅返回精确匹配。这是不区分大小写的。
GetSceneByPath查找所有给定资源路径并添加到SceneManager中的场景。场景路径。相对于工程文件夹下。就像: “Assets/MyScenes/MyScene.unity”。
LoadScene通过在Build Settings中它们的名称或索引加载场景。指定场景名称可以是路径的最后部分不加.unity扩展名或者全部路径不加.unity扩展名。该路径在 Build Settings窗口中被精确的显示出来。如果场景名是指定的将会加载匹配到的首个场景。如果有多个名称相同但是路径不同的场景,你应该使用全部路径。注意那是不区分大小写的。
LoadSceneAsync在背景中异步加载场景。指定场景名称可以是路径的最后部分不加.unity扩展名或者全部路径不加.unity扩展名。该路径在 Build Settings窗口中被精确的显示出来。如果场景名是指定的将会加载匹配到的首个场景。如果有多个名称相同但是路径不同的场景,你应该使用全部路径。注意这不区分大小写。
MergeScenes该属性将场景资源合并到destinationScene。该函数合并场景资源内容到目的场景并删除原场景资源。所有根资源场景下的物体移动到根目的场景目录下。注意:该函数是有破坏性的:当资源合并完成后原有资源场景将会被立刻销毁。
MoveGameObjectToScene移动一个物体从它当前场景到一个新的场景中。它必须要求该物体在当前场景的根目录下。
SetActiveScene设置被激活的场景。
UnloadScene卸载所有和指定场景关联的物体。指定场景名称可以是路径的最后部分不加.unity扩展名或者全部路径不加.unity扩展名。该路径在 Build Settings窗口中被精确的显示出来。如果场景名是指定的将会加载匹配到的首个场景。如果有多个名称相同但是路径不同的场景,你应该使用全部路径。注意该方法不区分大小写。注意该资源当前不被卸载,为了释放资源内存调用Resources.UnloadAllUnusedAssets。

?