Version: 2021.3

EditorSceneManager

class in UnityEditor.SceneManagement

/

继承自:SceneManagement.SceneManager

切换到手册

描述

编辑器中的场景管理。

静态变量

DefaultSceneCullingMaskUse SceneCullingMasks.DefaultSceneCullingMask instead.
loadedSceneCount已加载的场景的数量。
playModeStartScene启动播放模式时加载此场景资源。
preventCrossSceneReferences控制是否允许在编辑器中使用跨场景引用。
previewSceneCount当前活动预览场景的数量。

静态函数

CalculateAvailableSceneCullingMask遍历所有场景,查找所有场景剔除遮罩的并集中最小的未使用位。
ClosePreviewScene关闭 NewPreviewScene 创建的预览场景。
CloseScene关闭场景。如果 removeScene 标志为 true,则关闭的场景还将从 EditorSceneManager 中删除。
DetectCrossSceneReferences在场景中检测跨场景引用。
EnsureUntitledSceneHasBeenSaved如果当前的场景管理器设置中存在一个 Untitled 场景,则显示一个保存对话框。
GetSceneCullingMask返回在给定场景中设置的剔除遮罩。
GetSceneManagerSetup返回场景管理器的当前设置。
IsPreviewScene该场景是否是预览场景?
IsPreviewSceneObject此对象是否是预览场景的一部分?
LoadSceneAsyncInPlayMode此方法允许在编辑器中的播放模式期间加载场景,而不需要将场景包含在 Build Settings 的场景列表中。
LoadSceneInPlayMode此方法允许在编辑器中的播放模式期间加载场景,而不需要将场景包含在 Build Settings 的场景列表中。
MarkAllScenesDirty将所有已加载场景标记为已修改。
MarkSceneDirty将指定场景标记为已修改。
MoveSceneAfter允许您对 Hierarchy 窗口中当前打开的场景进行重新排序。将源场景移动到目标场景之后。
MoveSceneBefore允许您对 Hierarchy 窗口中当前打开的场景进行重新排序。将源场景移动到目标场景之前。
NewPreviewScene创建新的预览场景。添加到预览场景中的所有对象都将只能在该场景进行渲染。
NewScene创建新场景。
OpenScene在编辑器中打开场景。
RestoreSceneManagerSetup恢复场景管理器的设置。
SaveCurrentModifiedScenesIfUserWantsToAsks the user if they want to save the current open modified Scene or Scenes in the Hierarchy.
SaveModifiedScenesIfUserWantsTo询问是否应保存修改后的输入场景。
SaveOpenScenes保存所有打开的场景。
SaveScene保存场景。
SaveScenes保存场景列表。
SetSceneCullingMask将此场景中的剔除遮罩设置为该值。 摄像机将仅渲染场景中在剔除遮罩中设置了相同位的对象。

Events

activeSceneChangedInEditMode订阅此事件可在编辑器中的编辑模式下改变活动场景时收到通知。
newSceneCreated在创建新场景后,调用此事件。
sceneClosed在编辑器中关闭场景后,调用此事件。
sceneClosing在您已请求关闭一个打开的场景之后且在关闭此场景之前,调用此事件。
sceneDirtied在编辑器中修改场景后调用此事件。
sceneOpened在编辑器中已打开场景后,调用此事件。
sceneOpening在打开现有场景之前,调用此事件。
sceneSaved在保存场景后,调用此事件。
sceneSaving在您已请求保存场景之后且在磁盘上保存此场景之前,调用此事件。

委托

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

继承的成员

静态变量

sceneCount当前加载的场景总数。
sceneCountInBuildSettingsBuild Settings 中的场景数量。

静态函数

CreateScene在运行时使用给定名称创建一个新的空场景。
GetActiveScene获取当前活动的场景。
GetSceneAt获取 SceneManager 的已加载场景列表中索引处的场景。
GetSceneByBuildIndex从构建索引中获取场景结构。
GetSceneByName搜索已加载的场景,查找包含给定名称的场景。
GetSceneByPath搜索所有已加载的场景,查找具有给定资源路径的场景。
LoadScene按照 Build Settings 中的名称或索引加载场景。
LoadSceneAsync在后台异步加载场景。
MergeScenes这会将源场景合并到 destinationScene 中。
MoveGameObjectToScene将游戏对象从当前场景移至新场景。
SetActiveScene将场景设置为活动状态。
UnloadSceneAsync销毁所有与给定场景关联的游戏对象,并将场景从 SceneManager 中移除。

Events

activeSceneChanged订阅此事件可在活动场景发生变化时收到通知。
sceneLoaded向此事件添加委托,以在加载场景时收到通知。
sceneUnloaded向此事件添加委托以在卸载场景时收到通知。