
Michael Rubloff
Aug 4, 2025
Spark, the high performance, browser based Gaussian Splatting renderer from World Labs, has quietly rolled out several new features that further push the boundaries of what's possible with real-time radiance fields in Three.js. These recent updates show the team turning its attention to visual fidelity, developer flexibility, and performance tuning at a much deeper level.
One of the most intriguing additions is experimental support for stochastic rendering, a mode that skips explicit depth sorting entirely by using randomness to approximate correct ordering. It’s inspired by recent research on sort free splatting and can dramatically speed up rendering despite only suffering from minimal fidelity decreases.
On the other hand, Spark now supports float32 based sorting, offering a more stable alternative to the default float16 mode. This higher precision sort helps address Z fighting and rendering inconsistencies between overlapping splats. Spark has also added customizable splat encoding ranges for color (RGB), scale, and spherical harmonics (SH1, SH2, SH3).
A new premultipliedAlpha
flag can now be toggled when blending splats, which is especially helpful when compositing scenes or mixing splat layers with transparency. And parameters like minAlpha
and maxPixelRadius
have been exposed at the renderer level, giving creators more tuning knobs to balance performance and visual density.
Beyond feature toggles, Spark is getting smarter under the hood. SOGS decoding and parsing can now happen in parallel, reducing load times for large compressed scenes. The renderer has also swapped out its custom fullscreen quad setup in favor of the native three.js implementation.
Spark from World Labs is continuing to ship quickly and move towards some of the capabilities found in another open source repository of SuperSplat. It continues to be free and MIT Licensed. More can be found on their GitHub and Website.