Add Chromium-only Blender WebEngine parity work

This commit is contained in:
mes123456
2026-08-12 04:47:48 -04:00
commit 9fd26010f6
18225 changed files with 11622124 additions and 0 deletions

29
docs/status/W-034.md Normal file
View File

@@ -0,0 +1,29 @@
# W-034 Status
status: done_current_scope
task: 导出材质、贴图和颜色
## Implemented
The SceneIR contract includes Principled-compatible base color, roughness,
metallic, emission, alpha and IOR fields. The native reader walks embedded
Principled node inputs, collects Image Texture IDs, and emits warnings for
linked inputs or unsupported nodes. Blender Image datablocks export stable
asset IDs, MIME guesses, generated dimensions and the original (possibly
`//`-relative) source path without embedding base64 pixels. The EngineWorker
exposes a local `requestAsset` metadata path for external and
packed-unavailable assets. The Three adapter applies the exported material
color, metalness, roughness, emission and alpha to local materials.
## Accepted bounded scope
Material slots can be created, removed and assigned to selected faces through
Blender Main. The Web authoring surface writes Principled values and creates a
limited `Principled -> Output`, `Image Texture`, `Normal Map` and `UV Map` graph.
PNG/JPEG imports become packed Blender Image datablocks without allocating a
headless ImBuf, and active UV-map/planar/cube unwrap operations round-trip.
Packed bytes remain available through the asset API and are covered by the
UDIM/generated/linked/corrupt resource matrix.
Arbitrary node graphs and renderer-specific shader execution are deliberately
outside this bounded contract; unsupported nodes are reported by SceneIR.