Three techniques can turn a set of photos or a video into a navigable 3D scene: photogrammetry, NeRF, and Gaussian Splatting. They produce different outputs, run on different hardware, and answer different questions. This post lays out the differences, the trade-offs, and what to use when.
For a deeper dive on each, see Gaussian Splats: The Next-Gen 3D Reconstruction, LiDAR vs Photogrammetry, and What is a Point Cloud?.
Quick definitions
Photogrammetry: The classical Structure-from-Motion + Multi-View Stereo pipeline. Identify the same feature in multiple photos taken from different angles, triangulate its 3D position, repeat for millions of features. Produces a point cloud, often followed by a mesh and textures. Has been the dominant survey reconstruction technique for decades. Tools: Pix4D, Agisoft Metashape, RealityCapture, DJI Terra, OpenDroneMap.
NeRF (Neural Radiance Fields): A 2020 research breakthrough that represents a scene as a neural network. Given a 3D point and a viewing direction, the network returns colour and density. To render a pixel, you march a ray through the network and accumulate samples. NeRF produces photoreal novel views but is slow to train and slow to render. Tools: Instant-NGP, Nerfstudio, Luma AI (early versions).
Gaussian Splatting (3DGS): A 2023 technique that represents a scene as a collection of 3D Gaussian ellipsoids, each with position, orientation, scale, colour, and opacity. Renders by projecting and blending Gaussians onto the screen — much faster than NeRF’s ray marching. Visual quality matches or exceeds NeRF at a fraction of the rendering cost. Tools: Postshot, Polycam, Luma AI (current), Nerfstudio (also supports 3DGS).
Want to try it now? Open a Gaussian splat in the browser — free, no signup, your file stays on your computer.
The headline comparison
| Photogrammetry | NeRF | Gaussian Splats | |
|---|---|---|---|
| Year mainstream | 2010s | 2020-2022 | 2023-present |
| Output | Point cloud, mesh, textures | Neural network weights | Gaussian primitives |
| Visual quality | Good | Excellent | Excellent (best at view-dependent effects) |
| Geometric accuracy | High — survey-grade with GCPs | Low | Low |
| Measurement-grade | Yes (with control) | No | No |
| Handles reflections | Poorly | Moderately | Well |
| Handles translucency | Poorly | Moderately | Well |
| Handles foliage | Poorly | Moderately | Well |
| Capture style | Structured overlap, GCPs ideal | Dense, varied angles | Dense, varied angles |
| Processing time (typical scene) | 30 min – 4 hrs | 30 min – 12 hrs | 30 min – 2 hrs |
| GPU required for processing | Helpful | Required | Required |
| Render speed | Real-time mesh | Slow (sub-30 fps offline) | Real-time (60 fps+) |
| Browser viewable | Yes (Potree, 3D Tiles) | Limited | Yes (SuperSplat, Spark) |
| File size (output) | 100 MB – 50 GB | 50-500 MB | 100 MB – 5 GB |
| Editing | Mature tools | Difficult | Improving |
| Export to CAD/BIM | Yes | No | No (yet) |
Photogrammetry: the measurement workhorse
Photogrammetry is the only one of the three that gives you metric geometry. With ground control points (GCPs) and a properly-flown capture, a photogrammetry output is survey-grade — typical horizontal and vertical accuracies of 1-3 cm on a 5-hectare drone capture, sub-centimetre for terrestrial photogrammetry of small objects.
What it produces:
- A sparse point cloud from Structure-from-Motion (camera poses + tie points).
- A dense point cloud from Multi-View Stereo (millions to billions of points).
- Optionally a mesh, with textures projected from the input photos.
- Optionally an orthomosaic, DSM, and DTM (see DTM vs DSM vs DEM).
Where it shines:
- Drone topographic surveys
- Volumetric measurement (stockpiles, earthworks)
- As-built documentation against design
- Anywhere measurements matter
Where it fails:
- Reflective surfaces (windows, water, polished floors) — MVS can’t find consistent features
- Featureless surfaces (blank walls, snow, sand) — same problem
- View-dependent effects — every pixel is baked from one view, so reflections look wrong from every other angle
- Dense foliage from the air — penetrates poorly, can’t see ground underneath
Capture requirements:
- Structured overlap: 70-80% forward, 60-70% side for aerial
- GCPs distributed across the site for georeferencing and accuracy
- Consistent lighting across the capture (no fast-moving clouds)
NeRF: the research milestone
NeRF, introduced in March 2020 by Mildenhall et al., showed that a small neural network could encode a scene with enough fidelity to render novel views indistinguishable from photographs. It was a step change in visual quality.
What it produces:
- A neural network (typically 5-50 MB of weights) that takes (x, y, z, view direction) and returns (r, g, b, density).
- A renderer that ray-marches through the network to produce images.
Where it shone:
- Photoreal novel-view synthesis for static scenes
- View-dependent effects (reflections, specular highlights, soft shadows)
- Small training datasets compared to traditional 3D capture
Where it failed:
- Render speed: original NeRF rendered at seconds per frame, not frames per second. Instant-NGP (2022) brought training to minutes and rendering to interactive rates on a high-end GPU, but browser rendering remained impractical.
- Editing: you can’t move a tree in a NeRF. The scene is locked in network weights.
- Geometry: extracting a usable mesh from a NeRF is hard and lossy.
- Dynamic scenes: vanilla NeRF assumes a static scene; people, vehicles, foliage in wind all break it.
Current status:
NeRF was important as a research milestone and shipped in early Luma captures, but Gaussian Splatting has largely replaced it for production. The papers continue (4D NeRFs, dynamic NeRFs, NeRFs for relighting), but for client deliveries in 2026, splats have won. If you encounter a “NeRF” workflow today, it’s almost certainly running Gaussian Splatting underneath.
Gaussian Splatting: the practical winner
3DGS, published by Inria in 2023, took NeRF’s visual quality and made it render in real time. The trick: replace the neural network with a million small explicit primitives (3D Gaussians), each with their own colour and opacity. Rendering becomes a sort + blend operation instead of a ray march.
What it produces:
- A collection of 3D Gaussians, typically 1-10 million per scene, stored in
.ply,.splat,.ksplat, or.spzformat. - Sometimes a coarse mesh approximation alongside (Luma, Polycam) — useful for AR but not measurement.
Where it shines:
- Photoreal browser-renderable scenes (Best Gaussian Splat Viewers in 2026)
- Reflective and translucent surfaces
- Real-time interaction at 60+ fps on mid-range hardware
- Compact files (with
.spzcompression) - Capture: same dense-photo or video walkthrough as NeRF, no need for GCPs
Where it still fails:
- No metric geometry — splats are dimensionless and not aligned to real-world coordinates
- No mesh export (yet) — research on Gaussian-to-mesh conversion is active but unreliable
- Large outdoor sites are still hard — 10+ million Gaussians needed and the splat looks sparse
- Editing is improving but not at photogrammetry’s level
Real-world scenarios
These are the questions I get asked most often.
Drone survey deliverable for a quarry
Use photogrammetry. You need volumetric accuracy for stockpile measurements. Photogrammetry with GCPs gives you ±1-3 cm on volumes. A Gaussian splat of the same site might look better in client meetings but you can’t measure anything from it.
Optional addition: capture a single Gaussian splat of one feature — say, the haul road or a section of the wall — for the client presentation alongside the photogrammetric deliverable.
Real estate walkthrough of a finished home
Use Gaussian Splats. The buyer wants to feel the space; they don’t care about geometry. Splats outclass photogrammetry on interior visual quality, especially on reflective surfaces (kitchen splashbacks, bathroom tiles, glass shower doors) where photogrammetry breaks down.
A 5-bedroom home is well within capture and render budget for splats — 2-3 million Gaussians, 200 MB .splat or 60 MB .spz, plays smoothly on phones.
Archaeological site documentation
Use both. Photogrammetry for the metric record (millimetre-accurate measurements for archaeological reports, eligible for archival in heritage databases). Gaussian Splat for public engagement and immersive viewing.
This is increasingly the standard workflow at heritage sites. See Preserving the Past with 3D Mapping.
Construction progress capture
Use both, but lead with photogrammetry. Photogrammetry gives you the as-built point cloud for clash detection against the BIM model and for volume comparisons month-over-month. A splat alongside is useful for client reviews — “here’s what the site looked like in March” — but the splat alone won’t tell you whether the columns are out of position.
Fly-through video of a construction site
Use Gaussian Splats. Render a smooth camera path through the splat, capture frames, render to video. The result looks like a drone fly-through but you control the camera path in post. Easier than re-flying the drone to get the perfect shot.
Inspection of a bridge underside
Use photogrammetry. Reflections and lighting are challenging but the engineering use case requires metric accuracy and a point cloud for cross-sections. A splat gives the client a richer visual but the report is built on the point cloud.
Heritage interior, complex stained glass
Use Gaussian Splats. Photogrammetry will fail on the stained glass (translucent, view-dependent colour). Splats handle it.
Hybrid approaches
The current best practice for serious capture is to do both:
- Fly or walk the capture once. Most modern processing pipelines can produce both a photogrammetric point cloud and a Gaussian splat from the same imagery (RealityCapture, Postshot, Nerfstudio, Polycam Pro).
- Use the photogrammetric output for measurement, CAD export, BIM comparison, archival.
- Use the Gaussian splat for client communication, marketing, public engagement, immersive viewing.
The cost of producing both from the same source data is much lower than the cost of two separate captures. The deliverable is stronger for it.
Combining splats with measurement overlays
Some platforms are starting to overlay measurements from a registered photogrammetric point cloud onto a Gaussian splat in the browser. The splat renders the photoreal scene; the point cloud provides the geometry for click-to-measure. This is early but heading toward production — a useful pattern for delivering “see and measure” workflows to non-technical clients.
Future trends
A few things are clear at the time of writing:
Compressed splats: .spz and other compressed formats are reducing splat file sizes by 3-5x. Expect 50-100 MB .spz files to be the standard delivery size by end of 2026.
Gaussian + SDF hybrids: Research is producing representations that combine the visual quality of splats with the geometric usefulness of signed distance fields. These could become the basis for measurable splats.
Streamed splats: 3D Tiles Gaussian (a Cesium extension) lets you stream a splat the way you stream a 3D Tiles point cloud — only the visible region loads. This will unlock splats at city and regional scale.
Dynamic splats: 4D Gaussian Splatting handles scenes with motion. Production tools will arrive in the next 12-24 months.
Better mesh extraction: Converting a splat to a usable mesh is an active research area. Once it’s reliable, the wall between “splat for visuals” and “mesh for engineering” comes down.
Bottom line
Pick on the basis of what the client needs to do with the output:
- Measure — photogrammetry. Splats and NeRFs are not measurement tools.
- See — Gaussian Splats. Photogrammetry meshes look fine; splats look better, especially on hard surfaces.
- Both — capture once, process twice. Modern tools can produce both from the same source imagery.
- NeRF — almost never in 2026. Use Gaussian Splats instead.
Photogrammetry isn’t going anywhere — survey, engineering, mining, construction, and forestry will run on point clouds for the foreseeable future. But for delivering a sense of place to a non-technical client, Gaussian Splatting has decisively replaced the photogrammetry mesh as the higher-quality option. The two are complementary, not competing.
For more on delivering photogrammetric output to clients, see How to Deliver Drone Survey Data to Clients Professionally and How to View Point Clouds in a Browser. For the splat side, see Creating Gaussian Splats: Postshot, Polycam, Luma and Best Gaussian Splat Viewers in 2026.