Gaussian Splatting in Babylon.js

Has anyone seen an implementation of G splats in Babylon?

For reference, here is a webGL viewer - https://gsplat.tech/

Luma.ai and Poly.cam have similar options on their websites.

Here is an implementation in three.js, although the online demo did not load for me - GitHub - mkkellogg/GaussianSplats3D: Three.js-based implementation of the 3D Gaussian splat viewer

It would be very cool if you could use a g splat inside of a Babylon scene.

Thanks!

7 Likes

I’ve started an implementation some weeks ago. It was basically code from gsplat.tech with calls to Babylon api for mesh/instancing/shaders/… for an easier integration.
I still have some bugs so not great for a public release.

12 Likes

Ship it!!! :smiling_face::smiling_face:

Seriously though, excited to see any progress on that!

-Gabe

6 Likes

Super excited for this! Thanks @Cedric for giving this a shot!

1 Like

Why is Gaussian Splatting a big deal? I come across it very often on Twitter these days. I’m curious - is it practical to use?

1 Like

Technically it’s practical, there are several optimizations that can go in place like managing draw calls, i like to think of gaussian splatting as a form of advanced particle rendering, guassian being a single unit of particle can become complex through splitting or cloning and the info each guassian hold…blahblah lot of technical stuffs there but yeah gaussian splatting is kinda part of the future of 3D art I guess, was experimenting with it a couple days ago

2 Likes

Its an improved nerf impl that also has very realistic and somewhat efficient global illumination. It lets you transform a video or image to a virtual world, which obviously has many use cases.

3 Likes

hi @SonnyC56 - this implementation using three.js looks easier to follow to me, so may be easier to port.
dylanebert/gsplat.js: JavaScript Gaussian Splatting library. (github.com)

2 Likes

really excited to see the release!

Better late than never

There is a camera Y inversion I can’t find a fix for! :frowning: I’ll look again in the coming days.
Thanks @PirateJC for the capture!

I tried to keep the code as short as possible. Let me know if you find some bad math.

Happy hacking!!!

9 Likes

An update to the playground with proper camera and the ability to mix ‘classic’ scenes with geometry

7 Likes