Gaussian splating orientation on creation

Hello,

I see that Gaussian splatting, created and rendered in BabylonJS, do not match what I see in other packages, for example, in playcanvas / super splat .

In the playground below, I follow a simple example, generated by chatGPT, to produce splats, constructed by uniform scale and 0-rotation. In other words the resulting splats are spheres, but I am getting disks - there are camera angles when the splats appear flat

This playground will download the resulting splats. If you import them to Super Splat, you will see the expected result

Moreover, if you export these splats from Super Splat back to BabylonJS, the splats appear correct too. In this playground, you can switch between the original splats and the splats that made a round-trip from BaylonJs to Super Splat and back to BabylonJS

Let me know how I can create super splats in BabyhlonJS correctly to avoid the round trip to Super Splat?

Thank you,
David

Quaternion component value range is [0…255] mapped to [-1…1]
So to get the splat to be rendered as a sphere in every direction, the quaternion needs to be (128,128,128,255)

The quaternion in the 1st PG (0,0,0,255) maps to (-1,-1,-1,1) which is not normalized (and not identity).

Check this PG:

1st splat is not rendered when perfectly aligned with the camera. I’ll check out why.

2 Likes
2 Likes

thank you