I’m observing a strange behaviour of the engine in rendering gaussian splatting models.
It seems that the shader can’t align the splatts with the camera position.
Here the test 3d model with version 7:
I am having very similar issues — here is a breakdown of the current state of things – all in version 8.3.1 (also the same in 8.2)
These are all the same model in different formats. Created in postshot, exported as a ply.
1 - Compressed PLY does not seem to be functional at all, this is a ply file from postshot converted to a compressed ply in supersplat - https://playground.babylonjs.com/#KUHXDT#13
The new orientation for ply seems to match the orientation of .spz files - while the old version of ply without harmonics has the same orientation as .splat files.
The new orientation is coming into the scene by default inverted, which is fine since we can fix that by inverting scale, but it would be great to be able to unify this behavior across all file types, harmonics or not and have them always face up.
@Cedric I know you are off so take your time, I just wanted to get all of my thoughts down in one place and give this info to you ASAP. I will continue to update this thread if I find any new info and put it in an update below.
@Cedric Thanks! Yes I will do some in depth testing today. Just seeing this!
For #3, the inversion is not the biggest problem it’s the weirdness going on in the screenshots at the top of this thread. I’m auto converting ply to spz on upload now so it’s not a huge deal but something is definitely wrong and for power users who want to force ply, things are broken
I am currently waiting on this to push an update to StorySplat. Compressed ply support is very nice and smooths out some issues on my end when passing things to the supersplat editor, so once this was fixed I decided to convert to compressed ply instead of spz by default. Other changes are coming out with this update and will be held up, so I would like to get it out ASAP.
I was trying to figure out the best way to pull in the latest changes from master without a release, and also have these deploy to production – what is the preferred method of doing that? I have never had to do something like that before, and it might be valuable in the future.
Anyway, if it’s not a problem or a pain at all to release a small update, that would be fantastic. But also very willing to learn how to do this myself temporarily until Thursday.
You can pull the repository and use npm link after running the full es6 build command (npm run build:es6). Afterwards you can test the latest changes locally.
We can also release a new patch later today (8.4.1). Especially if that bug was fixed. I’ll do it very soon