Hi everyone,
I’m facing a significant performance issue with PlayCanvas GSplat.
The Problem: I’ve converted a .ply file to .sog (both bundled and unbundled versions). However, when I try to render it using the standard GSplat component, the browser becomes extremely slow and almost freezes.
What I’ve Tried:
- Integrating
PlayCanvas GSplat in my own code.
- Using the official [PlayCanvas Model Viewer].
- Using the [SuperSplat-Viewer]
- I’ve also followed the official Performance Guide, with no improvement.
Key Finding: When I load the exact same .sog file into the SuperSplat Editor, it runs perfectly smoothly. This suggests the issue is with the GSplat renderer implementation, not the .sog file itself.
My Questions:
- Has anyone else experienced this performance difference between the
GSplat component and the SuperSplat Editor’s renderer?
- Are there any optimization settings for the
GSplat component that I might be missing?
- Is there a more performant way to render
.sog files in a PlayCanvas project, short of integrating the entire SuperSplat Editor’s renderer?
Here is the .sog file for testing: https://drive.google.com/file/d/1g2lBdxCz4GWvPZarwjvnNSNqVnj0NzJ-/view?usp=drive_link
Any suggestions would be greatly appreciated. Thanks!
1 Like
Are you seeing any issues on your device when loading SOG scenes on superspl.at?
I actually cloned the entire SuperSplat Editor locally, which loads my SOG perfectly without any issue.
Is it just this splat, or are other splats from https://superspl.at/ slow as well?
What device are you experiencing this on?
Just only this one has the performance issue.
My project is running on MacBook Pro M1 Max.
1 Like
Also to add, when you load a SOG file into supersplat editor, the first thing it does is uncompress the data (which is necessary to edit it).
So in that case of supersplat editor you’re not experiencing the same rendering as opening the SOG in model-viewer or supersplat-viewer.
(I’ve requested access to your model, please check).
I currently don’t have other devices, but SOG file works well only on SuperSplat Editor.
Thanks for sharing the repro!
I know what the issue is: the source PLY contains NaN or infinite data and we are not handling this correctly at load time. This is a bug I must fix asap.
You can fix this on your end by updating to the latest version of splat-transform (v0.13.1) and use the --filter-nan flag on the output.
I’m really sorry, I thought I’d fixed this issue already.
1 Like
Yes, --filter-nan fixed my issue!
Thank you very much!
2 Likes