WEBGL 3D GS Rendering

Playcanvas offers webGL rendering splat models using varying SH degrees; SH = 0, 1, 2, 3.

They also utilized something called morton encoding for faster sorting, I don’t know much about using spacial sorting methods in this context other than the radix sort, but it seems to work well when you don’t have access to webGPU.

1 Like

SH is already supported with SPZ format. PLY + SH is so big it gets impractical for the web but its support can be added anyways.

I’m curious about other sorting methods(wasm impl for example). Definitely something to experiment.

2 Likes

I’m using a certain type of compression that gets 1 million splats with SH=3 down to about 30MB. I wouldn’t say it’s impractical, although the vram usage does get heavy. Case in point:

https://realapp.colossum.io/splat-viewer.html?file=https://colossum.s3.amazonaws.com/scratchwork/splats/png_comp_test/point_cloud.zip

I’m curious about other sorting methods(wasm impl for example). Definitely something to experiment.

Here’s how they’re currently using it:

I would be interested in implementing this and seeing what performance improvements we see