Interoperability · glTF / GLB

glTF 2.0 / GLB — the runtime spoke

B-rep to runtime asset in one call. This spoke has its own product name — SceneReady — and its own gallery of shipped GLBs; this page is the options reference. Output is validator-clean glTF 2.0: .glb single-file binary, or .gltf JSON plus a sibling .bin buffer.

Export — cad_export_body format:"gltf" | "glb"

OptionKindWhat it does
creaseAngleDegbehavior The crease gate for shading normals (default 30°): edges meeting more smoothly are welded to one shared normal, sharper ones keep a hard crease. This is what makes a runtime renderer shade the part correctly instead of showing flat faces as gradients.
bakeTransformsbehavior Bake the mm→m scale and Z-up→Y-up rotation into the vertex buffers, or (default) carry them on one root conversion node so downstream tooling can still read kernel-space mm out of the buffers.
animationsbehavior Named node-TRS clips: exploded views from the assembly's own explode vectors, mate-driven kinematic sampling, turntables, or authored keyframe tables.
materialsOverridebehavior glTF 2.0 material objects passed through verbatim — one for every body, or exactly one per body; any other count is refused rather than guessed at. Kernel appearances map to metallic-roughness PBR by default.
envelopeskips translation Envelope Export: ship only the bodies that participate in the model's exterior appearance. Internal mechanisms never leave the source document — absent from the file, not hidden in it — and the result reports what was kept and what stayed home. On the gallery's sealed enclosure that's 7 of 26 bodies and a ~98% smaller GLB.
envelopeViewsspeed Sampling quality for the envelope pass (default 26 directions) — raise it when a body visible only through a small opening must survive the cut.
tolerance / maxTrianglesspeed The same tessellation dials as STL: chord tolerance or a hard triangle budget with an exact shortfall report.

Try it

GLB nativecad-plate.glb 154 KB glTF nativecad-plate.gltf 4 KB BIN nativecad-plate.bin 152 KB

The kernel-authored sample plate as a single-file GLB and as the JSON + buffer pair (the .gltf references the .bin beside it). Drop the GLB into any three.js/Babylon viewer — or the gallery for bigger ones.

Refused rather than silently ignored: compression and quantize (Draco / meshopt / KHR quantization) are on the roadmap, and the arguments refuse by name until they land. handle is refused too — a cached mesh has no crease normals, and shipping it would reintroduce exactly the shading defect the crease gate exists to prevent.