Split-screen
Gaussian splat viewer
A before-and-after viewer for Gaussian splats. Load two reconstructions of the same scene, fly one camera through both at once, and drag the divider across the frame to see what changed. Nothing is uploaded — the splats never leave your machine.
How to use it
- 01
Load a splat
Drag a .ply or .sog Gaussian splat onto the viewer, or press Load. Drag to turn the camera on the spot, shift-drag or right-drag to orbit around what is in front of it, scroll or pinch to zoom.
- 02
Walk into it
WASD flies through the scene — W and S forward and back, A and D sideways, Q and E down and up, shift to sprint. Movement speed follows the size of the splat, so the same keys suit a desk object and a building.
- 03
Load a second one
Drop a second splat into slot B. The frame splits in two and a divider appears between them.
- 04
Move the camera
Both halves are drawn by one camera, so turning, flying, orbiting and zooming move them together and the two reconstructions stay in the same pose. A plain drag turns the camera where it stands, the way you would look around a room; orbiting is there when you want to circle an object instead.
- 05
Drag the divider
Sweep the divider across the scene for a before-and-after. The two frustums are exact halves of one frame, so a feature sitting on the divider lands on the same pixel column on both sides.
What it's for
- Comparing two training runs or two splat trainers on the same capture
- Before and after on pruning, compression or SH-band reduction
- Checking an on-device reconstruction against a desktop or cloud one
- Site-progress and renovation captures of the same space over time
Questions
Which splat formats work?
Single-file Gaussian splats: .ply — the format every 3DGS trainer exports, compressed or not — and .sog. A SOG meta.json needs its sibling files next to it, so it isn't loadable from a drop.
Are my splats uploaded anywhere?
No. The file is read by your browser and handed straight to the GPU. There is no server, no account and no upload — the page works with your network disconnected once it has loaded.
Do the two splats need to be aligned first?
Yes. This viewer compares two reconstructions in one shared world space; it does not register them for you. Align them in your pipeline — same scene scale, same origin — and the comparison means something. Two unaligned captures will simply sit in different places.
Why one camera instead of two synced ones?
Because synced cameras drift. Here there is a single orbit state and two projections that are exact horizontal slices of the same frame, which is what makes the seam line up to the pixel instead of approximately.
How big a splat can it open?
As big as your GPU's memory allows. Splats are rendered by PlayCanvas at full quality; a few million splats is comfortable on a desktop GPU, less on a phone.
Is it free?
Yes, and there is nothing to sign up for.
Built while working on phone-captured spatial reconstruction, where the only question that matters is whether this run is better than the last one. Its flat cousin is the panorama viewer. More tools.