Release 3D Tools 0.2.0
Verify / verify (push) Canceled after 0s

This commit is contained in:
2026-09-02 09:56:02 +02:00
parent b20c67c890
commit f838480278
31 changed files with 1347 additions and 145 deletions
+14 -5
View File
@@ -6,21 +6,30 @@ Inspect, preview, repair and export triangle meshes locally in the browser. File
- Real bounded parsers for Wavefront OBJ, binary/ASCII STL, ASCII/binary little-endian PLY and glTF 2/GLB 2.
- Inert embedded glTF buffers only; external buffers, textures, scripts and OBJ material libraries are never fetched.
- Correct selected-scene hierarchy, matrix/TRS transform and mesh-instancing
flattening, including normal matrices and mirrored winding.
- Metallic/roughness material inspection covers base colour, emissive factor,
alpha, sidedness and declared texture slots without decoding texture content.
- Worker-based parsing with progress, cancellation and stale-result suppression.
- Mesh, material, scene-node, bound, surface-area and degenerate-triangle statistics.
- Responsive drag-to-rotate WebGL preview capped independently from full-file analysis.
- Area-weighted normal repair and finite translation, rotation and uniform-scale baking.
- Deterministic normalized OBJ and binary STL exports with explicit format-loss notes.
- Area-weighted normal repair, degenerate-triangle removal and finite translation,
rotation, uniform and per-axis scale baking.
- Deterministic normalized OBJ, binary STL and bounded ASCII PLY exports with
explicit format-loss notes.
- Offline PWA and shared Toolbox system/light/dark shell.
## Supported subset and limits
Input is capped at 32 MiB, one million vertices, one million triangles, 10,000 glTF scene nodes, JSON depth 64 and 100,000 JSON nodes. OBJ polygons and PLY faces are fan-triangulated. PLY supports version-1.0 ASCII and binary little-endian scalar/list properties. glTF supports embedded buffers, FLOAT POSITION/NORMAL accessors, unsigned indices and TRIANGLES primitives. Sparse accessors, animations, skins, textures, Draco/Meshopt and external resources are not decoded in v0.1.0.
Input is capped at 32 MiB, one million vertices, one million triangles, 10,000 glTF scene nodes, JSON depth 64 and 100,000 JSON nodes. OBJ polygons and PLY faces are fan-triangulated. PLY supports version-1.0 ASCII and binary little-endian scalar/list properties. glTF supports embedded buffers, FLOAT POSITION/NORMAL accessors, unsigned indices and TRIANGLES primitives. Sparse accessors, animations, skins, textures, Draco/Meshopt and external resources are not decoded in v0.2.0.
The normalized preview/export mesh does not bake glTF node transforms or recreate source material graphs. These limitations are reported rather than silently represented as equivalent output.
The normalized preview/export mesh bakes the selected glTF scene hierarchy and
instances, but does not recreate source material graphs. These limitations are
reported rather than silently represented as equivalent output.
## Development
Run npm ci, npm run check, npm run test:browser and npm run package:release -- --force with Node.js 22+ and npm 11. The deterministic artifact is release/3d-tools-0.1.0.zip with a SHA-256 sidecar.
Run npm ci, npm run check, npm run test:browser and npm run package:release -- --force with Node.js 22+ and npm 11. The deterministic artifact is release/3d-tools-0.2.0.zip with a SHA-256 sidecar.
## Licence