Unable to load Gaussian Splatting

I can’t see anything and there are no mistakes.
Gaussian Splatting demo

Hello,

It works on my side, I can see a duck sitting on a box. Maybe you have a bad internet connection ? Since the .ply is 59 MB, it could take a while…

++ :slight_smile:
Tricotou

Hi.
Does load here as well, on the desktop and on the mobile.
You could also try to load the .ply into SuperSplat first and save it as a .splat model.
Thats a bit more optimized to reduce data.
Best.
Werner

Sorry, I placed the wrong connection.I have updated the demo URL.

Hi, September 2 2024 my babylone.js coded viewer for gaussian splatting ply and splat worked but today September 4th it does not anymore. Was there an update of something I missed?

I use:

<script src="https://cdn.babylonjs.com/babylon.js"></script>
<script src="https://cdn.babylonjs.com/loaders/babylon.glTF2FileLoader.js"></script>

cc @Cedric

Hi @Stephane_Vogley

Yes, GS loading has changed to be more consistent with the rest of the engine. see updated documentation. I’m working on preserving back compatibility.

https://doc.babylonjs.com/features/featuresDeepDive/mesh/gaussianSplatting

cc @bitbybit-dev

EDIT: This PR will bring back back compatibility but note these loading methods are now deprecated. GSplat consistency by CedricGuillemet · Pull Request #15515 · BabylonJS/Babylon.js · GitHub

1 Like

Hi @Cedric, I noticed you implemented support for Supersplat files on v7.29.0. That’s amazing! I was migrating to SceneLoader.ImportMeshAsync variant, but there’s one use case that worked in previous loadFileAsync situation which doesn’t seem to work in the new one.

I was using createObjectURL to reference some blob files in the browser memory and it worked perfectly, but those url’s do not contain file names. Previous import method was able to load such url’s, but ImporMeshAsync needs rootUrl and fileName defined, which do not exist in such situation. I suppose generic loader needs to identify file extension to know how to load assets. I wonder if maybe that could be the reason to consider not deprecating the old loading variant, which gives flexibility to have full url to the asset. Let me know what you think or maybe there’s some workaround to use createObjectURL output with ImporMeshAsync. Thanks a lot!

It’s possible to set extension when importing with with ImportMeshAsync. I guess it would work with blob?

Hey @Cedric it worked out indeed, I missed pluginExtension input. Thanks!

1 Like