What Is a 3D Gaussian Splat?
A look at what is a 3D Gaussian splat: a scene built from millions of soft, colored blobs instead of triangles or a raw point cloud, how it is trained, and where the format still struggles.
A splat scene stores a 3D space as millions of small, soft, colored blobs instead of triangles or a grid of measured points. Each blob, formally a Gaussian, carries a position, a shape, an opacity and a color that shifts with viewing angle. Rendered together, they blend into a continuous, photoreal surface. That is what is a 3D Gaussian splat at its simplest: not a shape you sculpt, but a cloud of transparent smudges a computer learned to arrange from ordinary photos.
The name sounds abstract until you have seen one move. A splat scene of a living room holds still as a photo until you drag the camera, and then the couch has depth, the window has glare that shifts, and a lamp you walked past reflects the room behind you. None of that was modeled by hand. It was recovered from a set of overlapping images and left in exactly the form the images implied.
What is a 3D Gaussian splat?
Strip away the rendering and a splat scene is a large, flat list of numbers. Each entry is one Gaussian: a center point in 3D space, a covariance matrix that stretches it into an ellipsoid rather than a sphere, an opacity value, and a small set of spherical harmonic coefficients that let its color change as the camera moves around it. A finished scene might hold a few hundred thousand of these for a single object, or tens of millions for a full room.
That structure is why a splat reads differently from the two things it gets compared to most. A point cloud stores the same kind of position data but nothing about how it should look between the points, so it stays sparse and see-through until enough of it accumulates. A polygon mesh stores connected surfaces but has to commit to hard edges and a fixed texture. A Gaussian splat sits between them: soft enough to represent frizzy hair, glass, or foliage that a mesh cannot cleanly wrap, and dense enough that it reads as solid the way a point cloud does not.
How does a 3D Gaussian splat work?
Building a splat scene is a training process, not a scan in the traditional sense. It runs in four stages, each doing a distinct job.
Capture
The input is a set of overlapping photos or video frames of the same space, shot from enough angles that every surface appears in several of them. Phone photos, DSLR stills, drone footage or 360 video all work, because the requirement is coverage and overlap, not any particular camera.
Initial structure
Before any Gaussians exist, the images are run through a structure-from-motion process that recovers where each photo was taken from and produces a sparse starting point cloud, usually a few thousand points. This seeds the optimization; it is not the final result.
Optimization
Starting from that sparse cloud, an optimizer adds, splits, prunes and adjusts millions of Gaussians over repeated passes, comparing each rendered view against the real photo from that angle and correcting the difference. Position, shape, opacity and color all move during this step. The original 2023 paper describing the technique reported real-time display rates above 30 frames per second at 1080p once a scene finished training (Kerbl et al., ACM Transactions on Graphics, 2023).
Storage and playback
The trained result is saved to a portable file, commonly .ply, .splat, .ksplat or the more compact .spz, and a differentiable, tile-based rasterizer draws it back out in real time from any new angle, including ones never photographed.
Where it holds up
A splat scene handles thin and irregular geometry, hanging cables or chain-link fencing, that a mesh has to approximate or drop entirely. Reflections and glossy surfaces read more convincingly than in a textured mesh, because the color of a Gaussian is allowed to change with viewing angle instead of being baked flat. And because rendering is a GPU-friendly rasterization step rather than ray tracing through a dense structure, playback stays smooth on ordinary hardware once a scene is trained, including inside a browser tab.
Where it falls down
The failure cases are specific, not hypothetical. A subject that moved during capture, a door swinging, a person walking through frame, leaves a ghost or a soft smear at that location. Perfectly flat, reflective or texture-less surfaces such as a bare white wall or still water give the optimizer nothing to lock onto, so results there stay approximate. Lighting has to hold steady across the whole capture; a cloud passing over halfway through a drone pass bakes an inconsistency into the scene that no later editing pass removes. And a splat is not watertight geometry: there is no clean surface to run physics or a boolean operation against, so pipelines that need a true mesh still need one.
| Point cloud | Polygon mesh | Gaussian splat | |
|---|---|---|---|
| Stores | Raw measured points | Connected surfaces, hard edges | Soft ellipsoids with view-dependent color |
| Handles thin geometry | Poorly, gaps between points | Poorly, forces simplification | Well |
| View-dependent reflections | No | Only with baked texture tricks | Native to the format |
| Readable by a non-specialist | Reads as a diagram | Reads as a solid object | Reads as the actual space |
| Editable as solid geometry | No | Yes | No |
Overlap is what the optimizer has to work with. A slow, steady orbit with each frame sharing most of its view with the last one gives cleaner results than a fast sweep with gaps, even at the same photo count.
A practical first attempt
A first splat is usually a single object or a small room, captured as a slow phone orbit at a consistent height and distance, then a slower second pass low and a third pass high to fill in the top and underside of anything in frame. Image capture and ordinary video both feed the same underlying process, so the choice mostly comes down to what is easier to hold steady. Moving objects, harsh mixed lighting and mirror-like surfaces are worth avoiding on the first attempt rather than working around after the fact. Platforms built for this, including Captures Studio, take that photo or video set and return a scene in the cloud in 10 to 120 minutes, opening directly in formats like .spz and .ply without a local GPU. The Splat Editor is where hotspots, camera paths and cleanup happen once a scene exists, and the result is usually judged against a photogrammetry mesh of the same space to see which one actually serves the use case.
FAQ
What file format is a Gaussian splat saved in?
There is no single standard yet. The common formats are .ply, the original research format; .splat, a simpler binary layout built for web viewers; .ksplat, a compressed variant; and .spz, a more compact format aimed at smaller file sizes for the same scene.
Is a 3D Gaussian splat the same as a point cloud?
No. Both store 3D positions, but a point cloud stops there: a bare list of coordinates with no information about how the space should look between them. A splat adds shape, opacity and view-dependent color to each point, which is what lets it render as a continuous surface instead of a scatter of dots.
Do I need a powerful computer to view a Gaussian splat?
Viewing is lighter than training. Playback uses a GPU-friendly rasterizer rather than the optimization process that built the scene, so a modern phone, tablet or laptop can typically open and navigate a splat in a browser without dedicated hardware.
Can a Gaussian splat be edited after it is created?
Not as solid geometry in the way a mesh can be reshaped, but the practical edits people actually want, trimming stray Gaussians, adding hotspots, setting a camera path, placing objects into the scene, are supported by splat editing tools built for that purpose.
Does a Gaussian splat work in VR?
Yes, when the viewer supports it. Because the format renders from arbitrary angles in real time, it suits headset playback well, and a scene built once can typically open on desktop, mobile and headset without being rebuilt for each.
A Gaussian splat is not trying to be a mesh with better graphics. It is a different answer to the same question, what does this space actually look like from anywhere, built by letting an optimizer find the arrangement of blobs that reproduces every photo taken of it. Once that clicks, the file format stops being the interesting part, and the photos you started with become the thing that decides how good the result is.