Gaussian splatting
What 3D Gaussian splatting is, how captured photos become millions of soft ellipsoids, real performance and memory numbers in Unity, the state of Unreal plug-ins and the glTF standard, licensing traps, and where splats do and do not fit in game production.
Gaussian splatting represents a scene as millions of small, soft, coloured ellipsoids called splats instead of triangles, usually created automatically from photos of a real place or object. The technique became widely used after a 2023 SIGGRAPH paper by Kerbl and colleagues, which represented scenes "with 3D Gaussians" and achieved "high-quality real-time (≥ 100 fps) novel-view synthesis at 1080p resolution" (Kerbl et al. 2023).
For game artists it sits somewhere between photogrammetry and a photograph: captures look realistic from any angle, but they are hard to light, animate, edit or collide with. This page explains how splats work, what they cost, how to get them into engines, and where they fit today.
#How it works
- Capture. You take many photos or a video around a subject. As with photogrammetry, coverage and sharp images matter most. See photogrammetry and scanning tools.
- Camera solve. Software works out where each photo was taken. The method starts "from sparse points produced during camera calibration" (Kerbl et al. 2023).
- Training. An optimiser turns those points into Gaussians and refines them until renders match the photos. It adds and removes Gaussians as it goes ("interleaved optimization/density control") and optimises each one's anisotropic shape (Kerbl et al. 2023).
- Rendering. Each frame, the splats are sorted by depth and blended on the GPU, using "a fast visibility-aware rendering algorithm that supports anisotropic splatting" (Kerbl et al. 2023).
PlayCanvas lists what each splat stores: a position, a covariance matrix that "defines the size, orientation, and shape of the ellipsoid", a colour and an opacity (PlayCanvas Developer Site: What is Gaussian Splatting?). Khronos's draft glTF extension stores the same idea as position, orientation, scale, colour and opacity (khronos.org: Khronos announces glTF Gaussian Splatting…).
#Strengths and weaknesses of splats
Good at: capturing real places quickly, from photos, with little manual modeling. PlayCanvas names "real-world scene capture", product visualisation and virtual tourism as ideal uses (PlayCanvas Developer Site: What is Gaussian Splatting?).
Bad at (according to PlayCanvas) (PlayCanvas Developer Site: What is Gaussian Splatting?):
- "Animated content - Each frame would require separate training"
- "Procedural geometry - Traditional meshes are more flexible for generated content"
- "Interactive objects - Editing and deformation are challenging"
Lighting is another major limit. A capture records the light that was there on the day. A 2026 browser shooter built from a scanned building showed the problems: splats "don't capture anything about the world except how it looks", the lighting "doesn't apply very well to the characters, and there aren't any shadows", and low-quality up-close detail "will continue to be a challenge" (Tom's Hardware: Developer creates a basic first person…).
#Performance and memory
Splat scenes are large. Aras Pranckevičius's open-source Unity viewer gives detailed numbers for one standard test scene (GitHub: Gaussian Splatting playground in Unity):
| Measure | Value |
|---|---|
| Scene | "Bicycle", 6.1 million splats, Medium quality |
| Asset size | 282 MB |
| Frame time, Windows, RTX 3080 Ti | 6.8 ms (147 fps): 4.5 ms rendering, 1.1 ms sorting, 0.8 ms view calculation |
| GPU memory | 1.3 GB (the official viewer used 4.8 GB) |
| Frame time, Apple M1 Max (Metal) | 21.5 ms (46 fps) |
| Extra GPU memory for sorting and view data | About 48 bytes per splat |
The same project also shows the effect of compression: a "Very Low" preset capture came in under 8 MB (GitHub: Gaussian Splatting playground in Unity).
#Getting splats into engines
| Engine | Options (as of 2026) | Notes |
|---|---|---|
| Unity | Aras Pranckevičius's open-source viewer (GitHub) | Renders trained PLY or SPZ files; D3D12, Vulkan or Metal, not DX11; author not planning major development since December 2023 |
| Unreal Engine | Third-party plug-ins rendering through Niagara: VIVE Mars Nova (private beta, UE 5.4–5.6), Volinga (paid; relighting), Akiya (Fab purchase; lit, masked and shadow-casting modes), Postshot (needs its own app) (World Labs Marble documentation) | Luma and XVerse are free but unmaintained; XVerse downsamples and shows artefacts |
| PlayCanvas (web) | Splat scenes run in the PlayCanvas engine, as in the browser shooter (Tom's Hardware) | Also makes the SuperSplat editor (PlayCanvas Developer Site) |
Capture tools are also being developed. The Unreal plug-in Atlux, for example, generates camera volumes and COLMAP data inside Unreal for training in tools such as Postshot and LichtFeld Studio (80 Level: All-in-one plug-in for Unreal Engine 5 to…).
#File formats and standards
The original paper's output is PLY files; the compressed SPZ format from Scaniverse is also supported by tools such as the Unity viewer (GitHub: Gaussian Splatting playground in Unity). In February 2026 Khronos released KHR_gaussian_splatting as a release candidate glTF extension, with ratification expected in Q2 2026 (khronos.org: Khronos announces glTF Gaussian Splatting…). It stores splat attributes in glTF 2.0, falls back to a point cloud in viewers without splat support, and was developed with contributors including Autodesk, Cesium/Bentley Systems, Esri, Huawei, Niantic Spatial, NVIDIA and XGRIDS (khronos.org: Khronos announces glTF Gaussian Splatting…). Compression extensions (Niantic's SPZ and Qualcomm's L-GSC) were proposed alongside it (khronos.org: Khronos announces glTF Gaussian Splatting…). Check its current status before relying on it. See 3D file formats.
#How to make one
The steps below turn photos of a tree stump or a statue into a splat you can place in a Unity or Unreal scene.
- Shoot the photos. Walk around the subject at two or three heights and take at least 60 overlapping, sharp photos in soft, even light (example values; the same rules as photogrammetry). The light you shoot in is the light you keep, because splats record only "how it looks" (Tom's Hardware: Developer creates a basic first person…).
- Solve the cameras. Run the photos through a camera solver; training starts "from sparse points produced during camera calibration" (Kerbl et al. 2023). For scenes rendered in Unreal, the plug-in Atlux generates camera volumes and COLMAP data for this step (80 Level: All-in-one plug-in for Unreal Engine 5 to…).
- Train the splat. Train in a tool such as Postshot or LichtFeld Studio (80 Level: All-in-one plug-in for Unreal Engine 5 to…). Check the licence first: the original research trainer is for non-commercial use unless licensed from Inria (GitHub: Gaussian Splatting playground in Unity).
- Clean and crop. Remove floaters and background in a splat editor such as PlayCanvas's SuperSplat (PlayCanvas Developer Site: What is Gaussian Splatting?). Every splat you delete saves memory, at about 48 bytes per splat for sorting alone in the Unity viewer (GitHub: Gaussian Splatting playground in Unity).
- Compress. Export a compressed version; the Unity viewer's "Very Low" preset brought a capture under 8 MB (GitHub: Gaussian Splatting playground in Unity).
- Import into the engine. In Unity, load the PLY or SPZ file into Aras Pranckevičius's viewer (D3D12, Vulkan or Metal) (GitHub: Gaussian Splatting playground in Unity). In Unreal, use one of the Niagara-based plug-ins compared by World Labs (World Labs Marble documentation: Gaussian splats in Unreal Engine).
- Add collision and lighting stand-ins. Splats have no surfaces, so build or generate a simple collision mesh; the browser shooter voxelised its splats "to create a collision mesh" (Tom's Hardware: Developer creates a basic first person…). Place characters and dynamic objects as meshes.
#Video tutorials
#Use in recent games
No commercially released game in the sources for this page documents shipping Gaussian splats as part of its environments. The closest documented case is a playable demo:
- A browser first-person shooter (Iakov Sumygin, 2026). Built in PlayCanvas on "a pre-made scan of an abandoned building", with a voxelised collision mesh, and described as "very easy to break" (see the example above) (Tom's Hardware: Developer creates a basic first person…).
Check current releases before assuming splats are production-ready for your project.
#Common mistakes
- Expecting to relight a capture. The lighting is baked into the colours, as in the browser shooter (Tom's Hardware: Developer creates a basic first person…).
- Ignoring splat count. Memory grows with every splat (GitHub: Gaussian Splatting playground in Unity).
- Capturing for close-ups. Up-close detail is still a weak point (Tom's Hardware: Developer creates a basic first person…).
- Forgetting collision and navigation. Splats have no surfaces; you need proxy meshes (Tom's Hardware: Developer creates a basic first person…).
- Shipping with a non-commercial trainer. Check licences (GitHub: Gaussian Splatting playground in Unity).
#Further reading and watching
References
- · 3D Gaussian Splatting for Real-Time Radiance Field Rendering · ACM Transactions on Graphics 42(4), SIGGRAPH 2023, 2023 · paper · accessed 2026-10-21
- · What is Gaussian Splatting? · PlayCanvas Developer Site, 2026 · docs · accessed 2026-10-21
- · Khronos announces glTF Gaussian Splatting extension (press release) · khronos.org, 2026 · article · accessed 2026-10-21
- · Developer creates a basic first person shooter game using Gaussian splats, and you can play it for free in your browser · Tom's Hardware, 2026 · article · accessed 2026-10-21
- · Gaussian Splatting playground in Unity (README) · GitHub, 2023 · tool · accessed 2026-10-21
- · Gaussian splats in Unreal Engine · World Labs Marble documentation, 2026 · docs · accessed 2026-10-21
- · All-in-one plug-in for Unreal Engine 5 to Gaussian splatting · 80 Level, 2026 · article · accessed 2026-10-21
- · How to Capture, Train, and Import 3D Gaussian Splats Into Unreal Engine 5 · YouTube · video · accessed 2026-10-22
Also consulted
- · Rocky outcrop · Sketchfab · web · accessed 2026-10-22
Pages that link here
- Photogrammetry and scanning tools Reference
- Virtualised geometry (Nanite) Topic
Last updated 2026-10-22