The SOGS compression technique works well. You can get 1M Gaussians with full spherical harmonics in about 14MB. There's a good article about it on the PlayCanvas blog:
When you say that PlayCanvas is commercial, that's a little misleading. The PlayCanvas Engine (analogous to Three.js and Babylon.js) is free and open source (MIT). The PlayCanvas Engine is where you'll find all the cool 3DGS tech. There are two further frameworks that wrap the Engine (for those that prefer to use a declarative interface): PlayCanvas Web Components and PlayCanvas React. Again, both of these are free and open source (MIT). Only the PlayCanvas Editor (analogous to a browser-based Unity) has optional payment plans (for those that want to create private projects).
It's very similar to PlayCanvas React, but with a fully Web Components-based architecture. You can use the same scripts interchangeably between both frameworks.
I'm assuming you started working on this before their React release, or was Web Components chosen for a specific reason?
I'm trying to make something that can take in real-time data and also handle some XR/AR if possible as well, but I am pretty ignorant beyond html/css/js.
Hi Ben! I would argue that it is very useful for splats to be edited in this way. I couldn't have built this application without SuperSplat for isolating, cleaning, transforming and optimizing/compressing the PLY:
- cleaning up noisy GuassianSplats is useful. There are often stragglers floating around in space that need to get deleted.
- compression/optimizing them is useful.
This being a cleanup and compression tool makes sense, but I guess I don't call that an "editor."
I guess I was more arguing against the idea that this is a viable "editor" where one can combine and manipulate in more radical ways Gaussian Splats. The current technological approach doesn't make this a feasible use case.
- Copy & Paste: e.g. delete a tree and fill the hole with a copied patch of grass
- Color Adjustments: tinting, brightness, etc.
If these aren't editing ops, I don't know what is. :)
Sure, you _could_ go back and recapture photogrammetry or rerun training, but that's super costly in terms of time. SuperSplat lets you make simple edits quickly and easily.
In theory if you delete something you have to recompute global illumination and remove cast shadows in the immediate environment of the removed object, but that information is baked in the gaussian splats. I think that's the kind of limitation the parent comment is talking about.
To be as accurate as possible, yes, you need to consider lighting/shadows. But trust me, in many circumstances, you can copy+paste gaussians and it looks 'good enough'. It depends on the scene and the edit you want to make.
Thanks for the feedback. I agree that the performance improvements are the biggest win here. The PWA support is essentially the starting point, bringing installation and file association. Next up, we'll tackle file save using the File System API (instead of relying on sending exported scenes to the Downloads folder). I'm also keen to implement an offline mode (via Service Worker) soon too. Almost all SuperSplat users launch it in a desktop OS...so the PWA testing was done there. But out of curiosity, what should we tackle to make the experience great on mobile in your view?
I don't think you need to - as you say, the use-case doesn't make sense on mobile. My comment was more in appreciation of your desktop-first PWA. Look forward to seeing where you take it.
Understood! As a little update, the PWA got offline mode support in v0.18.0. We're now adding improved file open+save support which should be done by the end of the week.
https://blog.playcanvas.com/playcanvas-adopts-sogs-for-20x-3...