Support · Reference
Supported formats and capabilities
One table for the question "will it open my file", and a second for "what can it do with it". Where a cell can carry a measurement it does, instead of a tick: a number can be checked, a tick cannot.
Formats
Files are recognised from the extension and confirmed from the content. Reading is free; writing what N3D computed is Pro.
| Format | Kind | Reads | Writes | What it carries | Measured |
|---|---|---|---|---|---|
| LAS.las | Point cloud | Reads | Writes | PDRF 0 to 10, memory-mapped; intensity, returns and classification as columns; CRS from GeoTIFF keys, WKT and EVLRs | 43.5 M points in about 1.2 s |
| LAZ.laz | Point cloud | Reads | No | parallel decompression, chunk table indexed for strided reads | about 40 M points/s; 142 M points in about 3.3 s |
| COPC.copc.laz | Point cloud | Reads | No | opens through the LAZ path, since COPC is LAZ 1.4 by design | 16.2 M points in 2.4 s |
| E57.e57 | Point cloud | Reads | No | multi-scan with poses applied; embedded images and 360° panoramas you can stand in | 127.8 M points / 7.9 GB in about 22 s |
| PLY.ply | Point cloud, mesh or splats | Reads | Writes | a Gaussian splat file and a plain cloud are told apart on load; extra properties become colourable columns | not published |
| SPZ.spz | Gaussian splats | Reads | No | Niantic compressed splats | about 60 FPS at 2 M splats |
| PCD.pcd | Point cloud | Reads | No | ASCII and binary | not published |
| NPY.npy | Point cloud | Reads | No | NumPy arrays N x 3 or wider, float32 or float64; extra columns become scalar fields | not published |
| ASCII.xyz .pts .asc .txt .csv | Point cloud | Reads | As CSV | column layout detected from the values, so x y z r g b and x y z nx ny nz are told apart | not published |
| IFC.ifc | BIM model | Reads | No | IFC2x3 and IFC4; extruded solids, B-rep, mapped items, boolean clipping, triangulated face sets, styled colours; storeys and spaces feed the floor plan | 100,871 entities in about 1 s |
| STEP.step .stp | CAD model | Reads | No | AP203 and AP214 B-rep, tessellated by a pure-Rust kernel | not published |
| USD.usd .usda .usdc .usdz | Stage | Reads | As .usda | full composition (references, payloads, variants, class prototypes, native instancing); components in the Scene pane | same 15,217,537 triangles as OpenUSD 26.8; reopens in 1.64 s |
| glTF / GLB.gltf .glb | Mesh, cloud, cameras | Reads | Writes | meshes with textures, point clouds, and camera frustums recovered as real poses | not published |
| OBJ.obj | Mesh | Reads | No | read-only | not published |
| STL.stl | Mesh | Reads | No | binary and ASCII | not published |
| GeoJSON.geojson | Vector | Reads | Writes | lands in the scan’s own frame; CRS clash checked | not published |
| Shapefile.shp | Vector | Reads | Writes | written with its .dbf, .shx and .prj | not published |
| DXF.dxf | Drawing | Reads | Writes | R2000, model space in metres at 1:1, real dimension entities, ISO 13567 layers, pure-ASCII with a declared code page | not published |
| SVG.svg | Drawing | Reads | Writes | real paper millimetres; text stays text | not published |
| PDF.pdf | Drawing | No | Writes | PDF 1.4 vector at the sheet’s true size, with an embedded font when a name needs one | not published |
| CityGML.gml | Vector | Reads | No | read as a drawing layer | not published |
| GeoTIFF / ASCII grid.tif .asc | Raster | No | Writes | 32-bit float with a .prj, a declared no-data value and the EPSG code in its GeoKeys, checked by reopening in GDAL | not published |
| DWG / DGN.dwg .dgn | Drawing | No | No | refused, and the reason given; save as DXF instead | not published |
Not listed? A point format not in the table can usually be written as LAS, PLY or ASCII by the program that made it; ASCII columns are detected from the values. DWG and DGN are refused on purpose: save them as DXF.
Capabilities
Where each process is reached in the app and on the command line, its tier, and what it was measured at.
| Capability | In the app | Command line | Tier | Measured |
|---|---|---|---|---|
| See it | ||||
| Out-of-core octree rendering | automatic | render |
free | 43.5 M points at 60 FPS, 9.0 ms a frame (p50) |
| Gaussian splats with level of detail | automatic; N3D_SPLAT_BUDGET | splat-tree |
free | 2.4x faster at 500 k splats, 4.6x at 150 k, on 1.92 M |
| Eye-dome lighting, surface reconstruction, surfels, voxel view | Display | render --no-edl / --points / --voxel |
free | voxel grid up to 2048 cells a side |
| Understand it | ||||
| Unsupervised segmentation | Process > Unsupervised Segmentation | seg-stats |
free | not published |
| Decomposition into primitives | Process > Decompose into Primitives | primitives |
free | 43.5 M points into 1,501 regions in 5.8 s |
| Four classifiers | Process > Classify Segments | render --classify, *-eval |
free | indoor 82 %, outdoor 86.2 %, powerline 87 to 88 %, streetscape 31 of 32 signs |
| Ground filter (cloth simulation) | Process > Ground filter... | ground |
free | F1 90.3 % vs IGN LiDAR HD, 16.2 M points in 2.1 s |
| Scene graph and spaces | Process > Scene graph & spaces... | graph |
free (export Pro) | 31 rooms, 48 openings in 0.35 s on 43.5 M points |
| Measure it | ||||
| Distance, area and volume | Measure tool | app only | free | volume integrated over up to 8 M points, coverage reported |
| Cloud-to-cloud and cloud-to-BIM deviation | Process > Compare & detect change... | report --reference |
free (CSV Pro) | not published |
| M3C2 change detection | Process > Compare & detect change... | compare |
free | a 50 mm lift measured as +0.04998 m; 0.0 % change against itself |
| Carry a column between clouds | Process > Transfer a column from a layer... | transfer |
free | 20 M points in 0.21 s |
| Build from it | ||||
| Floor plan, sections and elevations | Process > Floor plan... | floorplan |
Pro to save | Area 4: 42 spaces, plan and 6 sections and elevations, 21 files in 1.0 s |
| Terrain products | Process > Terrain products... | terrain |
Pro to write | 6 rasters on one 0.50 m grid in 0.66 s; 616 contours |
| Clean mesh, Poisson, segment meshes | Process > Mesh (clean)... / Surface mesh (Poisson)... / Mesh Segments | mesh-clean, seg-mesh |
free (glTF Pro) | not published |
| Registration | Process > Align to reference cloud... | graph-match --refine |
free | RMS reported with the inlier share |
| Deliver it | ||||
| HTML report with provenance | File > Build report... | report |
Pro | exit code 0 pass, 2 fail |
| Export with computed columns | File > Export point cloud... | app only | Pro | not published |
| Flythrough video | File > Export Flythrough... | path |
Pro | 720p to 1440p, 24 to 60 fps |
Every figure comes from the product's capability register and the published verification reports. The guides state what each was measured on.
What is deliberately not supported
- Streaming splat scenes larger than video memory (the splat level of detail is built; a residency pool for splats is not).
- SLAM trajectory or RTK pseudo-fix quality control.
- Manifold mesh repair - the clean mesher's surface is closed but not edge-manifold, and the mesh audit says so.
- Mesh decimation, and writing OBJ (OBJ is read-only).
- Metric scale anchoring for splat captures.
- Reading or writing DWG and DGN - DWG's specification is not published and the only open library is LGPL, which N3D's permissive-only licence policy excludes; DXF R2000 (which AutoCAD and every CAD package open), PDF and SVG are written instead.
- Classification that certifies itself - N3D reports a per-point confidence and keeps a human in the loop.
- A macOS or Linux build - Windows only today.