It’s amazing this runs perfectly smooth on my iPhone 12 mini
That is indeed a very cool scene being about to wander around and still have decent resolution
lopsotronic 2 days ago [-]
Ah the timeless joy of falling through the floor geometry.
Seriously though - it's breathtaking.
The first guy who figures out the bridge between splats and dynamism - animation, editing, responsiveness - is going to be one of the immortals of 3d design.
mrandish 17 hours ago [-]
If you don't mind a basic but tangential question... I understand that splats like these are essentially a separate domain from traditional polygonal 3D scenes in a tool like Blender, but is it currently possible to use splats like the strawberry as elements in a Blender scene if they don't animate or interact any more than the camera / lights moving and being occluded by foreground objects?
Remembering how we used to cheat by projecting hi-res texture maps onto simple geometry to save modeling background objects with the trade-off of constraints on size, viewing angle, shadows, etc. With the relative ease of capturing these splats at high-fidelity, can they be used in a scene as projection-map-like 'fakes' except with far fewer constraints?
cubefox 2 days ago [-]
There are many ways to represent 3D data, but animations really only work properly with polygon meshes (e.g. triangle surface meshes or volumetric tetrahedral meshes).
lopsotronic 2 days ago [-]
But the mesh is itself an abstraction, you just need to build that bridge.
We've been leaning away from pure polygons for decades, anyway. Vertex skinning, SDFs, volumetrics, simulation, and a lot more.
The meshes in a From Software game are for exmple hilariously simple, most of the animation is force simulation to make the famous "frizzles" that they like.
cubefox 2 days ago [-]
Vertex skinning is essential for animation and it only works with polygons.
lopsotronic 2 days ago [-]
I'm not sure that's completely accurate? Vertex skinning isn't (necessarily) tied to polygons . . but to having points (or any parameterized features) that can be transformed by a weighted blend of matrices.
The "vertex" in "vertex skinning" is really just "a thing with a position that gets moved."
p' = Σ wᵢ · Mᵢ · p
It's just a position. Triangles can come along for the ride downstream, but they're not essential, which is one of the reasons it's so efficient for some stuff. Polygons are the optimal surface - but surfaces are often extraneous.
Take all this a few hefty grains of salt, I'm an amateur in the field. My 3d/CAD work is strictly in support of my enterprise stuff. And making wicked battlemaps for gaming VTTs, natch.
But I will stand by the overarching statement that polygons are in fact an abstraction, and bridging that abstraction with whatever is in splats would be wicked awesome.
data-ottawa 2 days ago [-]
I don’t know. Maybe today, but tomorrow?
If you can sample points inside a volume, in theory you could do that with splat geometry. If someone figures out a way to pass in animation time to a sampler, sample along geometry/wireframe or something else, and keep it from overly twinkling it might change everything.
I’m hand waving all the complexity into “if done one figures out”, of course.
I just don’t see why this method can’t evolve in the way diffusion models have evolved (knowing very little of the geberative mechanics of splats).
Intralexical 2 days ago [-]
Since splats sample the light field after surface reflection, you can't do realtime shading with splats the way you can with raytracing and rasterization. I guess it could be animated like a holographic movie, but not like a video game and not like a 3D editor, because the light for all angles in all frames has to be precomputed.
cubefox 2 days ago [-]
> If someone figures out a way to pass in animation time to a sampler, sample along geometry/wireframe or something else, and keep it from overly twinkling it might change everything.
Not sure that's what you mean, but there was recently a paper where they put meshless (e.g. voxel or SDF) geometry in an animated tetrahedral mesh "cage" and then animate the meshless model by animating the mesh cage:
Though this currently isn't compatible with 3DGS if I understand the limitations section correctly.
> Finally, our method operates unordered, limiting its suitability for complex volumetric effects. However, a potential solution lies in sorting the generated intervals for proper blending. This enhancement could improve our approach’s compatibility with various meshless representations, such as radiance fields and volumetric lighting.
db48x 2 days ago [-]
It’s easy but a bit data intensive. Take two 3D splat images at different times, optimize them, then interpolate from the first to the second. Repeat at intervals. Now you have a video. A full moving subject is about 500Mbps, although it depends a lot on the quality of the source images that you make the 3D splats from and how detailed the output image is. Search for “4D gaussian splats” to find references.
cubefox 1 days ago [-]
That's just animation like an animated GIF: a series of static frames. What's more interesting is animation in the sense of deformation, as in skeletal/skinned meshes. These deformations require minimal data and can be generated dynamically.
db48x 1 days ago [-]
I can’t think of any reason why it would be impossible to implement skeletal animation of gaussian splats. You still have to create the splats from images though. Just have your subject put their right arm in, then take your images and generate the second splat. Now you can interpolate between them to move the right arm. At least in that one axis. Repeat for other joints. Have them put their whole self in and turn them selves about, etc. How hard could it be? https://www.youtube.com/watch?v=aIqCSpuDwBE
thfuran 2 days ago [-]
You pretty much just need a representation that can be constructed reasonably and interpolated.
17 hours ago [-]
joshvm 2 days ago [-]
That one has a strange rendering error for me, the trees and horizon are in front of the mill building and the exterior isn't properly rendered unless you are in orbit mode. But my mind was a little blown when i discovered that I could walk up the stairs. It needs shift to run!
The scene desperately needs some clipping on the boundaries. If you use an app like Scaniverse, you can add a bounding box to cull far away points which are often poorly reconstructed.
If you have a newer iPhone with a LIDAR scanner, highly recommended. You can make dolls-house renderings of your house or garden which is surprisingly useful for planning and measuring walls/features.
Vinnl 2 days ago [-]
I read [1], but I still don't quite know what I'm looking at. My guess is a 3D model reconstructed from lots of detailed pictures?
Lots of translucent blobs composited to produce the appearance of a strawberry.
There is no mesh or model. The visual surface of the strawberry could be made up of blobs spaced far apart physically and not where the surface appears to be.
This is why they are called radiance fields, they model the light not the geometry.
Practically the blobs positions/rotations can be constrained to better physically match the geometry of a strawberry.
KeplerBoy 2 days ago [-]
I'm not sure i agree. The blobs are exactly where the surface appear to be because they are constrained by multiple viewing angles.
Otherwise the splat would fall apart as soon as the viewing angle is changed slightly (Which it absolutely does in many examples on supersplat, you cannot really create an out of distribution view with 3GS, it's not magic)
jaccola 2 days ago [-]
Yes, my statement was loose. The blob doesn’t really have a position since it is theoretically an infinite distribution in 3 space.
It has a mean, and that mean doesn’t have to lie on the surface, consider the case where the mean is deep inside the strawberry but its spike contributes to the surface appearance (e.g a seed could be represented this way, or it could be represented by a small well-oriented blob on the surface, the optimiser doesn’t care)
Others have provided details about how it works. I suggest zooming way in on that image and you'll start 'breaking though' the surface and that'll help you get an idea of how it works. Important thing is there is no defined geometric surface ("mesh"). Also important to know is that it's very, very hard to get a good splat without taking a ton of photos at different angles. It's also really, really easy to create a crappy looking splat. But when it's done right, it's a marvel
lubesGordi 2 days ago [-]
When you say its very very hard to create a good splat, what do you mean? And what is good? I would say that strawberry is very detailed and its a good splat. I also kind of like the way some of the 'rougher' splats look. I feel like they'd work well in a car racing simulator.
ZeWaka 2 days ago [-]
I don't know, there's plenty of models these days that generate good splats just from objects at home.
I took maybe 10 pictures of a model I built and threw it at my 3060 during dinner and it came out quite nice.
davnicwil 1 days ago [-]
is the point of doing it for the artistic value / challenge or are there other benefits of not using a mesh or physical model of the object?
Oh thanks - I was waiting for a moment where I could turn up sound to watch the other video, but I didn't realise that that would set me back half an hour. This is the perfect amount of background for now!
Tade0 2 days ago [-]
Beautiful.
What I love about gaussian splats is the way they degrade - instead of a hard cutoff or LoD changing spheres into cubes etc., they get increasingly "dreamy" - the basic idea is still there, just less detailed.
I don't know anything about them but it's a cool effect. At least on this strawberry, you're not zooming in but rather traveling closer. I don't see the increasing (made up) detail you'd expect from a zoom, we sort of pop through the skin into an invented interior.
stevep98 2 days ago [-]
They remind me a lot of the 'memories' scene in Minority Report:
I like that they are sort of between a photo and a 3D model. Nothing quite like it.
ACCount37 2 days ago [-]
Yeah, it's an incredibly cool effect. Reality breaking down into fog and frosted glass and paint smudges and slivers of northern lights and all the dandelion fluff. Even navigation becomes harder and less predictable as coherence recedes.
This feels so much closer to how minds must store and process spatial information than the usual 3D models do.
acc_297 2 days ago [-]
its funny that sky features like clouds and blue patches end up being fit very close to ground level because there isn't a difference in perspective to cue in the algorithm that the skybox should be tall, I wonder if there is any way to incorporate the fitting algorithm with simultaneous lidar data about true distances of things to allow scenes to be viewed from further up
amelius 2 days ago [-]
That's what Google Street View should be like more.
0x1ceb00da 2 days ago [-]
Gaussian splats are huge. I don't think they'll scale to google maps level. It'll be too much data.
fragmede 1 days ago [-]
Google's downloaded most of the Internet for decades by this point. I don't think "it'll be too much data" is in their vocabulary.
xattt 2 days ago [-]
Is there a specific name for this “dreaminess” effect?
Apples model to generate Gaussian splats from a single image. Takes about 30 seconds on an M1 Pro.
It falls apart once you move too much, but for a little side-wiggling or a second-eye view for VR, it's great. And looks a lot better than the old approach of depth map + vertex shaders that I use in https://github.com/combatwombat/tiefling. But ml-sharp has 2.6 GB weights, a bit too big to run in the browser.
ben7799 2 days ago [-]
Is this thing the basis of what Apple is doing in the Photos app in the most recent OS revisions?
It seems to work a lot quicker than 30s now on iDevices and Macs.
RobotToaster 2 days ago [-]
Any idea what kind of vram is needed to run this on Nvidia?
kridsdale1 2 days ago [-]
It runs natively on the Photos app in Vision Pro, which shares 16GB of ram with GPU and CPU.
The smallest Nvidia gpu I've run Sharp on is an Nvidia T4 which I think has 16 GB on the chip
ArekDymalski 2 days ago [-]
As I have learned about Gaussian Splatting just a few weeks ago, I have (perhaps funny/naive/stupid) question: is there any progress or at least theoretical chance to have dynamic lighting?
hellohello2 2 days ago [-]
There are some works on doing this directly e.g. https://arxiv.org/abs/2601.23065 but getting accurate materials is a challenge for anything more than diffuse.
AI-based relighting will no doubt start working soon.
aruametello 2 days ago [-]
out of the box, I imagine that surfaces can be lit, but probably not shadowed correctly. (structures aren’t solids, more like particles in 3d space)
it could look like the real-time lighting of an old game engine on rather modern assets. (quake 2-3 era)
or perhaps some "occlusion pre-pass" could be done to create a voxelized sparse volume from the splats that set a "voxel opacity value" for each to absorb light? (not far from how prebaked GI works nowadays)
note: not an expert on rendering, just a nutjob that did stuff in opengl in the old days.
hellohello2 2 days ago [-]
There can be some issues with shadowing yeah, especially if you render with splatting/rasterization, but its fine if you raytrace I think.
chimpanzee2 2 days ago [-]
Just wow!
As I scrolled through the website, I was even more impressed with this one though!
If I'm reading Chrome right, that's 171 MB, for the website, and the data.
If I'm doing the math right, that's 40 seconds worth of the bandwidth from Netflix, at its highest rate.
ComputerGuru 2 days ago [-]
This one keeps crashing the browser after it reaches 100%. Safari/iOS, iPhone 13. I was able to navigate and use a few of the other ones linked to from the comments, though. Curious.
busymom0 2 days ago [-]
I have the same phone and it crashed for me too after reaching 100%
mkmk 2 days ago [-]
Beautiful and quite neat to 'walk' up into the ceiling and look down. Feels like you're either quasimodo or God, depending on how nuts you are.
FigmentEngine 2 days ago [-]
shame the bishop behind looks a bit flat though ;-)
painted-now 2 days ago [-]
It definitely looks impressive.
But something looks off: the red area around the "seeds" is pushed towards the center of the strawberry - or that at least the outer most layer is somewhat transparent and some deeper layers are visible.
danybittel 1 days ago [-]
Those are artefacts. Splats are not perfect around reflections.
vipshek 2 days ago [-]
This took me down a rabbit hole that led to this company, doing Gaussian splat videos: https://www.4dv.ai/. Fascinating.
Centigonal 2 days ago [-]
This is like a beautiful little miniature. It's cool to see gaussian splatting applied to a detailed small thing versus a big scene.
I have a question about perhaps the most boring aspect of this strawberry: the license. you write, "You can download it under CC BY license, but attribution is appreciated rather than required." IANAL, but I'm pretty sure you can't license your work CC-BY and then waive the BY requirement in the description. Rather, you'd have to license it with something more permissive like CC0 and request attribution if you want attribution to be optional. Is that right?
RobotToaster 2 days ago [-]
I'm pretty sure it's allowed, just as saying "do what you want with it" is an informal license, it's just a little pointless.
danybittel 2 days ago [-]
That's what I thought too.. supersplat has no way to set it to CC0 otherwise.
CobrastanJorji 2 days ago [-]
It's their content. They can do anything they like.
Sort of. There are countries like France where attribution rights are fundamentally inalienable, and the author can always demand attribution, even after forever waiving the right to attribution. But in the US, the party who benefits from a contractual provision can generally choose to ignore or forfeit that provision. Whether it's still called the "CC BY" after that is debatable, since the whole point is attribution, but licensing by the CC BY and immediately waiving that requirement seems legitimate to me.
The filesize of a 3d animated splat is seemingly very small, and the method enables ~arbitrary FPS. But it seems the setup required to record it is still huge and expensive, which limits its usefulness.
Even with that there are some interesting use cases, eg. I'd love to be able to watch concerts this way, and freely move around the stage and crowd from any angle.
idoco 2 days ago [-]
Great video. I was about to share it here myself.
lucb1e 2 days ago [-]
If you just see a blurry image and nothing loads or happens, check the javascript console if it says "WebGL not supported"
evrimoztamur 2 days ago [-]
There is a faint sensation of translucency, I wonder if that's an artefact of the process, or if it's the actual optics of the surface layer if the strawberry...
danybittel 2 days ago [-]
It's an artefact unfortunately. Gaussian splats have no concept of refraction and have a hard time dealing with reflection. Highlights, usually so so. Something I always wrangle.
zokier 2 days ago [-]
I wonder if that is somehow related to how you seem to have very strong studio light for the subjects? Somehow the bright light penetrating deeper into the material or something like that
danybittel 2 days ago [-]
The light doesn't need to be completely flat like what you'd do when scanning it more traditionally, for meshing. The problem is when the highlight is sharp and reflects it's surrounding. You could remove it, with cross polarization.. But then it wouldn't look realistic anymore.
vanderZwan 2 days ago [-]
Well, at certain angles you actually get very noticeable gaps in the strawberry that are visible when rotating it, but almost invisible when static. I think it's mostly due to that.
(I'm ... still not sure what I'm looking at on TFA, and whether or not my browser configuration fails to fully present the site as intended.... OK, if all you're seeing is a blurred image of a strawberry, yes, you'll want to enable a bunch of JS resources. I'm using uMatrix, several hosts must be enabled.)
karmakaze 2 days ago [-]
I like to think of Gaussian Splatting as a stage full of improv actors who are iteratively/concurrently filling details in regions down to pixels until the full picture is painted.
vessenes 2 days ago [-]
Dany, this is so cool.
I'm wondering if the splat community has decided this paper is valuable -- https://github.com/fraunhoferhhi/Self-Organizing-Gaussians -- looking at all the detail in the strawberry splat made me wonder how small one can get the download, and what the current state of the art is for compression.
danybittel 2 days ago [-]
Thanks! We have two compressed formats, the sog by PlayCanvas and spz with sparkjs. Both now support LODs and compress really well.
zokier 2 days ago [-]
My intuition is that in theory focus stacking should not be necessary as preprocessing step for 3dgs (or photogrammetry). Does anyone know if there is any recent developments in this regard?
Focus stacking generally is not perfect process and can lead to artifacts/errors and I'd imagine those can then compound when stacked images are used for 3dgs. Also the image focus actually provides some depth data in itself that could be useful?
My take.. at a macro scale, the dof is usually so small, that it's hard to get a reliably track. So you'd need some sort of way to tell that these stacked photos belong into a series, and then you sort of are doing focus stacking :-)
I do think the alignment algorithm could be improved. Maybe the approaches I linked could be used to make a much more robust focus stacking algorithm, that also corrects for 3D geometry. That would be really cool!
KeplerBoy 2 days ago [-]
If you don't focus stack and try to train on partially unfocused images, the optimizer will try to match the rendered view to be also partially unfocused.
You would have to mask out the blurry areas for each image. I guess one could just implement a feature where the optimizer only optimizes gaussians within the sharp distances relative to the camera.
zokier 2 days ago [-]
Other way of looking at the question is if you could make focus stacking better by using the full multi-view dataset? Afaik focus stacking essentially does depth estimation so it seems like multiple views would help with that.
Another way would be some kind of 4d GS where one dimension is the focus distance. But I'd guess the renders would inherently have shallow depth then, which is less useful usually.
zardo 2 days ago [-]
> Another way would be some kind of 4d GS where one dimension is the focus distance.
That seems like the way to do it, someone has to be working on that.
Edit: I completely missed that this was posted by him (:
kridsdale1 2 days ago [-]
Incredible that specular highlight isotropy vectors are somehow encoded.
Kalendermann 2 days ago [-]
This was also my first thought when I zoomed in into the strawberry. I wonder if you can achieve a microscope like effect with a more suitable setup. E.g. better lighting, zoom, lens, etc.
danybittel 2 days ago [-]
I have done 2x macro (an ant).. and want to try 5x.. but as you get closer, the depth of field becomes really shallow. You can do focus stacking but you risk that the individual areas in focus are less ideal aligned and the tracking can't make any sense out of the geometry anymore.
KeplerBoy 2 days ago [-]
Can you elaborate why you chose slang-splat over let's say Lichtfeld studio?
How does it compare to the other splat-training tools?
danybittel 2 days ago [-]
I usually use PostShot.. but the quality was not very good. I want to try LichtFeld but my Graphics Card has too little memory.. so I reached out on twitter, some people ran tests and Mykhailo got some better quality out of it so I took his training. You can d/l the COLMAP dataset for free and try yourself.
KeplerBoy 2 days ago [-]
[dead]
wren6991 2 days ago [-]
Noting the permissive license, could we be witnessing the birth of a new Utah teapot or Sponza atrium?
danybittel 2 days ago [-]
Oh, that would be amazing! The photos are also available and some people definitely take it for a test ride. However.. This dataset with the stacking is far from generic.
MattCruikshank 2 days ago [-]
I know feelings about AI are mixed. But when AI can dream up gaussian splats in real time, from a prompt, and do refinement as you get closer to things... That's going to be pretty bonkers.
perching_aix 2 days ago [-]
That's kinda what NERFs are (neural radience fields). They actually preceeded this Gaussian story, with Gaussians coming in and outperforming them. Maybe they'll merge later for something even better, I don't know enough about them.
MattCruikshank 2 days ago [-]
Sure, but NERFs were trying to match your input photos and poses, not some arbitrary prompt, if I understand correctly.
Lerc 2 days ago [-]
Yes they are image generators. You want image generator generators.
A diffusion style process generating gausians instead of pixels. You could possibly do nerfs that way, but it would be effectively generating a trained network. If you managed to do that it would have broad application throughout the field of AI.
dpoloncsak 2 days ago [-]
What would this look like in practice? A net that outputs weights for a new net to use?
xigoi 2 days ago [-]
Couldn’t you “uncurry” such a process to have only a single network?
dpoloncsak 2 days ago [-]
Probably? I'm no expert, just a SysAdmin trying to keep up really... but in my head it's would look like a form of MoE that would gen the 'Expert' model on demand instead of having a variety baked in.
That's assuming you could even reasonably train a neural net to output viable weights, of course.
cubefox 2 days ago [-]
NERFs have significantly higher image quality than 3D Gaussian Splatting or more recent similar techniques, though they are much slower to render.
thrownthatway 2 days ago [-]
This one month old video did a reasonable job of getting my entirely ignorant self relatively up to day on NERFs and Gaussian Splats:
I could see a kind of fun game / design tool / worldbuilding where you get a blurry world and you describe what you are seeing, and it comes into focus. The game world, mechanics, aesthetic, and playstyle build as you form your view. A sort of fog of war meets rorschach game.
Lerc 2 days ago [-]
This will be the future of a class of 3d Game. the prompt may not be text however.
An input of a kind of schematic representation of what the designer wants would be better. It may resemble a storyboard or a collection of organised notes that large projects tend to already use.
Fully generative could probably do some cool things, but people will still want to bring their peronal vision to life.
satvikpendem 2 days ago [-]
Curious, why wouldn't the future be a full world model like Google's Genie? It just renders every pixel so someone could still make their vision come to life via a prompt too.
Lerc 2 days ago [-]
It could be done that way but you are spending parameters managing the fact that the output changes completely with a change in view position or orientation. A observer independent model only has to manage changes of things that are actually changing in the world.
Since you can view Gaussian splats from any POV you end up generating an output that is closer to the representation of the world instead of a projection that a single observer sees.
MattCruikshank 2 days ago [-]
Yeah, when you describe that, I picture Wave Function Collapse to generate a map schematic... And then a text prompt, and some style photos the designers want it to match.
corysama 2 days ago [-]
We are currently at real-time video generation that can be converted to splats or meshes.
This sounds like it could be a great concept for a future sequel to LSD: Dream Emulator
yard2010 2 days ago [-]
If I'm not mistaken that is the inspiration for one of Alt-J albums
sbarre 2 days ago [-]
Looking at all the outdoor scenes that you can walk around, I wonder how long until we start seeing this in places like Google Maps/Earth, as a replacement for the low-res 3D renderings we have now.
I guess the number of samples required to generate a GS is the constraint now, but maybe that will get solved.
rendering them is also non trivial from what i understand, since the millions of indivudal point positions need to be recalculated all the time while moving
kridsdale1 2 days ago [-]
Turns out, GPUs are amazing at this.
weystrom 2 days ago [-]
I tried making one, but I couldn't make through the camera position tracking bit, software was super unintuitive. Very interested in gaming applications for this tech, but still waiting for it to be more approachable from a layman's point of view.
ChadNauseam 2 days ago [-]
One thing you can do with this that works quite well is use it to "decrop" (widen the viewing angle) of a video. This is very useful for stabilization which usually involves cropping. Here's an example: https://x.com/i/status/2051504427287404568
Once they get quicker to train, I expect this to be a popular use of them
Does anyone know if it's already possible to build gaussian splat of the person that moves/rotates from the single camera? (I.e. to use sequence of frames to reconstruct occluded parts of the body for other frames)
As I understand it, Gussian Splats aren’t a method of constructing missing data in the sense you’re asking here.
But there are other, well established, methods of generating missing data in convincing manner, that are beyond my field of expertise or interest to be able to repeat here.
With the added benefit that if I’m wrong, being wrong can be a great way to spur discussion 8)
divan 2 hours ago [-]
There is definitely some body of research around what I'm asking [1] [2]. Just curious if someone have a good grasp on the current state of it.
From the link: "Shot from 90 perspectives, 88 focus stacked images each. Nikon Z8, full frame, f/7.1, exposure 1/160, ISO 100, Laowa 180mm macro lens, with LED light and bluescreen."
Insane!
danybittel 2 days ago [-]
And it only takes 20 Minutes to shoot all 7920 photos, the Z8 is crazy fast.
dudefeliciano 2 days ago [-]
i made some decent splats (admittedly much lower quality than this) by taking video with my iphone13 mini and then chopping it up into individual frames via ffmpeg
MattCruikshank 2 days ago [-]
Where's the Lytro camera when you need one?
I was really pulling for OTOY to keep making light field capture and display technology...
danybittel 2 days ago [-]
There is actually still a Lytro type camera for industrial application available: https://raytrix.de/
Too low res, too expensive for my use case unfortunately.
carlos-menezes 2 days ago [-]
You might want to throw that one away :)
danybittel 2 days ago [-]
It is in fact still on it's mount and slowly rotting / molding.. for a second capture :-)
p0w3n3d 2 days ago [-]
Yup. It's rotten on the other side. Or maybe lead poisoned
gobdovan 2 days ago [-]
Sorry if I fell for Poe's law, but just for clarity, the strawberry's rotten underside is most likely missing splats in the rendering.
p0w3n3d 2 days ago [-]
Of course it is. That's where the joke comes from...
Edit. TIL Poe's law
dudefeliciano 2 days ago [-]
not sure if that's a joke but i think that's just the effect of the strawberry being placed on a glass/plastic surface to be filmed from underneath
eckelhesten 1 days ago [-]
I’m curious to why not all modern PC/console game developers use this technology to create realistic graphics in their games?
If my old phone can render it with fairly high frame rate, I’m sure a full game with realistic graphics would work well on a mid/high end PC.
steve_adams_86 1 days ago [-]
I’m not sure if the same limitations apply today, but when I last looked into it:
1. Lighting is baked in so they don’t fit well in dynamically lit environments
2. Splats aren’t as suitable for bodies you’d animate, like meshes are. They also don’t work well for very thin or sharp surfaces in general
3. Splats are pretty memory-hungry so large scenes would require better hardware than consoles can offer
These might not be as true today, and I can’t recall exactly when I read this. Probably 3 years ago or so. I recently read they’re making their way into games, so it’ll happen as the kinks are worked out.
mgaunard 2 days ago [-]
What happened to the bottom of that poor strawberry?
danybittel 2 days ago [-]
It was mounted at the bottom.. and I can't quite reach it with my camera. Might have to try some two pass way.
CatMustard 2 days ago [-]
I wonder would a good, sharp needle and thread make for good mounting for a soft object like this? Thread the needle, pass it right through the strawberry and the secure the thread on something above and below. As long as the strawberry doesn't slide down the thread (hopefully a strawberry is light enough friction would hold it in place!)
Anyway, very cool splat, fair play
danybittel 2 days ago [-]
I glue mounted the strawberry on three nails and used pins to secure it.
I have to think about your idea.. I don't think friction would be enough to hold it in place.. it would probably be hard to knot the top onto something too, as that's where the light is: https://i.imgur.com/vIjw6pc.jpeg
But I'm always experimenting with the mounting, thanks for the inputs.
gobdovan 2 days ago [-]
Mount it on a needle/skewer, it should let you capture it in one pass.
4gotunameagain 2 days ago [-]
Assuming that the person that did this has not tried that. If you look at the setup photos, the grape is resting on a couple of nails. This suggests that many different things have been tried.
2 days ago [-]
josh-wrale 2 days ago [-]
How about green screen + rotate the strawberry on a skewer
gobdovan 2 days ago [-]
Gaussian splat casualty. The bottom looks like partially missing from the reconstruction.
timonoko 2 days ago [-]
When you cut the splat in half, result is either fuzzy fog or sort-of fibrous crystals. As depicted here.
voidUpdate 2 days ago [-]
Gaussian splats look really good from a distance, but as soon as you zoom in, they really fall off a cliff :/
FrogHire 20 hours ago [-]
This is so beautiful. Am I crazy for saying I kinda wanna cry seeing this strawberry?
0xWTF 2 days ago [-]
How did they decide what the inside of the strawberry looks like? Because that seems very incorrect.
db48x 2 days ago [-]
The flesh of the strawberry is very slightly translucent. By taking images from many angles, you can derive some information about the interior. This is not a separate step, it is simply the optimizer finding splats that contribute the right amount of color and light at various viewing angles. Of course those splats aren’t really going to look right to anyone who has ever eaten a strawberry, because they are only derived from the input images and not your past memories of a real strawberry.
You’ll also see the same type of problems in any incomplete part of any scene. Go poke around any of them and you’ll find places where there wasn’t enough information to make a satisfying reconstruction. For example, the back of the moon <https://superspl.at/scene/2ac8f423>, the fridge in the coffee shop <https://superspl.at/scene/6a0c3ccf>, underneath the footbridge in the forest <https://superspl.at/scene/23ebe85c> (or indeed anything in the distance), etc, etc.
a1o 2 days ago [-]
Can you show the setup?
(Can we do a Gaussian Splat of the setup of the photograph for the Gaussian Splat of the Strawberry?)
The splat of the studio has the perfect amount of detail. It looks like you're streaming from the camera direct to the computer usually? How do you check the progress / quality while capturing? Seeing the (great) results makes me more curious about the process of creating now.
danybittel 2 days ago [-]
Thanks! I use the computer only to setup the shot, adjust lighting make test stacks of different angles. If everything is good, I disconnect and capture to the memory stick. During the shooting I only adjust the beginning or end of the rail a bit, so everything is in focus at some point. Triggering (manually) the rotary disk still happens from the computer.
a1o 2 days ago [-]
THAT IS AMAZING!! Seriously, impressive work! Thanks for the link.
porphyra 2 days ago [-]
That new Laowa 180mm macro lens is amazing. So sharp, free of chromatic aberrations, compact, and I like the long working distance and reduced perspective distortion that the 180mm focal length offers.
MattCruikshank 2 days ago [-]
I want some math Phds to sit down with the Corridor Crew guys and figure out how to make Gaussian Splat reconstruction way better, the way they came up with CorridorKey.
bestouff 2 days ago [-]
This doesn't work at all for me (Linux desktop, tried with Firefox and Chrome). I only see "fullscreen-extended blurry thumbnails" of the splats.
probably_wrong 2 days ago [-]
Works for me with Firefox 140.10.2esr on Devuan 5.
corford 2 days ago [-]
Works for me on Debian 13, Firefox 140.10.2esr-1~deb13u and Strix Halo gfx
slimbuck 2 days ago [-]
If you can, please check any output/errors on the developer console?
HTTPS-First Mode: Upgrading insecure speculative TCP connection “http://superspl.at/” to use “https”.
HTTPS-First Mode: Upgrading insecure request “http://superspl.at/” to use “https”.
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://sentry.sc-prod.net/api/302/envelope/?sentry_version=7&sentry_key=d107d06d48c2e0f20554f721048e3faa&sentry_client=sentry.javascript.react-router%2F10.50.0. (Reason: CORS request did not succeed). Status code: (null). 2
can't access property "messageManager", target is null ExtensionParent.sys.mjs:75:42
verifyActorForContext resource://gre/modules/ExtensionParent.sys.mjs:75
recvAPICall resource://gre/modules/ExtensionParent.sys.mjs:1186
_recv resource://gre/modules/ConduitsChild.sys.mjs:90
receiveMessage resource://gre/modules/ConduitsParent.sys.mjs:474
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://sentry.sc-prod.net/api/302/envelope/?sentry_version=7&sentry_key=d107d06d48c2e0f20554f721048e3faa&sentry_client=sentry.javascript.react-router%2F10.50.0. (Reason: CORS request did not succeed). Status code: (null). 2
Missing resource in locale fr: devtools/client/toolbox.ftl
can't access property "messageManager", target is null 3 ExtensionParent.sys.mjs:75:42
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://sentry.sc-prod.net/api/302/envelope/?sentry_version=7&sentry_key=d107d06d48c2e0f20554f721048e3faa&sentry_client=sentry.javascript.react-router%2F10.50.0. (Reason: CORS request did not succeed). Status code: (null).
TypeError: Response constructor: Response body is given with a null body status. Utils.sys.mjs:279:17
monkpit 2 days ago [-]
I’m impressed by Gaussian Splatting and I love these kind of demos, but I have a noob question - can they respond to lighting?
dagmx 2 days ago [-]
Not traditional Gaussian splats since they have their lighting baked in but there are alternate forms that have the ability to do so but largely in academia or very specific use cases
buibuibui 2 days ago [-]
How can I start creating Guassian Splat of my environment with my 360 camera? Is it possible to do that with local software?
arnabdey0503 2 days ago [-]
Very nice. did you segment the images before?
danybittel 2 days ago [-]
Yes it's shoot in front of a bluescreen.
stuxnet79 2 days ago [-]
Word of warning to mobile users, this website completely crashed my Firefox instance on Android.
duckerduck 2 days ago [-]
Makes me wonder if we'll ever see a video game where the world is created by set designers irl.
lubesGordi 2 days ago [-]
Sim racing is at least kind of like that.
account42 1 days ago [-]
> 500
> Oops!
> navigator.sendBeacon is not a function
And it shouldn't be one.
NoSalt 2 days ago [-]
Is it me, or does the backside of that berry not look too good?
ted_dunning 2 days ago [-]
If you don't like the backside, check out the inside!
bozdemir 2 days ago [-]
this is awesome, I wonder what's under there, looks black, maybe thats where they mounted and rotated the strawberry...
danybittel 2 days ago [-]
Yes mounting.. and I can't quite reach all the way from below.
BobbyTables2 2 days ago [-]
Looks like it’s already going bad…
ramon156 2 days ago [-]
Imagine if we start designing GPUs around this technology as opposed to vectors. Imagine what voxel engines would look like. Would love a simulated experience or a small scale that theorizes about this.
brazzy 2 days ago [-]
Lovely! How was the mechanical setup to ensure that all those shots are consistent, and how long did it take?
danybittel 2 days ago [-]
I posted some pictures.. takes only 20 min!
thatxliner 1 days ago [-]
it's weird at the bottom
varispeed 2 days ago [-]
Thanks for the reminder how fucked up British government is. Can't run VPN here. (imgur is not available in the UK thanks to those authoritarian twats called Labour)
Can't install anything on this particular machine.
classified 2 days ago [-]
Impressive, but my poor GPU is melting :)
2 days ago [-]
2 days ago [-]
timonoko 2 days ago [-]
What? KIRI Engine makes splats. I always wondered what 3DGS might mean.
Yes. I knoweth what "splats" are: They are splats of fuzzy blobs on the display surface.
tantalor 2 days ago [-]
Really terrible performance in Chrome, I'm getting between 10-15fps.
What's the matter?
jrflo 2 days ago [-]
It appears to be rendering locally, my fans started spinning up when I was wandering through another image on the site.
tantalor 2 days ago [-]
Where else would it render??
jrflo 2 days ago [-]
I just meant that it's rendering the 3D view live in your browser, not streaming a video of the rendered output
andybak 2 days ago [-]
I mean streaming renders are a thing but they're very much the exception not the rule
artursapek 2 days ago [-]
ew the bottom is moldy
lightedman 2 days ago [-]
A Youtuber that records jookin (a mid-South form of dance) uses Gaussian splats for his videos to bring the dancers out into the forefront and hold center stage, it's a neat trick.
This is one of the most endearing things about open source IMHO, the way people can find novel uses for it.
That is indeed a very cool scene being about to wander around and still have decent resolution
Seriously though - it's breathtaking.
The first guy who figures out the bridge between splats and dynamism - animation, editing, responsiveness - is going to be one of the immortals of 3d design.
Remembering how we used to cheat by projecting hi-res texture maps onto simple geometry to save modeling background objects with the trade-off of constraints on size, viewing angle, shadows, etc. With the relative ease of capturing these splats at high-fidelity, can they be used in a scene as projection-map-like 'fakes' except with far fewer constraints?
We've been leaning away from pure polygons for decades, anyway. Vertex skinning, SDFs, volumetrics, simulation, and a lot more.
The meshes in a From Software game are for exmple hilariously simple, most of the animation is force simulation to make the famous "frizzles" that they like.
The "vertex" in "vertex skinning" is really just "a thing with a position that gets moved."
p' = Σ wᵢ · Mᵢ · p
It's just a position. Triangles can come along for the ride downstream, but they're not essential, which is one of the reasons it's so efficient for some stuff. Polygons are the optimal surface - but surfaces are often extraneous.
Take all this a few hefty grains of salt, I'm an amateur in the field. My 3d/CAD work is strictly in support of my enterprise stuff. And making wicked battlemaps for gaming VTTs, natch.
But I will stand by the overarching statement that polygons are in fact an abstraction, and bridging that abstraction with whatever is in splats would be wicked awesome.
If you can sample points inside a volume, in theory you could do that with splat geometry. If someone figures out a way to pass in animation time to a sampler, sample along geometry/wireframe or something else, and keep it from overly twinkling it might change everything.
I’m hand waving all the complexity into “if done one figures out”, of course.
I just don’t see why this method can’t evolve in the way diffusion models have evolved (knowing very little of the geberative mechanics of splats).
Not sure that's what you mean, but there was recently a paper where they put meshless (e.g. voxel or SDF) geometry in an animated tetrahedral mesh "cage" and then animate the meshless model by animating the mesh cage:
https://diglib.eg.org/server/api/core/bitstreams/bd94e19b-98...
https://youtube.com/watch?v=6lKAvxV2mno
https://youtube.com/watch?v=3c3-ue-fd88
Though this currently isn't compatible with 3DGS if I understand the limitations section correctly.
> Finally, our method operates unordered, limiting its suitability for complex volumetric effects. However, a potential solution lies in sorting the generated intervals for proper blending. This enhancement could improve our approach’s compatibility with various meshless representations, such as radiance fields and volumetric lighting.
The scene desperately needs some clipping on the boundaries. If you use an app like Scaniverse, you can add a bounding box to cull far away points which are often poorly reconstructed.
If you have a newer iPhone with a LIDAR scanner, highly recommended. You can make dolls-house renderings of your house or garden which is surprisingly useful for planning and measuring walls/features.
[1] https://en.wikipedia.org/wiki/Gaussian_splatting
There is no mesh or model. The visual surface of the strawberry could be made up of blobs spaced far apart physically and not where the surface appears to be.
This is why they are called radiance fields, they model the light not the geometry.
Practically the blobs positions/rotations can be constrained to better physically match the geometry of a strawberry.
Otherwise the splat would fall apart as soon as the viewing angle is changed slightly (Which it absolutely does in many examples on supersplat, you cannot really create an out of distribution view with 3GS, it's not magic)
It has a mean, and that mean doesn’t have to lie on the surface, consider the case where the mean is deep inside the strawberry but its spike contributes to the surface appearance (e.g a seed could be represented this way, or it could be represented by a small well-oriented blob on the surface, the optimiser doesn’t care)
I took maybe 10 pictures of a model I built and threw it at my 3060 during dinner and it came out quite nice.
What I love about gaussian splats is the way they degrade - instead of a hard cutoff or LoD changing spheres into cubes etc., they get increasingly "dreamy" - the basic idea is still there, just less detailed.
Take for example this scene:
https://superspl.at/scene/e721ea7c
If you navigate closer to the trees, things around you become blurry - as if the very fabric of reality unraveled.
https://bayardrandel.com/gaussographs
More recent work on my instagram
https://www.instagram.com/bayardrandel/
https://www.youtube.com/watch?v=arTIRgdEb1g
This feels so much closer to how minds must store and process spatial information than the usual 3D models do.
Apples model to generate Gaussian splats from a single image. Takes about 30 seconds on an M1 Pro.
It falls apart once you move too much, but for a little side-wiggling or a second-eye view for VR, it's great. And looks a lot better than the old approach of depth map + vertex shaders that I use in https://github.com/combatwombat/tiefling. But ml-sharp has 2.6 GB weights, a bit too big to run in the browser.
It seems to work a lot quicker than 30s now on iDevices and Macs.
AI-based relighting will no doubt start working soon.
it could look like the real-time lighting of an old game engine on rather modern assets. (quake 2-3 era)
or perhaps some "occlusion pre-pass" could be done to create a voxelized sparse volume from the splats that set a "voxel opacity value" for each to absorb light? (not far from how prebaked GI works nowadays)
note: not an expert on rendering, just a nutjob that did stuff in opengl in the old days.
As I scrolled through the website, I was even more impressed with this one though!
https://superspl.at/scene/c67edb74
If I'm reading Chrome right, that's 171 MB, for the website, and the data.
If I'm doing the math right, that's 40 seconds worth of the bandwidth from Netflix, at its highest rate.
But something looks off: the red area around the "seeds" is pushed towards the center of the strawberry - or that at least the outer most layer is somewhat transparent and some deeper layers are visible.
I have a question about perhaps the most boring aspect of this strawberry: the license. you write, "You can download it under CC BY license, but attribution is appreciated rather than required." IANAL, but I'm pretty sure you can't license your work CC-BY and then waive the BY requirement in the description. Rather, you'd have to license it with something more permissive like CC0 and request attribution if you want attribution to be optional. Is that right?
Sort of. There are countries like France where attribution rights are fundamentally inalienable, and the author can always demand attribution, even after forever waiving the right to attribution. But in the US, the party who benefits from a contractual provision can generally choose to ignore or forfeit that provision. Whether it's still called the "CC BY" after that is debatable, since the whole point is attribution, but licensing by the CC BY and immediately waiving that requirement seems legitimate to me.
The filesize of a 3d animated splat is seemingly very small, and the method enables ~arbitrary FPS. But it seems the setup required to record it is still huge and expensive, which limits its usefulness.
Even with that there are some interesting use cases, eg. I'd love to be able to watch concerts this way, and freely move around the stage and crowd from any angle.
(I'm ... still not sure what I'm looking at on TFA, and whether or not my browser configuration fails to fully present the site as intended.... OK, if all you're seeing is a blurred image of a strawberry, yes, you'll want to enable a bunch of JS resources. I'm using uMatrix, several hosts must be enabled.)
I'm wondering if the splat community has decided this paper is valuable -- https://github.com/fraunhoferhhi/Self-Organizing-Gaussians -- looking at all the detail in the strawberry splat made me wonder how small one can get the download, and what the current state of the art is for compression.
Focus stacking generally is not perfect process and can lead to artifacts/errors and I'd imagine those can then compound when stacked images are used for 3dgs. Also the image focus actually provides some depth data in itself that could be useful?
My take.. at a macro scale, the dof is usually so small, that it's hard to get a reliably track. So you'd need some sort of way to tell that these stacked photos belong into a series, and then you sort of are doing focus stacking :-) I do think the alignment algorithm could be improved. Maybe the approaches I linked could be used to make a much more robust focus stacking algorithm, that also corrects for 3D geometry. That would be really cool!
You would have to mask out the blurry areas for each image. I guess one could just implement a feature where the optimizer only optimizes gaussians within the sharp distances relative to the camera.
Another way would be some kind of 4d GS where one dimension is the focus distance. But I'd guess the renders would inherently have shallow depth then, which is less useful usually.
That seems like the way to do it, someone has to be working on that.
searching...
https://dof-gaussian.github.io/
For example this bumblebee: https://superspl.at/scene/cf6ac78e
Edit: I completely missed that this was posted by him (:
A diffusion style process generating gausians instead of pixels. You could possibly do nerfs that way, but it would be effectively generating a trained network. If you managed to do that it would have broad application throughout the field of AI.
That's assuming you could even reasonably train a neural net to output viable weights, of course.
https://youtu.be/X8yRlA7jqEQ
An input of a kind of schematic representation of what the designer wants would be better. It may resemble a storyboard or a collection of organised notes that large projects tend to already use.
Fully generative could probably do some cool things, but people will still want to bring their peronal vision to life.
Since you can view Gaussian splats from any POV you end up generating an output that is closer to the representation of the world instead of a projection that a single observer sees.
https://research.nvidia.com/labs/sil/projects/lyra2/
I guess the number of samples required to generate a GS is the constraint now, but maybe that will get solved.
https://youtu.be/gXug7Kb3p4I
Once they get quicker to train, I expect this to be a popular use of them
vs
48meg
Splats make pretty pictures but they are 10x the data for pretty much anything I've seen.
3gig for this one: https://superspl.at/scene/8429e5e2
https://youtu.be/X8yRlA7jqEQ
It kinda splatted my mind.
As I understand it, Gussian Splats aren’t a method of constructing missing data in the sense you’re asking here.
But there are other, well established, methods of generating missing data in convincing manner, that are beyond my field of expertise or interest to be able to repeat here.
With the added benefit that if I’m wrong, being wrong can be a great way to spur discussion 8)
[1] https://openaccess.thecvf.com/content/CVPR2025/papers/Wu_Sin...
[2] https://arxiv.org/abs/2409.04196
I was really pulling for OTOY to keep making light field capture and display technology...
Edit. TIL Poe's law
If my old phone can render it with fairly high frame rate, I’m sure a full game with realistic graphics would work well on a mid/high end PC.
1. Lighting is baked in so they don’t fit well in dynamically lit environments
2. Splats aren’t as suitable for bodies you’d animate, like meshes are. They also don’t work well for very thin or sharp surfaces in general
3. Splats are pretty memory-hungry so large scenes would require better hardware than consoles can offer
These might not be as true today, and I can’t recall exactly when I read this. Probably 3 years ago or so. I recently read they’re making their way into games, so it’ll happen as the kinks are worked out.
Anyway, very cool splat, fair play
But I'm always experimenting with the mounting, thanks for the inputs.
You’ll also see the same type of problems in any incomplete part of any scene. Go poke around any of them and you’ll find places where there wasn’t enough information to make a satisfying reconstruction. For example, the back of the moon <https://superspl.at/scene/2ac8f423>, the fridge in the coffee shop <https://superspl.at/scene/6a0c3ccf>, underneath the footbridge in the forest <https://superspl.at/scene/23ebe85c> (or indeed anything in the distance), etc, etc.
(Can we do a Gaussian Splat of the setup of the photograph for the Gaussian Splat of the Strawberry?)
Last lines:
> Oops!
> navigator.sendBeacon is not a function
And it shouldn't be one.
Yes. I knoweth what "splats" are: They are splats of fuzzy blobs on the display surface.
What's the matter?
https://www.youtube.com/watch?v=k0MGoFaIiWs - WARNING - heavily adult lyrics and a loud starting "MOTHERFU*AAAAAAS" right off the top.
https://youtu.be/g1-46Nu3HxQ?si=y_u257DzgOg2QV83