Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

3.8 KiB

场景编辑器源码基线

本清单是本轮开始时的静态审查,尚不构成测试通过。完整逐项矩阵见 119 项功能清单,源码行号由报告工具按当前符号重新定位。

实际执行路径

router/index.ts/content/scenes/:id/edit 挂载 LegacyScenePageView.vue;宿主加载当前项目、已发布模型目录和受控资产,挂载 scene-legacy/runtime.ts,最终执行 guide-legacy/demo-src/scene-editor.jsSceneEditorView.vueSceneEditorWorkspace.vue 为保留但未挂载的正式实现。

顶部可达:返回、当前项目说明、新建、导入工程、保存草稿、导出 JSON、撤销、重做、移动、旋转、缩放、0.5m 吸附、校验、运行预览、发布。返回列表保留场景标签缓存,等同普通切页;真正关闭标签才执行未保存确认。快捷键覆盖 W/E/R、Delete、Ctrl/Meta+S/Z/Y。左侧为场景大纲、资源库、模板,搜索共用输入框。视口有透视、顶视图、聚焦选中、网格,真实车库另有完整/透视/隐藏围护模式。

资源库包含 API 已发布模型,8 种基础资源,以及真实装备车库和真实野外地形两种整体场地。模板共 9 个,各自需要独立验证环境、模板选中标签、种子对象及保存重开;不能只验证一个模板后将其余标为通过。

属性区包含名称、可见、可操作、位置、旋转、缩放、设备编号、物模型和语义类型。已发布模型的部件选中、受限变换、隐藏和软删除需遵守源部件能力,实例删除不能删除来源资产。底部为对象列表、设备绑定、发布检查、操作日志。

数据与权限边界

宿主 API 控制工程内容、版本、封面和发布。保存截图为 JPEG,最长边 640,捕获后恢复辅助对象与材质;上传和主文档保存必须属于同次受控保存。截图失败允许保留旧封面并真实告警,409 必须阻断。

来源模型序列化包含 targetProjectId、targetVersionId、sourceAssetId、assetCode、modelEditorAssetId 和受控 resourceUrl。场景自行上传资源使用 content://asset/scene/{projectId}/{assetCode};来源模型可使用 content://asset/model/{projectId}/{versionId}/{assetId}。临时 blob 仅供运行,不能作为可交付持久引用。

恢复稿、跨会话租约、同版本恢复提示、陈旧版本隔离、离开前保存、角色切换和后台标签缓存都是必须单独验证的闭环。部分缓存动作只暂停 RAF 不代表键盘监听已经失活,需实际切换标签测试。

基线风险(等待修复和证据)

  • runtime 仍检查旧 content.update,可能与宿主细分权限不一致。
  • 透视按钮有标记但基线处理路径缺失;预览不能仅改变样式后仍允许快捷键写入。
  • 新建在基线中重置当前 ID;应由宿主真实创建新工程并执行未存确认。
  • JSON 缺失资源恢复和异步撤销需要原子回滚,避免半替换内容或错误历史索引。
  • 显式错误 assetCode 不能回退到首个 READY 模型资产。
  • 底部基线日志固定三行,设备绑定状态固定文本;需要避免误导为真实操作记录或已校验绑定。
  • 包含相机/灯光/雾的工程字段需要往返,当前没有 UI 的编辑器不应假装已做 UI 验证。

明确边界

运行预览主要用于当前三维场景检查。基线渲染循环没有自动执行来源模型时间轴、蓝图的机制。这个大范围运行合同与前轮模型报告的待确认项一致,不能以场景静态可见宣称动作流程已在下游运行。

当前树头是展示行,没有可折叠控件的基线证据;若本轮修复增加折叠,需要补真实 UI 证据和矩阵记录,不能通过程序直接隐藏 DOM 充当折叠测试。