版本: Unity 6 (6000.0)
语言英语
  • C#

EditorSceneManager

UnityEditor.SceneManagement 中的类

/

继承自: SceneManagement.SceneManager

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们不能接受所有提交内容,但我们确实会阅读用户提出的每个更改建议,并在适用的情况下进行更新。

关闭

提交失败

由于某种原因,您的更改建议无法提交。请稍后再试。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

编辑器中的场景管理。

静态属性

DefaultSceneCullingMask请使用 SceneCullingMasks.DefaultSceneCullingMask 代替。
playModeStartScene在您开始播放模式时加载此 SceneAsset。
preventCrossSceneReferences控制编辑器中是否允许跨场景引用。
previewSceneCount当前活动的预览场景数量。

静态方法

CalculateAvailableSceneCullingMask遍历所有场景并找到所有场景剔除掩码的并集中最小的未使用位。
ClosePreviewScene关闭由 NewPreviewScene 或 OpenPreviewScene 创建的预览场景。
CloseScene关闭场景。如果 removeScene 标记为真,则关闭的场景也将从 EditorSceneManager 中删除。
DetectCrossSceneReferences检测场景中的跨场景引用。
EnsureUntitledSceneHasBeenSaved如果在当前场景管理器设置中存在未命名场景,则显示保存对话框。
GetSceneCullingMask返回设置在给定场景上的剔除掩码。
GetSceneManagerSetup返回场景管理器的当前设置。
IsPreviewScene场景是否为预览场景?
IsPreviewSceneObject此对象是否为预览场景的一部分?
LoadSceneAsyncInPlayMode此方法允许您在编辑器播放模式期间加载场景,而无需将场景包含在构建设置场景列表中。
LoadSceneInPlayMode此方法允许您在编辑器播放模式期间加载场景,而无需将场景包含在构建设置场景列表中。
MarkAllScenesDirty将所有加载的场景标记为已修改。
MarkSceneDirty将指定的场景标记为已修改。
MoveSceneAfter允许您重新排序当前在层次结构窗口中打开的场景。移动源场景,使其位于目标场景之后。
MoveSceneBefore允许您重新排序当前在层次结构窗口中打开的场景。移动源场景,使其位于目标场景之前。
NewPreviewScene创建一个新的预览场景。添加到预览场景的任何对象仅在该场景中渲染。
NewScene创建一个新的场景。
OpenPreviewScene在预览场景中打开 Scene Asset。
OpenScene在编辑器中打开场景。
RestoreSceneManagerSetup恢复场景管理器的设置。
SaveCurrentModifiedScenesIfUserWantsTo询问用户是否要保存当前在层次结构中打开的已修改场景。
SaveModifiedScenesIfUserWantsTo询问是否应保存已修改的输入场景。
SaveOpenScenes保存所有打开的场景。
SaveScene保存场景。
SaveScenes保存场景列表。
SetSceneCullingMask将此场景上的剔除掩码设置为此值。相机仅渲染具有剔除掩码中设置了相同位的场景中的对象。

事件

activeSceneChangedInEditMode订阅此事件以在编辑器中编辑模式下活动场景发生更改时收到通知。
newSceneCreated在创建新场景后调用此事件。
sceneClosed在编辑器中关闭场景后调用此事件。
sceneClosing在您请求关闭场景后,在关闭打开的场景之前调用此事件。
sceneDirtied在编辑器中修改场景后调用此事件。
sceneManagerSetupRestored这在调用 RestoreSceneManagerSetup 后通知您场景管理器中的场景被替换为一组新场景时很有用。使用 scenes 参数来检查哪些场景刚刚被打开。其他资源:SceneManagerSetupRestoredCallback。
sceneOpened在编辑器中打开场景后调用此事件。
sceneOpening在打开现有场景之前调用此事件。
sceneSaved在保存场景后调用此事件。
sceneSaving在您请求保存场景后,在场景保存到磁盘之前调用此事件。

委托

NewSceneCreatedCallback已添加到 newSceneCreated 事件的此类型回调将在创建新场景后被调用。
SceneClosedCallback已添加到 sceneClosed 事件的此类型回调将在场景关闭后立即被调用。
SceneClosingCallback已添加到 sceneClosing 事件的此类型回调将在关闭场景之前被调用。
SceneDirtiedCallback已添加到 sceneDirtied 事件的此类型回调将在场景从未修改更改为已修改后被调用。
SceneManagerSetupRestoredCallback已添加到 sceneManagerSetupRestored 事件的此类型回调将在调用 RestoreSceneManagerSetup 后被调用。
SceneOpenedCallback已添加到 sceneOpened 事件的此类型回调将在打开场景后被调用。
SceneOpeningCallback已添加到 sceneOpening 事件的此类型回调将在打开场景之前被调用。
SceneSavedCallback已添加到 sceneSaved 事件的此类型回调将在保存场景后被调用。
SceneSavingCallback已添加到 sceneSaving 事件的此类型回调将在场景保存之前被调用。

继承的成员

静态属性

loadedSceneCount加载的场景数量。
sceneCount当前场景数量。
sceneCountInBuildSettings构建设置中的场景数量。

静态方法

CreateScene在运行时使用给定名称创建空的新场景。
GetActiveScene获取当前活动的场景。
GetSceneAt获取场景管理器加载的场景列表中索引处的场景。
GetSceneByBuildIndex从构建索引获取场景结构。
GetSceneByName搜索加载的场景以查找具有给定名称的场景。
GetSceneByPath搜索所有加载的场景以查找具有给定资产路径的场景。
LoadScene通过其在构建设置中的名称或索引加载场景。
LoadSceneAsync在后台异步加载场景。
MergeScenes这将合并源场景到目标场景中。
MoveGameObjectsToScene将由实例 ID 的 NativeArray 表示的多个游戏对象从其当前场景移动到新场景。
MoveGameObjectToScene将游戏对象从其当前场景移动到新场景。
SetActiveScene设置要激活的场景。
UnloadSceneAsync销毁与给定场景关联的所有游戏对象,并将场景从场景管理器中删除。

事件

activeSceneChanged订阅此事件以在活动场景发生更改时收到通知。
sceneLoaded将自定义回调分配给此事件以在场景加载时接收通知。
sceneUnloaded添加一个委托以在场景卸载时接收通知。