Files
XCEngine/docs/api/XCEngine/Scene/Scene.md

2.2 KiB

Scene

命名空间: XCEngine::Components

类型: module

描述: 提供场景容器、多场景管理入口以及场景运行时调度器。

概览

当前 XCEngine/Scene 目录里的 public API 主要分成三层:

  • Scene 负责对象树、场景级更新和场景序列化。
  • SceneManager 负责多场景注册与活动场景入口。
  • SceneRuntime 负责把某个场景真正“跑起来”,并和脚本系统衔接。

这种分层和商业引擎里常见的思路接近:Scene 是数据与对象容器,SceneManager 负责更高层的场景切换,而 SceneRuntime 则承担运行时执行语义。

设计要点

  • Scene 专注对象拥有权、查询和序列化,不直接变成庞大的运行时调度中心。
  • SceneRuntime 把脚本生命周期和场景更新顺序集中管理,避免脚本系统散落到 Scene 内部。
  • SceneManager 让多场景入口和单个场景数据模型解耦,便于以后扩展更复杂的场景切换策略。

当前实现边界

  • 当前公开类型都位于 XCEngine::Components 命名空间,而不是单独的 XCEngine::Scene 命名空间,这反映了引擎当前建模历史。
  • SceneRuntime 目前只管理单个运行中的场景。
  • SceneManager::LoadSceneAsync() 仍是同步包装,不是完整异步加载系统。
  • 场景序列化使用引擎私有文本格式,强调可落地而不是通用交换格式。

头文件

相关指南

相关文档