ReSharper 2026.1 Help

代码检查:场景在构建设置中被禁用

该检查会检测脚本尝试加载已存在于 Unity 项目中并已添加到构建设置但当前被禁用(未勾选)的场景。

在运行时加载已禁用场景会导致失败,因为 Unity 只会将启用的场景包含在最终构建中。

运作方式

该检查器会监控对场景管理方法的调用,如 SceneManager.LoadSceneSceneManager.LoadSceneAsyncEditorSceneManager.OpenScene

会分析场景名称或路径参数,确保其为字符串字面值。 随后会将其与 构建设置 中的场景列表进行核对。 如果在列表中找到场景但其复选框未选中(被禁用),检查会发出警告。

示例

在本示例中,假设 "Level2" 已在 构建设置中但当前被禁用。

using UnityEngine.SceneManagement; public class SceneLoader : MonoBehaviour { void Start() { // Reported: Scene 'Level2' is disabled in build settings. SceneManager.LoadScene("Level2"); } }
using UnityEngine.SceneManagement; public class SceneLoader : MonoBehaviour { void Start() { // "MainMenu" is enabled in Build Settings. SceneManager.LoadScene("MainMenu"); } }

快速修复

该检查提供了一个快速修复功能,允许直接在代码编辑器中启用场景。 会定位到 EditorBuildSettings.asset 文件,并修改与场景路径相匹配的条目,将其状态设置为启用。

2026年 5月 8日