35 lines
855 B
Markdown
35 lines
855 B
Markdown
# SceneRuntime::Stop
|
|
|
|
**命名空间**: `XCEngine::Components`
|
|
|
|
**类型**: `method`
|
|
|
|
**头文件**: `XCEngine/Scene/SceneRuntime.h`
|
|
|
|
## 签名
|
|
|
|
```cpp
|
|
void Stop();
|
|
```
|
|
|
|
## 作用
|
|
|
|
停止当前场景运行并结束脚本运行时。
|
|
|
|
## 当前实现行为
|
|
|
|
- 如果当前并不处于运行状态,只会把 `m_scene` 清成 `nullptr`。
|
|
- 如果当前正在运行:
|
|
- 先调用 `ScriptEngine::Get().OnRuntimeStop()`。
|
|
- 再把 `m_running` 置为 `false`。
|
|
- 最后把 `m_scene` 清空。
|
|
|
|
## 副作用
|
|
|
|
`ScriptEngine` 当前会在 `OnRuntimeStop()` 中触发脚本的 `OnDisable`、`OnDestroy`、实例销毁和运行时停止回调,因此这个接口不只是“停更”,而是真正结束脚本运行态。
|
|
|
|
## 相关文档
|
|
|
|
- [SceneRuntime](SceneRuntime.md)
|
|
- [ScriptEngine::OnRuntimeStop](../../Scripting/ScriptEngine/OnRuntimeStop.md)
|