PlayCanvas Unveils Spatially Ordered Gaussians

PlayCanvas Unveils Spatially Ordered Gaussians

PlayCanvas Unveils Spatially Ordered Gaussians

Michael Rubloff

Michael Rubloff

Sep 18, 2025

Email
Copy Link
Twitter
Linkedin
Reddit
Whatsapp
Spatially Ordered Gaussians
Spatially Ordered Gaussians

Earlier this year, PlayCanvas introduced support for Self Organizing Gaussians (SOGS), a research compression method that has been quickly adopted for Gaussian splats that set a new bar for reducing file sizes. Now, just a few months later, the team is back with something even more efficient. SOG, or Spatially Ordered Gaussians.

SOG works on the same principle as SOGS. Initially splitting Gaussian data into multiple 8 bit images backed by a metadata file. What’s new is how much cleaner and more efficient the system has become.

With SOG, you can bundle everything into a single .sog container without multiple assets. It also stores splats in Morton order, which means the data is laid out in a way that the GPU can consume directly without reprocessing. That makes scenes load significantly faster.

SOG also shifts away from relying on CUDA for compression. Instead, it only needs WebGPU, so it can run virtually anywhere. And because of smarter quantization, it reduces visible artifacts while still hitting that 15–20× compression ratio compared to PLY. Each Gaussian in a scene is represented by co-located pixels across a set of WebP images, positions, orientations, scales, and base colors, all mapped back together through a meta.json file. Historically many people have relied on standard jpgs for gaussian splatting, but this is an exciting step.

Positions are stored as quantized 16-bit values split across two images, then dequantized into a log-transformed coordinate system. Orientations use a quaternion encoding that packs three components and a two bit mode into just 26 bits. Scales and colors are indexed through lightweight codebooks, minimizing redundancy while preserving detail.

For higher fidelity, SOG also supports optional spherical harmonics stored as palettes, letting creators capture the lifelike fidelity in a compressed form. To make adoption simple, you can convert your files using the open source CLI, SplatTransform, also from PlayCanvas to convert PLYs straight into .sog files. The full format specification has been published openly, the SplatTransform tool is available on npm, and the engine offers a reference implementation.

In practice, the resulting file sizes are roughly 95% reduced in size, with scanning GOAT Christoph Schindelar's recent skate park coming in at 42mb, down from 1gb.

SOG is already supported across the PlayCanvas ecosystem with the engine (from version 2.11.0 onwards), React bindings, and Web Components all understanding the new format. Beyond PlayCanvas itself, SuperSplat, the leading online editing/publishing platform for gaussian splats, has also integrated SOG.

There has been so much momentum in the gaussian splatting compression world this year that it is difficult to keep up. I will do my best to continue to catalogue the progression of this technology, but it's just going to get more crazy from here.

Learn more about SOG on the PlayCanvas blog.