From BIM to AR: a practical conversion pipeline
A naive BIM-to-AR export ships a 4GB IFC. WebAR can't serve that. Our pipeline gets a typical residential tower under 30MB without losing visual fidelity.
1. IFC ingestion
IFC is the lingua franca. We accept IFC4 and IFC2x3 from Revit, ArchiCAD, and Tekla. The first stage strips MEP, structural rebar, and any IfcSpace records — we render the visible envelope only.
$ bluexr-ingest tower-one.ifc \
--strip-mep --strip-rebar --strip-spaces \
--output tower-one.draco.glb2. Geometry decimation
After ingestion the model is ~600MB GLB. The decimator targets a polygon budget of 250K triangles for the LOD-0 (close-up) tier and 80K for LOD-2 (far). Mesh simplification is QEM-based with edge-length preservation.
3. Material baking
PBR materials baked into 1024×1024 textures, packed into atlases. We avoid runtime cubemap reflections — too expensive on mid-range Android. Instead, we bake reflection probes into the material at compile time.
4. The LOD ladder
- LOD-0 — within 5m of the camera, 250K tris.
- LOD-1 — 5-25m, 120K tris.
- LOD-2 — beyond 25m, 80K tris.
- Far field — billboards beyond 100m.
5. Compression
Final glTF goes through Draco for geometry and Basis Universal for textures. Typical residential tower: 28MB total, loads in under 6 seconds on a 10Mbps connection.
The pipeline is automated end-to-end. From IFC handoff to a tracked AR scene live on the plot is a 4-hour cycle on a single workstation.