The Gaussian Splats showcase renders a deterministic, colorful scene with the experimental
@luma.gl/splats renderer. Each source batch remains independently
owned, so additional splats can appear progressively without concatenating or reuploading the
previously prepared GPU data.
WebGPU uses a compiled GPU command graph for camera-aware Gaussian projection, visibility,
transparency ordering, and rendering. Expand GPU graph inspector for per-node encoding
diagnostics, or select CPU depth ordering to compare against the original renderer. WebGL2
provides its existing attribute-backed fallback. The example keeps file
format parsing separate: loaders.gl owns .ply, .splat, .ksplat, and related loaders, while
@luma.gl/arrow converts Gaussian Apache Arrow batches into the
framework-independent GPU representation.
Spherical-harmonic DC colors remain unclamped floating-point radiance from loading through GPU
rendering. Standard displays use configurable exposure and tone mapping, while compatible WebGPU
displays can present directly to an extended-range rgba16float canvas.
To explore complete captured scenes, open the Gaussian Splat Viewer. It starts with the 741,883-splat Train capture and offers Truck, Dr Johnson, Playroom, GitHub fallback, and custom public source URLs without requiring a local loaders.gl checkout.
The standalone example also supports an optional neighboring loaders.gl 5 alpha checkout. Start it
with VITE_LOADERS_GL_ROOT=/path/to/loaders.gl and open ?loaders=local; use
?loaders=local&scene=fixture for the small parser test asset.
Known GraphDECO captures use scene-specific camera-up conventions instead of assuming every scene is Z-up; Truck also starts from its published camera position. Foreground-based framing keeps the subject visible, manual orbit and zoom persist while additional batches stream in, and stationary scenes avoid unnecessary redraws.