When I first read "triangle splatting," I assumed Gaussians were just replaced by triangles, but triangles being aligned with geometry changes everything. Looking forward to seeing this in action in traditional rendering pipelines.
It's already noticeable that there doesn't seem to be one fits all approach. Volumetric feathered features like clouds will not profit much from triangle representation vs high visual frequency features.
There are various avenues for speeding up rendering and improving 3d performance of 3DGS.
it's surely a very interesting research space to watch.
https://arxiv.org/pdf/2410.20593
https://speedysplat.github.io/
another venue is increasing the complexity of the gradient function like applying Gabor filters
https://arxiv.org/abs/2504.11003
some many ways to adapt and extend on the 3dgs principles.
https://github.com/user-attachments/assets/6008d5ee-c539-451...
(or https://github.com/datoviz/data/blob/main/gallery/showcase/s...)
I'll add it to the official gallery soon, with proper credits.
Although, the normals look pretty good in their example images, maybe you can get good geometry from this using some post processing? But then is a triangle soup really the best way of doing that? My impression is that this is chosen specifically to get a final representation that is efficient to render on GPUs. I haven't done any graphics programming in years, but I thought you'd want to keep the number of draw calls down, do you need to cluster these triangles into fewer draw calls?
Is there any work being done to optimize a volumetric representation of scenes and from that create a set of surfaces with realistic looking shaders or similar? I know one of the big benefits of these splatting techniques is that it captures reflections, opacity, anisotropicity, etc, so "old school" photogrammetry with marching cubes and textured meshes have a hard time competing with the visual quality.
GPUs draw can draw 10,000's of vertices per draw call, whether they are connected together into logical objects or are "triangle soup" like this. There is some benefit to having triangles connected together so they can "share" a vertex, but not as much as you might think. Since GPUs are massively parallel, it does not matter much where on the screen or where in the buffer your data is.
> Is there any work being done to optimize a volumetric representation of scenes and from that create a set of surfaces with realistic looking shaders or similar?
This is basically where the field was going until nerfs and splats. But then nerfs and splats were such HUGE steps in fidelity, it inspired a ton of new research towards it, and I think rightfully so! Truth is that reality is really messy, so trying to reconstruct logically separated meshes for everything you see is a very hard way to try to recreate reality. Nerfs and splats recreate reality much easier.
Gaussian Splatting radically changed the approach to photogrammetry. Prior approaches to generate surface models, and mapping the captures to materials that a renderer would more or less rasterize with physically accuracy were hitting the ceiling of the technique.
NerF was also a revolution but is very compute intensive.
Even a browser, a mid range GPU, can render millions of splats at 60 frames per seconds. That's how fast it goes and less than a million dense scene can already be totally bluf the eye in most possible angles.
Splatting is the most advanced, promising and already delivered on the promise technique for photogrammetry. The limit is that can't do as much in term of modification to point clouds vs surface with great PBR attributes.
If you take these triangles, make them share vertices, and order them in a certain way, you have a mesh. You can then combine some of them into larger flat surfaces when that makes sense, draw thousands of them in one draw call, calculate intersections, volumes, physics, LODs, use textures with image compression instead of millions of colored objects, etc with them. Splatting is one way of answering the question "how do we reproduce these images in a way that lets us generate novel views of the same scene", not "what is the best representation of this 3D scene".
The aim is to find the light field that describes the scene, and if you have solid objects that function can be described on the surface of those objects. Seems like a much more elegant end result than a cloud of separate objects, no matter what shape they have, since that's much closer to how reality works. Obviously we need to handle volumetrics and translucency as well, but if we model the real surfaces as virtual surfaces I think things like reflections and shadow removal will be easier. At least gaussian splats have a hard time with reflections, they look good from some viewing angles, but the reflections are often handled as geometry [1].
I'm not arguing that it doesn't look good or that it doesn't serve a purpose, sometimes a photorealistic novel view of a real scene is all you want. But I still don't think it's the best representation of scenes.
It made so much sense to me: voxels with view dependent color, using eg. spherical gaussians.
I don't know how it compares to newer techniques, probably badly since nobody seems to be talking about it.
A 3D scene (the digital representation) is structure that can't be reduced to a simple grid. At least it better not to or it wouldn't look great from almost all angles.
Back to the splats...
Gaussian Splatting is a technique designed to tackle what seemed like impossible or at least prove extremely challenging with 3D scene reconstruction. The authors took a radically different approach and demonstrated feasibility. I haven't meant anybody who would look at a gaussian splatting reconstruction of a scene, and claim another method would look better. Or even could look better. Maybe some day, but as of 2025 there isn't.
On the voxel definition. I don't see vowel as encompassing any (as in all) 3d structure representation. I mean by that voxel is a definition.. A good one. But not every representation fit into that definition so we better watch out with what we infer about anything that doesn't fit in.
Imo gaussian splats do not form a voxel. But, let's say they do. So what? No idea how that's relevant to my point which is that gaussian splatting (voxel or not voxel) is a superior technology to any other for 3d reconstructions to date. I even caveated the cases where this method would be totally unhelpful. As of now editing splats is barely a thing (Super splats is super, but all we may do is remove splats) Some software can fuse, even adjusts properties of the splats, areas of splats, but these editing solutions are at their infancy, so they just don't count.
Your point that triangles can be combined into larger flat surfaces and optimized for rendering is a valid, but it doesn't help with the fact that non gaussian splatting methods, including the much slower nerf approach are inferior in the quality (let's say fidelity) they all produce.
Your argument doesn't discuss, compare, or even mention limitations faced by all the traditional mesh-based approaches.
3DGS, I'm not selling the thing just making it clear, is able at its current advancement of the method: to rasterize so efficiently that a millions of splats scene can render at 60 FPS on a mid-range GPU. (As t least it does on my laptop).
All that with the most accurate representation of lighting, reflection. Of whatever the camera was able capture really. Novel inference is just an approximation it doesn't invent anything unless some generative ML is plugged in, faked in, plastered all over so that the word Ai gets mentioned.
I don't think that's me..I think you are confusing the method and parts of the method. Gaussian Splatting is not a technique of generating novel views off some captured data.
Here is the situation: Most click bait articles or even GitHub repos will splash that aspect as if gaussians splatting is about generating the novel views. I should read the paper again but it isn't what I see in the discovery.
But still, let's say it is. On that front it may not outperforms nerf I don't know, it may still be the state of that art, but that's very slow, almost impractical for most workstations, and, doesn't outperform 3DGS on about everything other front.
Your argument that it is not close to how reality is, totally irrelevant again. Even contrary to what CG in general has demonstrated many times. We don't need the concept, what is captures, how things are represented, or how things are displayed to match reality more closely. That's usually the best way to fail, to attempt to compute reality as we believe it to be. Some would even argue with you: what reality are you talking about. We still don't have a clue what reality is.
All we know is that we seem to perceive things a certain way. Our brain may play a movie in there based on that. .it doesn't matter what's there. perception, then tricking the eyes or our neurons is all we have to focus on to make reconstruction valid.
But it's funny, actually the gaussians are based on optical functions. The blending of multiple layers of light wave is also a natural phenomenon. For what we know.
Anyhow, there is a lot of confusion out there about gaussian splats. I suspect not many people understand this tech but many are talking loud about it, confusing everyone else.
I hope you don't see my response as for sake of arguments, your reply was a good read, elegant, with a tone of authority on the question but I invite you to check 3DGS again (yourself not in the news).
Edit: I have no considered the voxel method you've shared. So not claiming gaussian splatting is superior to that, will check the claims though that wouldn't be the first..
I'm more familiar with traditional 3D graphics, so this new wave of papers around gaussian splatting lies outside my wheelhouse.
"Watertight" is a actially a stronger criterion, which requires not only a contigous surface, but one which encloses a volume without any gaps, but "not watertight" suffices for this.
Can anyone who read this suggest something to use to scan room geometry using camera only in real-time (with access to beefy NVIDIA computer if needed) for drone navigation purposes?
Having the model trained on how to construct triangles (rather than blobbly points) means that we're closer to a "take photos of a scene, process them automatically, and walk around them in a game engine" style pipeline.
Are triangles cheaper for the rasterizer, antialiasing, or something similar?
The problem is that any tool or process that converts splats into regular geometry produces plain old geometry and RGB textures, thus loosing its advantage. For this reason splats are (in my opinion) a tool in search of an application. Doubtless some here will disagree.
https://convexsplatting.github.io/
the seminal paper is still this one:
Wouldn't this lead to the full 3D representation?
Go team triangles!
author = {Held, Jan and Vandeghen, Renaud and Deliege, Adrien and Hamdi, Abdullah and Cioppa, Anthony and Giancola, Silvio and Vedaldi, Andrea and Ghanem, Bernard and Tagliasacchi, Andrea and Van Droogenbroeck, Marc},
while on arxiv and the top of the page
Jan Held, Renaud Vandeghen, Adrien Deliege, Abdullah Hamdi, Silvio Giancola, Anthony Cioppa, Andrea Vedaldi, Bernard Ghanem, Andrea Tagliasacchi, Marc Van Droogenbroeck
the first one is SURNAME, NAME separated by "and"
the second one is NAME SURNAME separated by commas
The second one is easier to read by humans, but the first one makes it clearer what is the surname (which would be ambiguous otherwise, when there are composite names). But then again, the first format breaks when someone has "and" in their name, which is not unheard of.
As it stands, it certainly does not resemble readable or parseable english.
‘Better’ formats have been proposed but none have stuck nearly as well. It works, and there’s tooling for it.
Names are ordered from general/family to specific/given.
author = {surname 1, first name 1 and surname 2, first name 2 and ...}
"and" is the separator.