Decimation levels — one B-rep, five triangle budgets
A game engine's first question about an imported CAD model is how many triangles? A B-rep has no answer until export — a STEP file stores surfaces, not facets — so NativeCAD lets the chord tolerance decide: every LOD tier below is the same solid model, freshly tessellated at a coarser tolerance and written as its own GLB. Each tier is a fresh answer against the exact geometry rather than a collapse of the fine mesh.
cad_export_body { format: "glb", tolerance: 0.5, path: "prop_lod3.glb" } // chord tolerance, mm
Or hand the kernel the budget instead of the tolerance — it walks a coarsening ladder and returns the finest mesh at or under the count, and reports the shortfall if even the coarsest mesh exceeds it, never a silent overshoot:
cad_export_body { format: "glb", maxTriangles: 500, path: "prop_far.glb" }
Compare the tiers
Loading the viewer…
Every model, every tier
Poster shots are rendered straight from the shipped GLBs with the wireframe overlaid — on this page the mesh density is the subject. Click any tier to load it in the viewer above.
Why fresh tessellation beats mesh decimation
- Coarse still shades smooth. Per-vertex normals come from the B-rep surfaces, so the 104-triangle shaft still shades like a cylinder. A decimator working on the fine mesh has only triangles to average; the exact geometry is gone.
- Watertight at every tier. Each level is a full kernel tessellation of a closed solid — no collapsed slivers, no pinched holes, no shells that leak at the seams after aggressive reduction.
- The budget goes where the curvature is. Planes are minimal at every tier; only curved faces spend more triangles at tighter tolerance. On the drilled bracket, LOD0 and LOD4 differ almost entirely in the five bores.
- Instancing multiplies the savings. The pin array stores ONE pin mesh referenced by 28 nodes. Re-tessellating that one mesh re-LODs every placement: the drop a renderer sees is 28× the drop on the wire.
- Provenance per file. Every GLB records its source document, tessellation settings and kernel version in the asset record — a level in your asset pipeline can be traced back to the tolerance that produced it.
More demos
All demos →CAD models any glTF viewer can run
Runtime-ready models with real materials, sharp creases and animation clips, ready to drop into any viewer.
19 models to download 3D-PDF galleryCAD models your PDF reader can rotate
3D PDFs of real parts and assemblies, with dimensions on the model, each shipped beside its STEP file.
InteropEvery format, and every switch on it
Every common CAD, mesh and drawing format, read and written, with every option each one supports.
150/150 STEP files verified V12 engineA V12 engine you can run, slice and take apart
Every crank, rod, cam and valve is a real solid, turning in your browser from one dial: the crank angle.
361 parts · 2,850 placementsBuild your own part with NativeCAD
Free for education and makers with a registered key · $200 per seat per year · Kernel SDK for products.