# MetaCore M3 Backlog 生成时间:2026-04-04 状态:草案 范围:M3 Prefab 与 UI 基础 读者:架构、引擎、编辑器、渲染、工具链、测试 ## 目的 这份文档把 M3 从“里程碑目标”进一步下钻为“可以直接开卡的 backlog”。 M3 的核心不是单独做 Prefab 或单独做 UI,而是建立两条新的应用制作链: - 可复用对象模板链 - 基础应用界面链 也就是: **场景中的内容不再只能手工复制维护,应用界面不再只能靠硬编码或占位逻辑。** ## M3 成功定义 M3 完成时,MetaCore 至少应满足: - 用户可以从对象树创建 Prefab,并实例化到 Scene - Prefab 的基础 Apply / Revert 成立 - UI 文档成为正式资源 - 用户可以创建和编辑基础 UI - Player 可以显示基础 UI - Scene / 项目可以稳定引用 Prefab 和 UI 资源 --- ## M3-01 Prefab 资源模型正式化 ### 背景 Prefab 相关结构已出现,但需要从“接口和测试存在”推进到“正式资源模型成立”。 ### 目标 定义 Prefab 资源的正式数据模型和持久化边界。 ### 交付结果 - Prefab 资源数据结构 - Prefab 与 Scene 实例关系定义 - Prefab 根对象和子树承载规则 - Prefab 元数据正式化 ### 依赖 - M2 完成 ### 建议 owner - 引擎核心 ### 验收标准 - Prefab 成为正式资源,而非临时编辑器结构 - Prefab 与 Scene 实例关系可序列化、可恢复 --- ## M3-02 从对象树创建 Prefab ### 背景 如果不能从现有 Scene 内容提取 Prefab,复用工作流无法开始。 ### 目标 建立从对象树创建 Prefab 的工作流。 ### 交付结果 - 从选中对象树创建 Prefab 的入口 - Prefab 资源生成 - Scene 对象与 Prefab 关系建立 ### 依赖 - `M3-01` ### 建议 owner - 编辑器与工作流 - 引擎核心配合 ### 验收标准 - 用户可以从一棵对象树创建 Prefab - 生成后的 Prefab 可在 Project 面板中看到 - Scene 中原对象关系明确 --- ## M3-03 Prefab 实例化工作流 ### 背景 Prefab 只有资源,没有实例化,就没有复用价值。 ### 目标 支持从 Prefab 资源创建 Scene 实例。 ### 交付结果 - 从 Project 面板实例化 Prefab - Prefab 实例对象树生成 - 实例与 Prefab 来源关系建立 ### 依赖 - `M3-01` - `M3-02` ### 建议 owner - 编辑器与工作流 - 引擎核心配合 ### 验收标准 - 用户可以把 Prefab 放入场景 - 多次实例化结果稳定 - 保存重开后实例仍可识别其 Prefab 来源 --- ## M3-04 Prefab Apply / Revert 第一版 ### 背景 如果实例改动无法回收或回写,Prefab 只是复制模板,不是真复用系统。 ### 目标 建立 Prefab 的基础 Apply / Revert 语义。 ### 交付结果 - 实例修改记录的最小模型 - Apply 第一版 - Revert 第一版 - 基础冲突和不可回写情况的处理规则 ### 依赖 - `M3-03` ### 建议 owner - 引擎核心 - 编辑器与工作流配合 ### 验收标准 - 用户可以对实例做基础修改并应用回 Prefab - 用户可以将实例恢复到 Prefab 基线 - 保存重开后 Prefab 关系和基础修改状态不丢失 --- ## M3-05 Prefab 编辑器表达 ### 背景 Prefab 需要在编辑器里被明确识别和管理。 ### 目标 补齐 Project / Inspector / Scene 中的 Prefab 表达。 ### 交付结果 - Project 面板识别 Prefab - Inspector 显示 Prefab 来源和状态 - Scene 中实例操作规则清晰 ### 依赖 - `M3-03` - `M3-04` ### 建议 owner - 编辑器与工作流 ### 验收标准 - 用户能一眼识别哪些对象是 Prefab 实例 - 用户能看到 Prefab 来源和基本操作入口 --- ## M3-06 UiDocument 正式资源化 ### 背景 当前 UI 更偏资源结构和测试原型,需推进到正式项目资源。 ### 目标 把 UiDocument 做成正式一等资源。 ### 交付结果 - UiDocument 资源结构收敛 - UI 资源保存/加载规则 - Project 面板识别 UI 资源 ### 依赖 - M2 完成 ### 建议 owner - 引擎核心 - 编辑器与工作流配合 ### 验收标准 - UI 文档成为正式资源,可在项目中创建和打开 - 保存和重开行为稳定 --- ## M3-07 UI 节点模型与基础控件 ### 背景 没有正式节点模型和最小控件集,就谈不上 UI 工作流。 ### 目标 收敛基础 UI 节点模型与控件集合。 ### 交付结果 - Panel - Text - Image - Button - UI 节点层级关系 - 基础属性集 ### 依赖 - `M3-06` ### 建议 owner - 引擎核心 - 编辑器与工作流 ### 验收标准 - 用户可以创建上述基础 UI 节点 - 节点层级与属性可被稳定保存和恢复 --- ## M3-08 UI 编辑器第一版 ### 背景 只有数据结构,没有编辑器,就还不能算可用 UI 系统。 ### 目标 做出 UI 编辑器第一版。 ### 交付结果 - UI 层级树 - UI Inspector - 创建节点 - 删除节点 - 调整基础布局与属性 ### 依赖 - `M3-06` - `M3-07` ### 建议 owner - 编辑器与工作流 ### 验收标准 - 用户可以不用手改文件创建和组织 UI - UI 编辑器保存并重开后状态一致 --- ## M3-09 UI 运行时渲染第一版 ### 背景 UI 如果只能在编辑器中编辑,不能在 Player 中显示,应用链路仍然不完整。 ### 目标 实现 Player 中的基础 UI 显示能力。 ### 交付结果 - UI 资源加载到 Player - 基础控件显示 - 基础分辨率适配 ### 依赖 - `M3-07` - `M3-08` ### 建议 owner - 渲染与资源表现 - 引擎核心配合 ### 验收标准 - Player 能显示基础 UI - 不同窗口尺寸下 UI 至少保持可用 --- ## M3-10 UI 与项目/Scene 引用关系 ### 背景 UI 需要成为项目与场景的一部分,而不是孤立文档。 ### 目标 定义 UI 资源与项目、Scene、运行时之间的引用关系。 ### 交付结果 - 项目默认 UI 或启动 UI 规则 - Scene 或项目引用 UI 资源的规则 - 保存和重开时 UI 引用稳定 ### 依赖 - `M3-06` - `M3-09` ### 建议 owner - 引擎核心 ### 验收标准 - 项目或 Scene 可以稳定引用 UI 资源 - Player 启动时可加载默认 UI --- ## M3-11 Prefab / UI 资源进入构建链 ### 背景 Prefab 和 UI 如果不进入正式构建链,M4 之前就会积累隐患。 ### 目标 让 Prefab 和 UI 资源成为正式构建输入。 ### 交付结果 - Prefab 资源加载/落盘稳定 - UI 资源加载/落盘稳定 - 相关资源能进入后续打包链 ### 依赖 - `M3-03` - `M3-06` - `M3-09` ### 建议 owner - 工具链与构建发布 - 引擎核心配合 ### 验收标准 - Prefab 和 UI 资源在编辑器和运行时之间语义一致 - 后续打包链可以把它们当作正式输入 --- ## M3-12 M3 回归测试矩阵 ### 背景 Prefab 和 UI 都横跨资源、编辑器、运行时,没有测试会很快回归。 ### 目标 建立 M3 的最小稳定验收矩阵。 ### 交付结果 - Prefab 创建测试 - Prefab 实例化测试 - Prefab Apply / Revert 测试 - UI 文档保存/重开测试 - Player UI 显示测试 - 样板项目回归 ### 依赖 - `M3-01` 到 `M3-11` ### 建议 owner - 测试与验收 - 各模块 owner 联合 ### 验收标准 - M3 主链均有回归覆盖 - 样板项目可以稳定验证 Prefab 和 UI 链路 --- ## 建议优先级 ### P0 - `M3-01` Prefab 资源模型正式化 - `M3-02` 从对象树创建 Prefab - `M3-03` Prefab 实例化工作流 - `M3-04` Prefab Apply / Revert 第一版 - `M3-06` UiDocument 正式资源化 - `M3-07` UI 节点模型与基础控件 - `M3-09` UI 运行时渲染第一版 - `M3-10` UI 与项目/Scene 引用关系 ### P1 - `M3-05` Prefab 编辑器表达 - `M3-08` UI 编辑器第一版 - `M3-11` Prefab / UI 资源进入构建链 ### P2 - `M3-12` M3 回归测试矩阵 说明: - `M3-12` 依赖前面链路收敛,不代表不重要 - 一旦 P0/P1 基本成立,应立刻补齐回归矩阵 ## 推荐执行顺序 ```text M3-01 -> M3-02 -> M3-03 -> M3-04 -> M3-05 -> M3-06 -> M3-07 -> M3-08 -> M3-09 -> M3-10 -> M3-11 -> M3-12 ``` Prefab 与 UI 两条线可以部分并行: - Prefab 主线:`M3-01 -> M3-05` - UI 主线:`M3-06 -> M3-10` 但在 M3 结束前,应通过 `M3-11` 汇合到统一构建链中。 ## 建议任务卡字段 后续如果转到看板,建议每个任务卡都带上: - `Milestone`: `M3` - `Workstream`: 引擎核心 / 编辑器与工作流 / 渲染与资源表现 / 工具链与构建发布 / 测试与验收 - `Priority`: `P0/P1/P2` - `Owner` - `Depends On` - `Definition of Done` - `Validation` ## 结论 M3 的本质不是单点增加 Prefab 或 UI,而是建立两条对应用制作非常关键的能力链: - 内容复用链 - 界面制作链 只有这两条链成立,MetaCore 才开始从“能搭场景”进一步变成“能做应用”的引擎工具。