splat-transform v3.9.0 Speeds Up SOG Compression

PlayCanvas splat-transform v3.9.0 speeds up GPU k-means for SOG compression on devices without shader-f16 and decodes big-endian PLY while rejecting ASCII.

PlayCanvas splat-transform v3.9.0 speeds up GPU k-means for SOG compression on devices without shader-f16 and decodes big-endian PLY while rejecting ASCII.

Michael Rubloff

Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

PlayCanvas

PlayCanvas has released splat-transform v3.9.0, which speeds up SOG compression on GPUs without half precision shader support.

When splat-transform compresses a gaussian splatting scene to SOG, it runs a GPU k-means clustering pass. Version 3.9.0 adds a faster 32-bit float kernel for that pass, which needs one fused multiply-add per element instead of a subtract plus a multiply-add. Only devices that lack the WebGPU shader-f16 feature take the new kernel, NVIDIA under Vulkan for example, and the f16 path is unchanged.

The level of detail writer now starts gathering and clustering the next unit while the current one encodes and writes, so the GPU stays busy through each unit's CPU work, with at most two units in memory. Streamed SOG is the format SuperSplat builds automatically for every uploaded scene.

PlayCanvas's own timings use castle.ply, a 5 million gaussian scene at spherical harmonics degree 3. On an NVIDIA A10G under Vulkan, a GPU k-means run of 3 million rows of 45 values into 65,536 clusters over 10 iterations drops from 23.7 s to 12.5 s, castle.ply to SOG conversion from 51.0 s to 31.8 s, and a streamed SOG build combining four LODs and 9.4 million gaussians from 144.5 s to 69.9 s. On an M4 Max under Metal, which keeps the f16 path, ply to SOG holds at 43.9 s against 44.4 s, while ply to streamed SOG drops from 56.4 s to 44.4 s. Streamed SOG peak memory on the A10G rises from 1.95 GB to 2.16 GB on the CPU and from 130 MB to 260 MB on the GPU.

splat-transform v3.9.0 also fixes PLY reading. The reader previously decoded every file as little endian, so a binary_big_endian PLY came back byte swapped and an ASCII PLY was parsed as fixed width binary records, producing silent garbage or a misleading short read error. Big endian files now decode correctly. ASCII files and files with a missing or malformed format line are rejected with an explicit error, as are compressed PLY files that are not little endian.

The tool has moved through a run of point releases since v3.0.0 rebuilt it around streaming in July. Version 3.7.0 added a --gpu-backend option that forces Vulkan, D3D12, or Metal. Version 3.8.0 removed the --lod-errors option and its per leaf error tables, which the PlayCanvas engine no longer reads now that its LOD selection is distance only.

splat-transform v3.9.0 is available now on npm under the MIT license.

Thumbnail for Gaussian Splatting News episode 12

11:38

Watch · New every Monday

Splats Come to Fortnite, Nike Shoots in 4D, Splats on a Nintendo 3DS

Episode 12 · Nov 9, 2026

Epic’s UEFN 43.00 brings Gaussian splats into the Unreal Editor for Fortnite, importing PLY and SPZ files that render on every platform UEFN supports, mobile included.

Featured

Recents

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Platforms

Spirula Studio v2026.11.12 Adds Calibration Correction

Spirula Studio v2026.11.12 corrects rolling shutter and other camera calibration residuals during training and adds an experimental GLOMAP-style SfM mapper.

Michael Rubloff

Nov 12, 2026

Platforms

Spirula Studio v2026.11.12 Adds Calibration Correction

Spirula Studio v2026.11.12 corrects rolling shutter and other camera calibration residuals during training and adds an experimental GLOMAP-style SfM mapper.

Michael Rubloff

Michael Rubloff

Written by Michael Rubloff

Michael is the Founder and Managing Editor of Radiancefields.com

More from Michael Rubloff

More from Michael Rubloff

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

World Labs Opens Atlas World Model to Everyone

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

World Labs Opens Atlas World Model to Everyone

World Labs has opened Atlas to everyone, launching Viewfinder, Chisel, Splats to Mesh and Relight alongside a developer API that outputs SPZ Gaussian splats.

Michael Rubloff

Nov 13, 2026

Atlas World Labs

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

OfflineTools' Frankensplat Trains Splats in the Browser

Frankensplat from OfflineTools trains Gaussian splats locally in the browser on WebGPU from images and a COLMAP reconstruction, with live PSNR and PLY export.

Michael Rubloff

Nov 13, 2026

Frankensplat

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

Platforms

Evergine Moves Gaussian Splat Processing to the GPU

Evergine's November 2026 release moves its Gaussian Splatting add-on to GPU compute shaders and adds PLY, SPZ, KSplat, LCC and LCC2 loading with auto-detection.

Michael Rubloff

Nov 12, 2026

Evergine Gaussian Splatting

New to Gaussian Splatting? Start here

Radiance fields, explained from the ground up: what a Gaussian splat is, how to capture one, and which tools and gear to start with.

Newsletter

Keep up with the field.

New research, tools and captures from the Radiance Fields newsroom, in your inbox. Free, no spam.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.

Gaussian Splatting News on YouTube

The week in radiance fields, every Monday.