chore(task): archive 08-25-rc-p3-render-separation
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
# P3 Debug Probe Evidence
|
||||
|
||||
Date: 2026-08-26
|
||||
|
||||
A temporary, uncommitted compiler registry entry declared `debug_probe` as a
|
||||
`marking` layer using the existing `road_surface` material slot. Its generated
|
||||
GeoJSON reused the compiled road-surface collection only for this wiring test.
|
||||
No host source was changed.
|
||||
|
||||
The compiler emitted 13 declared sources. Blender then generated
|
||||
`/private/tmp/p3-debug-probe.blend`; `SCENE_DONE` reported
|
||||
`"debug_probe": 30`. The Blender scene digest contains:
|
||||
|
||||
```json
|
||||
{"name":"Road_debug_probe","vertices":274,"polygons":30}
|
||||
```
|
||||
|
||||
The temporary registry entry was removed immediately after the proof. The
|
||||
standard v0.2.0 compiler was then rerun to restore the normal 12-source output.
|
||||
@@ -0,0 +1,34 @@
|
||||
# Native Road 图层消费矩阵
|
||||
|
||||
调研日期:2026-08-25
|
||||
|
||||
## 证据
|
||||
|
||||
- 编译器在 `scripts/compile-native-roads.js:57,65-76` 声明并写出 12 个图层。
|
||||
- Blender 在 `blender/generate_scene.py:796-834` 遍历
|
||||
`catalog.NATIVE_ROAD_LAYERS`,只消费其中 10 个图层。
|
||||
- 当前映射及基础高度来自 `blender/osmassets/catalog.py:53-64` 与 `ROAD_LAYERS`。
|
||||
|
||||
## 当前消费与 manifest 目标
|
||||
|
||||
| 编译器 source | 当前 Blender 行为 | 当前材质槽 / z 来源 | manifest 目标 |
|
||||
|---|---|---|---|
|
||||
| `road_surface` | 直接渲染 | `road_surface` / `ROAD_LAYERS.road_surface` | `role: surface`, `materialLayer: road_surface` |
|
||||
| `edge_lines` | 直接渲染 | `lane_separators` / `ROAD_LAYERS.lane_separators` | `role: marking`, `materialLayer: lane_separators` |
|
||||
| `intersection_surface` | 直接渲染 | `intersection_surface` / `ROAD_LAYERS.intersection_surface` | `role: surface`, `materialLayer: intersection_surface` |
|
||||
| `sidewalk_surface` | 直接渲染 | `sidewalks` / `ROAD_LAYERS.sidewalks` | `role: surface`, `materialLayer: sidewalks` |
|
||||
| `lane_separators` | 按 `color` 分流 | 非 yellow: `lane_separators`; yellow: `native_lane_separator_yellow`; z 取 `lane_separators` | `role: marking`, `materialLayer: lane_separators`, `splitBy.color`(yellow 特例) |
|
||||
| `center_lines` | 按 `color` 分流 | 非 white: `center_lines`; white: `native_center_line_white`; z 取 `center_lines` | `role: marking`, `materialLayer: center_lines`, `splitBy.color`(white 特例) |
|
||||
| `direction_arrows` | 直接渲染 | `lane_arrows_webscale` / `ROAD_LAYERS.lane_arrows_webscale` | `role: marking`, `materialLayer: lane_arrows_webscale` |
|
||||
| `turn_arrows` | 直接渲染 | `lane_arrows_webscale` / `ROAD_LAYERS.lane_arrows_webscale` | `role: marking`, `materialLayer: lane_arrows_webscale` |
|
||||
| `crosswalks` | 直接渲染 | `crosswalks` / `ROAD_LAYERS.crosswalks` | `role: marking`, `materialLayer: crosswalks` |
|
||||
| `vehicle_stop_lines` | 直接渲染 | `vehicle_stop_lines` / `ROAD_LAYERS.vehicle_stop_lines` | `role: marking`, `materialLayer: vehicle_stop_lines` |
|
||||
| `lane_centerlines` | 不进入 Blender 遍历 | 无 | `role: semantic`,Blender 跳过 |
|
||||
| `connectors` | 不进入 Blender 遍历 | 无 | `role: semantic`,Blender 跳过 |
|
||||
|
||||
## 结论与实施约束
|
||||
|
||||
- manifest 必须声明全部 12 个编译器图层,不能再用“未出现在列表中”表达不渲染。
|
||||
- `role: semantic` 的两个图层不得读取 GeoJSON 或创建 Blender 几何。
|
||||
- `splitBy` 至少需表达属性 `color` 的精确匹配与默认分支,且分流后沿用同一个基础材质槽的 z 值。
|
||||
- Blender 消费 manifest 时,未知 `materialLayer`、缺失 source 文件、或 source 未在 manifest 声明都必须报错;不能静默跳过。
|
||||
Reference in New Issue
Block a user