# SceneManager::CreateScene 创建并登记一个新场景。 ```cpp Scene* CreateScene(const std::string& name); ``` ## 行为说明 当前实现会: 1. 构造 `std::make_unique(name)`。 2. 把场景存入 `m_scenes[name]`。 3. 如果当前没有活动场景,则把 `m_activeScene` 设为新场景。 4. 触发 [OnSceneLoaded](OnSceneLoaded.md)。 ## 参数 - `name` - 新场景名称,同时也是 `m_scenes` 的 key。 ## 返回值 - `Scene*` - 新场景的非拥有指针。 ## 当前实现限制 - 如果同名 key 已存在,旧场景会被替换;先前拿到的裸指针可能失效。 - 当它成为第一个活动场景时,当前不会额外触发 [OnActiveSceneChanged](OnActiveSceneChanged.md)。 ## 相关文档 - [返回类型总览](SceneManager.md) - [GetScene](GetScene.md) - [OnSceneLoaded](OnSceneLoaded.md)