Spark on WebGPU

Demos of the WebGPU backend for Spark, the 3D Gaussian splatting renderer for three.js: relighting, streaming level of detail, per-splat attributes, GPU effects and dyno shaders.

These demos need WebGPU: current Chrome, Edge or Safari 26+. This browser has no WebGPU.

A dark green Corvette C7 Stingray on a grassy field, relit from its HDRI

Relightable Corvette · light

A whole car in 1.1M splats, about 95 MB: pick a 4k HDRI and every part is relit live, coat reflections, glass and ground shadow included.

A closer view of the dark green Corvette C7 Stingray, relit from its HDRI

Relightable Corvette · HD

The detailed version: 5.2M splats, the paint at full bake resolution, about 315 MB. Same live relighting.

A spaceship interior rendered from streamed splats

Streaming level of detail

A 6M-splat scene streamed by pages from one .rad file, with LoD picked per view.

Spheres, a torus and boxes coloured by per-splat labels

Per-splat attributes

Labels, normals and feature vectors per splat: colour modes, extra targets and GPU picking.

A valley scene with a colour grade and corner pin

aofx effects

An aofx FxChain of compute effects (grade, blur, corner pin…) over the splat render.

A cat statue with an animated shader effect

Dyno shader effects

Dyno graphs with WGSL statements animate and recolour every splat on the GPU.