54 lines
3.4 KiB
Markdown
54 lines
3.4 KiB
Markdown
# 拆分 LowPoly Cars 车辆资产
|
||
|
||
## Goal
|
||
|
||
将用户下载的 `011.+LowPoly_Cars_01_blend.blend` 拆分为可独立检查、可被后续
|
||
Cesium 车辆预览复用的低模车辆资产库;沿用 Shapespark 植物包的资产目录、清单与
|
||
浏览器预览体验。
|
||
|
||
## Confirmed Facts
|
||
|
||
- 源文件位于 `/Users/que01/Downloads/011.+LowPoly_Cars_01_blend.blend`,为 Blender
|
||
3.0、64 位小端格式,约 25 MB;不应直接作为仓库产物引用。
|
||
- 当前 Blender 4.5.12 LTS 在沙箱中加载会崩溃;在沙箱外可稳定读取,故拆分和渲染应通过
|
||
沙箱外 Blender 调用完成。
|
||
- 源文件有 12 个可导出 Empty 根节点:5 个普通车条目(其中 `car_a01`、`car_a02` 各有两份
|
||
同名变体)、4 个卡车、3 个拖拉机;每项由 11 到 19 个 mesh 组成。
|
||
- 根节点保存了展示排布用的 `0.001` 缩放与 90°/180°旋转。拆分必须应用这些层级变换,统一
|
||
比例、地面基线和车辆前进轴,不能将源文件世界坐标原样导出。
|
||
- 主体使用共享 `carmaterial`(含 base-color 图和 normal map),拆分后应共用贴图,不复制到
|
||
每一个车辆目录。
|
||
- 植物包位于 `assets/models/custom/shapespark_plants/`:每个资产拥有
|
||
`model.gltf`、`model.bin`、`preview.png`,共享贴图放 `textures/`,并以
|
||
`manifest.json` 和 `index.html` 提供机器与人工检查入口。
|
||
- 已完成的车辆连续路线系统读取预览车辆 glTF;新资产库在验收前不得破坏该默认车辆或
|
||
现有路线播放。
|
||
|
||
## Requirements
|
||
|
||
1. 稳定读取源 `.blend`,记录其集合、对象、材质、几何指标、坐标朝向和许可/来源信息。
|
||
2. 按可独立使用的车辆变体拆分为 glTF 资产,保留正确比例、轮胎落地基线、前进朝向与
|
||
原始材质语义;共享贴图不得为每辆车重复复制。
|
||
3. 在 `assets/models/custom/` 下创建与植物包一致的清晰目录、JSON manifest 与简洁的
|
||
HTML 图库预览;每辆车显示缩略图、三角面数、尺寸与材质信息。
|
||
4. 预览页必须可通过本地 HTTP 查看,不依赖主场景或 QGIS;缩略图应能帮助比较车款、颜色
|
||
和比例。
|
||
5. 新库经过 Blender/glTF 结构检查;从普通车中固定选 3 个、从卡车中选前 3 个组成候选集,
|
||
Cesium 每次打开预览时从该 6 个模型随机选一辆作为巡航车辆。
|
||
|
||
## Acceptance Criteria
|
||
|
||
- [ ] 能稳定枚举源文件内的可导出车辆,并把每个产物与源对象/集合对应起来。
|
||
- [ ] 每个可用车辆有独立 `model.gltf`/二进制数据、预览图与 manifest 条目;预览图和 HTML
|
||
能正确加载。
|
||
- [ ] manifest 为每项记录稳定 ID、名称、来源、几何指标、尺寸、材质和相对路径。
|
||
- [ ] 人工查看图库可比较全部导出的车辆;没有重复贴图、明显错误的坐标轴或悬空/埋地车轮。
|
||
- [ ] 现有目标区域的 Cesium 巡航预览仍可生成和播放。
|
||
- [ ] 目标区域预览目录包含选定的 6 个车辆模型与一张共享贴图;页面刷新会从候选集随机选车。
|
||
|
||
## Out of Scope
|
||
|
||
- 不在本任务中制作车辆动画、转向轮、交通行为、LOD 或性能压缩策略。
|
||
- 不修改 QGIS 工程、道路生成或上一轮已经确认的车辆连续路线逻辑。
|
||
- 不引入车辆动画、逐车随机分配、性能压缩或车辆选择控件;本轮只在页面加载时随机确定一种车。
|