PlayCanvas Releases Splat Transform 2.0

Michael Rubloff

Michael Rubloff

Email
Copy Link
Twitter
Linkedin
Reddit
Whatsapp
PlayCanvas

When splat-transform hit 1.0 in January, it was a scriptable CLI for compressing, filtering, transforming, and converting Gaussian Splat files before they land in SuperSplat or a game engine. Version 2.0.0, out this week, builds on that foundation in a different direction, away from file operations and toward spatial reasoning.

A new sparse voxel grid infrastructure forms the backbone of this release, powering a set of new capabilities that let splat-transform reason about the three dimensional structure of a captured scene. Exterior fill for nav simplification identifies the outside of a captured environment to delineate walkable from non-walkable regions. Floor fill reconstructs ground surfaces from the voxel representation. Voxel level cluster flooding lets the tool operate on connected spatial regions as discrete units.

Two new GPU-accelerated processing actions ship alongside the voxel work, filterFloaters and filterCluster. These go beyond the existing outlier removal pass, using the voxel grid's connectivity information to identify and eliminate spurious geometry that doesn't belong to any coherent spatial cluster. The GPU execution path keeps these filters practical on large captures.

On the geometry side, meshoptimizer has been replaced entirely with a lossless coplanar merge pass written by the team. This handles the same coplanar face merging that meshoptimizer provided while eliminating a native dependency that complicated builds on certain platforms and preserving full geometric fidelity.

The recent PlayCanvas blog post covering their Gaussian Splat FPS demo showcase actual application. Two smaller additions complete the release. the CLI now accepts http(s):// URLs directly as inputs, allowing remote LCC or splat files to be processed without a local download step, and peak memory usage is now reported in the final summary line. Splat-transform v2.0.0 is available now on npm. or on the SuperSplat website.