607 lines
11 KiB
Markdown
607 lines
11 KiB
Markdown
# MetaCore M2 Backlog
|
||
|
||
生成时间:2026-04-04
|
||
状态:草案
|
||
范围:M2 模型、材质、场景制作闭环
|
||
读者:架构、引擎、编辑器、渲染、工具链、测试
|
||
|
||
## 目的
|
||
|
||
这份文档把 M2 从“里程碑目标”进一步下钻为“可以直接开卡的 backlog”。
|
||
|
||
M2 的核心不是多支持几种格式,而是把这条主链打通:
|
||
|
||
**导入模型 -> 生成正式资源 -> 放入场景 -> 编辑变换/材质/灯光 -> 保存并重开。**
|
||
|
||
建议后续围绕本文件直接拆 issue 或任务卡。
|
||
|
||
## M2 成功定义
|
||
|
||
M2 完成时,MetaCore 至少应满足:
|
||
|
||
- 用户可以导入第一种正式支持的模型格式
|
||
- 模型导入后生成可追踪的正式资产
|
||
- 模型资产可以进入场景
|
||
- 用户可以编辑 Transform、材质和灯光
|
||
- Scene 保存并重开后资源引用稳定
|
||
- 重导入后尽量不打断核心引用
|
||
|
||
---
|
||
|
||
## M2-01 首批模型导入策略定型
|
||
|
||
### 背景
|
||
|
||
如果格式支持口径不明确,后续数据结构、测试和编辑器工作流都会摇摆。
|
||
|
||
### 目标
|
||
|
||
明确第一阶段首批正式支持的模型格式和优先级。
|
||
|
||
### 交付结果
|
||
|
||
- 正式支持格式清单
|
||
- “识别格式”和“生产支持格式”的定义
|
||
- 第一阶段导入器边界说明
|
||
|
||
### 依赖
|
||
|
||
- M1 完成
|
||
|
||
### 建议 owner
|
||
|
||
- 架构
|
||
- 工具链与构建发布
|
||
|
||
### 验收标准
|
||
|
||
- 文档和代码里对模型格式支持口径一致
|
||
- `glTF/.glb` 明确为第一正式支持格式
|
||
|
||
---
|
||
|
||
## M2-02 模型资产数据模型
|
||
|
||
### 背景
|
||
|
||
模型不能只以源文件形式存在,必须成为一等资源。
|
||
|
||
### 目标
|
||
|
||
定义模型资产、源文件、导入产物、Scene 引用之间的正式关系。
|
||
|
||
### 交付结果
|
||
|
||
- 模型资产数据结构
|
||
- 模型与 Mesh / Material / Texture 产物关系
|
||
- 模型节点层级承载结构
|
||
- Scene 引用模型资产的规则
|
||
|
||
### 依赖
|
||
|
||
- `M2-01`
|
||
|
||
### 建议 owner
|
||
|
||
- 引擎核心
|
||
|
||
### 验收标准
|
||
|
||
- 模型导入后有稳定的资产身份
|
||
- Scene 对模型的引用不依赖原始文件路径
|
||
|
||
---
|
||
|
||
## M2-03 `glTF/.glb` 导入器第一版
|
||
|
||
### 背景
|
||
|
||
M2 必须把至少一种格式做成正式生产链,而不只是识别扩展名。
|
||
|
||
### 目标
|
||
|
||
实现第一版 `glTF/.glb` 导入器,跑通最小闭环。
|
||
|
||
### 交付结果
|
||
|
||
- `glTF/.glb` 文件导入
|
||
- 模型资产记录生成
|
||
- 对应资源 package 生成
|
||
- 导入结果写入 Asset Database
|
||
|
||
### 依赖
|
||
|
||
- `M2-01`
|
||
- `M2-02`
|
||
|
||
### 建议 owner
|
||
|
||
- 工具链与构建发布
|
||
- 渲染与资源表现配合
|
||
|
||
### 验收标准
|
||
|
||
- 至少一个 `glTF/.glb` 样例可成功导入
|
||
- 导入结果在 Project 面板可见
|
||
- 导入失败时不会静默
|
||
|
||
---
|
||
|
||
## M2-04 Mesh / Material / Texture 导入产物落地
|
||
|
||
### 背景
|
||
|
||
模型导入如果没有正式产物类型,后续材质和渲染工作流无法收敛。
|
||
|
||
### 目标
|
||
|
||
把 `glTF/.glb` 导入结果映射到正式资源产物。
|
||
|
||
### 交付结果
|
||
|
||
- Mesh 资源产物
|
||
- Material 资源产物
|
||
- Texture 资源产物
|
||
- 资源之间的关联关系
|
||
|
||
### 依赖
|
||
|
||
- `M2-02`
|
||
- `M2-03`
|
||
|
||
### 建议 owner
|
||
|
||
- 引擎核心
|
||
- 渲染与资源表现
|
||
|
||
### 验收标准
|
||
|
||
- 导入模型后可看到 Mesh / Material / Texture 相关正式产物
|
||
- 这些产物可被 Scene 或渲染层消费
|
||
|
||
---
|
||
|
||
## M2-05 导入归一化规则
|
||
|
||
### 背景
|
||
|
||
不处理坐标系、缩放、层级保留,导入器会变成不稳定 demo。
|
||
|
||
### 目标
|
||
|
||
明确并实现第一阶段导入归一化规则。
|
||
|
||
### 交付结果
|
||
|
||
- 坐标系转换规则
|
||
- 缩放归一化规则
|
||
- 层级保留规则
|
||
- 材质槽映射规则
|
||
- 空节点保留策略
|
||
|
||
### 依赖
|
||
|
||
- `M2-03`
|
||
|
||
### 建议 owner
|
||
|
||
- 工具链与构建发布
|
||
- 渲染与资源表现
|
||
|
||
### 验收标准
|
||
|
||
- 导入后的模型方向和缩放基本正确
|
||
- 层级结构与源模型基本一致
|
||
- 多材质槽映射可用
|
||
|
||
---
|
||
|
||
## M2-06 Project 面板模型资源增强
|
||
|
||
### 背景
|
||
|
||
模型导入成功但用户在资源视图里看不清楚,工作流仍然不完整。
|
||
|
||
### 目标
|
||
|
||
增强 Project 面板对模型和导入产物的识别与展示。
|
||
|
||
### 交付结果
|
||
|
||
- 模型资源类型显示
|
||
- Mesh / Material / Texture 基础区分
|
||
- 模型资产定位能力
|
||
- 后续拖入场景的入口预留
|
||
|
||
### 依赖
|
||
|
||
- `M2-03`
|
||
- `M2-04`
|
||
|
||
### 建议 owner
|
||
|
||
- 编辑器与工作流
|
||
|
||
### 验收标准
|
||
|
||
- 用户能在 Project 面板中区分模型资源及其相关产物
|
||
- 导入模型后可快速定位到它
|
||
|
||
---
|
||
|
||
## M2-07 模型资源实例化到场景
|
||
|
||
### 背景
|
||
|
||
导入资源不能进入场景,就还没有真正进入内容制作闭环。
|
||
|
||
### 目标
|
||
|
||
支持模型资源实例化到 Scene。
|
||
|
||
### 交付结果
|
||
|
||
- 从资源到场景的实例化入口
|
||
- 模型实例对应的对象树生成
|
||
- Scene 中模型实例与资源的关联关系
|
||
|
||
### 依赖
|
||
|
||
- `M2-02`
|
||
- `M2-03`
|
||
- `M2-05`
|
||
- `M2-06`
|
||
|
||
### 建议 owner
|
||
|
||
- 编辑器与工作流
|
||
- 引擎核心配合
|
||
|
||
### 验收标准
|
||
|
||
- 用户可以把模型资产放入场景
|
||
- 分层模型进入场景后形成合理对象树
|
||
- Scene 保存后引用仍然稳定
|
||
|
||
---
|
||
|
||
## M2-08 Scene 层级编辑增强
|
||
|
||
### 背景
|
||
|
||
模型入场景后,如果层级操作不顺,制作效率会很差。
|
||
|
||
### 目标
|
||
|
||
增强 Hierarchy 工作流,支撑正式场景制作。
|
||
|
||
### 交付结果
|
||
|
||
- 创建 / 删除 / 复制 / 重命名增强
|
||
- 拖拽重挂接增强
|
||
- 多选与基础批量操作增强
|
||
|
||
### 依赖
|
||
|
||
- `M2-07`
|
||
|
||
### 建议 owner
|
||
|
||
- 编辑器与工作流
|
||
|
||
### 验收标准
|
||
|
||
- 用户可以稳定组织复杂对象树
|
||
- 子树复制和删除行为正确
|
||
- 重挂接后层级行为符合预期
|
||
|
||
---
|
||
|
||
## M2-09 Transform / Gizmo 工作流打磨
|
||
|
||
### 背景
|
||
|
||
正式场景制作离不开稳定的 Transform 工作流。
|
||
|
||
### 目标
|
||
|
||
把 Scene View 和 Inspector 的 Transform 编辑打磨到可用水平。
|
||
|
||
### 交付结果
|
||
|
||
- Move / Rotate / Scale 完整化
|
||
- 聚焦选中对象
|
||
- 基础吸附
|
||
- 局部/世界坐标模式
|
||
|
||
### 依赖
|
||
|
||
- `M2-07`
|
||
|
||
### 建议 owner
|
||
|
||
- 编辑器与工作流
|
||
|
||
### 验收标准
|
||
|
||
- 用户可以高频完成对象摆放
|
||
- Inspector 与 Gizmo 结果一致
|
||
- 保存重开后 Transform 一致
|
||
|
||
---
|
||
|
||
## M2-10 材质资源正式化
|
||
|
||
### 背景
|
||
|
||
如果 `MeshRenderer` 仍然主要依赖内嵌字段,材质系统无法扩展。
|
||
|
||
### 目标
|
||
|
||
把 Material 资源做成第一阶段正式资源。
|
||
|
||
### 交付结果
|
||
|
||
- Material 资源结构
|
||
- 材质资源保存/加载
|
||
- `MeshRenderer` 资源引用语义
|
||
- 基础 PBR 参数
|
||
|
||
### 依赖
|
||
|
||
- `M2-04`
|
||
|
||
### 建议 owner
|
||
|
||
- 引擎核心
|
||
- 渲染与资源表现
|
||
|
||
### 验收标准
|
||
|
||
- Scene 中对象可以引用 Material 资源
|
||
- 材质资源可以保存并在重开后恢复
|
||
- 更换材质资源后渲染结果变化正确
|
||
|
||
---
|
||
|
||
## M2-11 材质 Inspector 与材质指派工作流
|
||
|
||
### 背景
|
||
|
||
材质资源只有数据结构还不够,必须进入编辑器工作流。
|
||
|
||
### 目标
|
||
|
||
支持材质查看、编辑和指派。
|
||
|
||
### 交付结果
|
||
|
||
- 材质 Inspector
|
||
- 材质资源属性编辑
|
||
- 材质指派到对象
|
||
- 后续拖拽指派的扩展入口
|
||
|
||
### 依赖
|
||
|
||
- `M2-10`
|
||
- `M2-06`
|
||
|
||
### 建议 owner
|
||
|
||
- 编辑器与工作流
|
||
- 渲染与资源表现配合
|
||
|
||
### 验收标准
|
||
|
||
- 用户可以修改材质基础参数
|
||
- 用户可以把材质应用到对象
|
||
- 修改后 Editor / Player 表现一致
|
||
|
||
---
|
||
|
||
## M2-12 基础光照工作流
|
||
|
||
### 背景
|
||
|
||
没有基础光照,材质工作流很难形成可判断的视觉结果。
|
||
|
||
### 目标
|
||
|
||
建立第一版稳定的灯光编辑与表现链路。
|
||
|
||
### 交付结果
|
||
|
||
- Directional / Point / Spot Light 基础支持
|
||
- 灯光颜色和强度编辑
|
||
- Editor / Player 一致性基线
|
||
|
||
### 依赖
|
||
|
||
- `M2-10`
|
||
|
||
### 建议 owner
|
||
|
||
- 渲染与资源表现
|
||
- 编辑器与工作流配合
|
||
|
||
### 验收标准
|
||
|
||
- 灯光参数调整结果直观可见
|
||
- 场景在 Editor / Player 中没有明显语义差异
|
||
|
||
---
|
||
|
||
## M2-13 Scene 保存/重开中的资源引用稳定化
|
||
|
||
### 背景
|
||
|
||
M2 的关键不是“显示出来”,而是“保存下来后还能回来”。
|
||
|
||
### 目标
|
||
|
||
让 Scene 中的模型、材质等资源引用能稳定持久化。
|
||
|
||
### 交付结果
|
||
|
||
- Scene 中资源引用持久化规则
|
||
- Scene 加载时资源恢复逻辑
|
||
- 资源缺失时的错误处理
|
||
|
||
### 依赖
|
||
|
||
- `M2-07`
|
||
- `M2-10`
|
||
|
||
### 建议 owner
|
||
|
||
- 引擎核心
|
||
|
||
### 验收标准
|
||
|
||
- Scene 保存并重开后模型和材质都能恢复
|
||
- 缺失资源时有明确日志和降级行为
|
||
|
||
---
|
||
|
||
## M2-14 重导入与引用保持
|
||
|
||
### 背景
|
||
|
||
导入链如果只能“删了重来”,就不算真正可用。
|
||
|
||
### 目标
|
||
|
||
建立第一阶段可接受的重导入与引用保持规则。
|
||
|
||
### 交付结果
|
||
|
||
- 基于源变化的重导入触发
|
||
- 导入后 GUID 稳定策略
|
||
- Scene 引用保持策略
|
||
- 失败时错误与回退规则
|
||
|
||
### 依赖
|
||
|
||
- `M2-03`
|
||
- `M2-04`
|
||
- `M2-13`
|
||
|
||
### 建议 owner
|
||
|
||
- 工具链与构建发布
|
||
- 引擎核心配合
|
||
|
||
### 验收标准
|
||
|
||
- 修改源模型后可重导入
|
||
- Scene 中核心引用尽量不被打断
|
||
- 失败时不会把现有状态悄悄破坏
|
||
|
||
---
|
||
|
||
## M2-15 M2 回归测试矩阵
|
||
|
||
### 背景
|
||
|
||
M2 涉及资源、渲染、编辑器、序列化多个系统,没有测试矩阵很容易回归。
|
||
|
||
### 目标
|
||
|
||
建立 M2 的最小稳定验收矩阵。
|
||
|
||
### 交付结果
|
||
|
||
- 模型导入测试
|
||
- 模型实例化场景测试
|
||
- 材质引用测试
|
||
- 灯光基础测试
|
||
- Scene 保存/重开测试
|
||
- 重导入引用稳定性测试
|
||
- 样板场景回归
|
||
|
||
### 依赖
|
||
|
||
- `M2-01` 到 `M2-14`
|
||
|
||
### 建议 owner
|
||
|
||
- 测试与验收
|
||
- 各模块 owner 联合
|
||
|
||
### 验收标准
|
||
|
||
- M2 主链均有回归覆盖
|
||
- 样板场景可作为固定验收输入
|
||
- 后续改动能快速验证是否破坏内容制作闭环
|
||
|
||
---
|
||
|
||
## 建议优先级
|
||
|
||
### P0
|
||
|
||
- `M2-01` 首批模型导入策略定型
|
||
- `M2-02` 模型资产数据模型
|
||
- `M2-03` `glTF/.glb` 导入器第一版
|
||
- `M2-04` Mesh / Material / Texture 导入产物落地
|
||
- `M2-07` 模型资源实例化到场景
|
||
- `M2-10` 材质资源正式化
|
||
- `M2-13` Scene 保存/重开中的资源引用稳定化
|
||
|
||
### P1
|
||
|
||
- `M2-05` 导入归一化规则
|
||
- `M2-06` Project 面板模型资源增强
|
||
- `M2-08` Scene 层级编辑增强
|
||
- `M2-09` Transform / Gizmo 工作流打磨
|
||
- `M2-11` 材质 Inspector 与材质指派工作流
|
||
- `M2-12` 基础光照工作流
|
||
- `M2-14` 重导入与引用保持
|
||
|
||
### P2
|
||
|
||
- `M2-15` M2 回归测试矩阵
|
||
|
||
说明:
|
||
|
||
- `M2-15` 依赖前面链路稳定,不代表它不重要
|
||
- 一旦 P0/P1 基本落地,应立即补上测试矩阵
|
||
|
||
## 推荐执行顺序
|
||
|
||
```text
|
||
M2-01
|
||
-> M2-02
|
||
-> M2-03
|
||
-> M2-04
|
||
-> M2-05
|
||
-> M2-06
|
||
-> M2-07
|
||
-> M2-08 / M2-09
|
||
-> M2-10
|
||
-> M2-11 / M2-12
|
||
-> M2-13
|
||
-> M2-14
|
||
-> M2-15
|
||
```
|
||
|
||
## 建议任务卡字段
|
||
|
||
后续如果转到看板,建议每个任务卡都带上:
|
||
|
||
- `Milestone`: `M2`
|
||
- `Workstream`: 引擎核心 / 编辑器与工作流 / 渲染与资源表现 / 工具链与构建发布 / 测试与验收
|
||
- `Priority`: `P0/P1/P2`
|
||
- `Owner`
|
||
- `Depends On`
|
||
- `Definition of Done`
|
||
- `Validation`
|
||
|
||
## 结论
|
||
|
||
M2 的本质不是“支持 glTF”,而是把内容制作主链真正建立起来:
|
||
|
||
**资源成为正式资产,资产能够进入场景,场景能够被编辑并稳定保存。**
|
||
|
||
只要这条链没有真正成立,MetaCore 就还没有跨过“原型编辑器”到“可用引擎工具”的关键门槛。
|