Making Gaussian Splats more smaller
aras-p.info
aras-p.info
Then, it devolved into figuring out a better set of decomposition functions (SH is Fourier Transform over a spherical coordinate basis). IIRC Haar wavelets worked well too. I'd guess that with modern approaches, a learned function would do even better.
Thank you! I'd seen people remove some of the SH coefficients while still getting reflections, and I couldn't understand how that worked. The old tricks sometimes really are the best tricks.
Although now that I think about it, there's no real reason to not just make the Gaussians invisible from behind.
But since the splats aren't a surface, they don't exactly have a "behind". They might render from every angle on purpose.
Spherical Harmonics apply to the whole sphere, splats can learn a SH color for their "behind". But by definition there is no data for these (no camera to tell what the color is). Nothing is preventing current pipelines to define that the opposite direction (splat looking at the camera) has a special color (black, zero-alpha, blend of blurred splats between camera and splat, etc); or to regularize all splats so that there is some amount of an "undefined" transparent component to be applied where camera won't define the SH.
Wouldn't you need to know that there is no other camera view from the opposite direction? (sorry if dumb question, haven't actually looked at how GS are generated from input data)
However in most cases this will simply cut off as soon as you view a surface from the other side, so it kind of makes sense to add some special handling for that scenario. Especially since it can be hard to properly fit a discontinuity like that.
As it currently stands I imagine the reflection trick would be unable to work if you had a camera view from the other side, which is not ideal.
Or store only the rotation of certain typical small set of SH coefficients in two values + index. For an ideal, single material sphere, all the coefficients could be lined up exactly, right?
Cause I've seen SH used for baked-in shadows.
> Of course gaussian splatting at this point is useful for “rotate around a scanned object” use case; it is not useful for “in games” or many other cases. We don’t know how to re-light them, or how to animate them well, etc. etc. Yet.
I know almost for certain that animating them would be a serious challenge, but for relighting, I can more easily imagine some functions that filter some splats based on some kind of spatial and directional querying and applying multipliers for some of their values, however I'm practically daydreaming at this point.
For materials, you could look at the SH and try to fit it into metallic / plastic / matte.
But they already got photogrammetry into games, and this is just photogrammetry with splats instead of triangles, right? There's got to be a way.
Actually, I think that could be a very nice aesthetic to explore in a hypothetical Myst remake