Add Chromium-only Blender WebEngine parity work
This commit is contained in:
26
docs/status/W-037.md
Normal file
26
docs/status/W-037.md
Normal file
@@ -0,0 +1,26 @@
|
||||
# W-037 Status
|
||||
|
||||
status: done_current_scope
|
||||
task: 实现场景完整快照
|
||||
|
||||
## Implemented
|
||||
|
||||
`get_scene_snapshot` remains a validated JSON compatibility ABI, including
|
||||
bounded positions/index/normals and optional
|
||||
UV/color/material-slot arrays for available meshes. The Worker validates that
|
||||
fallback snapshot, packs the geometry into little-endian `Float32Array`/`Uint32Array`
|
||||
buffers, strips the large arrays from the browser snapshot, and transfers the
|
||||
buffers to React/Three.js. Browser parsing is centralized in
|
||||
`parseSceneSnapshotIR` and failures become stable worker error reports. The
|
||||
envelope and chunk rules are documented in `docs/web/mesh-buffer-layout.md`.
|
||||
|
||||
## Accepted bounded scope
|
||||
|
||||
The preferred native WBG1 metadata/geometry ABI now emits positions, indices,
|
||||
corner attributes, material/face/edge indices, tangents and split normals as
|
||||
tightly packed little-endian buffers. The Worker validates lengths/bounds and
|
||||
keeps large arrays out of React state. Per-mesh envelopes, Worker processing,
|
||||
Three.js frustum culling, linked-data `InstancedMesh` groups and LOD cover the
|
||||
current large-scene contract. `?offscreen=1` capability-gates real canvas/WebGL
|
||||
ownership in a render Worker with orbit, selection and nonblank-pixel E2E;
|
||||
unsupported browsers retain the main-thread renderer.
|
||||
Reference in New Issue
Block a user