8.8 KiB
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-01M3-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-03M3-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-06M3-07
建议 owner
- 编辑器与工作流
验收标准
- 用户可以不用手改文件创建和组织 UI
- UI 编辑器保存并重开后状态一致
M3-09 UI 运行时渲染第一版
背景
UI 如果只能在编辑器中编辑,不能在 Player 中显示,应用链路仍然不完整。
目标
实现 Player 中的基础 UI 显示能力。
交付结果
- UI 资源加载到 Player
- 基础控件显示
- 基础分辨率适配
依赖
M3-07M3-08
建议 owner
- 渲染与资源表现
- 引擎核心配合
验收标准
- Player 能显示基础 UI
- 不同窗口尺寸下 UI 至少保持可用
M3-10 UI 与项目/Scene 引用关系
背景
UI 需要成为项目与场景的一部分,而不是孤立文档。
目标
定义 UI 资源与项目、Scene、运行时之间的引用关系。
交付结果
- 项目默认 UI 或启动 UI 规则
- Scene 或项目引用 UI 资源的规则
- 保存和重开时 UI 引用稳定
依赖
M3-06M3-09
建议 owner
- 引擎核心
验收标准
- 项目或 Scene 可以稳定引用 UI 资源
- Player 启动时可加载默认 UI
M3-11 Prefab / UI 资源进入构建链
背景
Prefab 和 UI 如果不进入正式构建链,M4 之前就会积累隐患。
目标
让 Prefab 和 UI 资源成为正式构建输入。
交付结果
- Prefab 资源加载/落盘稳定
- UI 资源加载/落盘稳定
- 相关资源能进入后续打包链
依赖
M3-03M3-06M3-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-01Prefab 资源模型正式化M3-02从对象树创建 PrefabM3-03Prefab 实例化工作流M3-04Prefab Apply / Revert 第一版M3-06UiDocument 正式资源化M3-07UI 节点模型与基础控件M3-09UI 运行时渲染第一版M3-10UI 与项目/Scene 引用关系
P1
M3-05Prefab 编辑器表达M3-08UI 编辑器第一版M3-11Prefab / UI 资源进入构建链
P2
M3-12M3 回归测试矩阵
说明:
M3-12依赖前面链路收敛,不代表不重要- 一旦 P0/P1 基本成立,应立刻补齐回归矩阵
推荐执行顺序
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:M3Workstream: 引擎核心 / 编辑器与工作流 / 渲染与资源表现 / 工具链与构建发布 / 测试与验收Priority:P0/P1/P2OwnerDepends OnDefinition of DoneValidation
结论
M3 的本质不是单点增加 Prefab 或 UI,而是建立两条对应用制作非常关键的能力链:
- 内容复用链
- 界面制作链
只有这两条链成立,MetaCore 才开始从“能搭场景”进一步变成“能做应用”的引擎工具。