Live data from Hacker News

I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

youtube.com

41–50 of 81 posts

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#41
post #19
post #17

Earlier quoted context omitted.

I'm not super familiar with this area so I don't follow... Why is animation any more difficult? I would think you could attach the basic 3D shapes to a skeleton the same way you would with polygons.

There are lots of reasons you don’t see a lot of SDF skeletal rigging & animation in games. It’s harder because the distance evaluations get much more expensive when you attach a hierarchy of warps and transforms, and there are typically a lot of distance evaluations when doing ray-marching. This project reduces the cost by using a voxel cache, but animated stuff thwarts the caching, so you have to limit the amount o…

One possibility, a little backwards maybe, is to produce a discrete SDF from e.g. a mesh, by inserting it in an octree. The caching becomes the SDF itself, basically. This would let rendering be done via the SDF, but other logic could use the mesh (or other spatial data structure).

Or could the engine treat animated objects as traditional meshed objects (both rendering and interactions)? The author says all physics is done with meshes, so such objects could still interact with the game world seemingly easily. I imagine this would be limited to characters and such. I think they would look terrible using interpolation on a fixed grid anyways as a rotation would move the geometry around slightly, making these objects appear "blurry" in motion.

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#42
the problem with SDF engines is that you have to reinvent everything, as current pipelines rely on triangles.

That means:

- Software to model using SDF (like Womp)

- Technique to animate skeletons using SDFs

- Tool to procedural texture surfaces using SDFs

At least he solved the physics part, which is also complex.

And also, his way of carving is by instantiating new elements, which works for small carves, but if you plan to have lots of tunels, then the number of instances is going to skyrocket.

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#44
post #43

Excellent technical presentation! Though the style itself is a bit too "clay-like", like I wouldn't expect a cube melding with the terrain sand to be a smooth glued connection. Is that some "inherent" SDF thing or just a style of the demo?

I believe you can do regular hard edged intersections. You can see in his operator list some are listed as “smoothSubtract” and some are just “subtract”

It’s just easy to do the melding thing with SDFs so a lot of people do it

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#45

There’s game developers who develop games. And there’s game developers who develop game engines thinking they are developing games.

Nothing wrong with that - Engine developers often have "defining" titles - aka tech demos they work on to push the field

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#46
post #19

Earlier quoted context omitted.

There are lots of reasons you don’t see a lot of SDF skeletal rigging & animation in games. It’s harder because the distance evaluations get much more expensive when you attach a hierarchy of warps and transforms, and there are typically a lot of distance evaluations when doing ray-marching. This project reduces the cost by using a voxel cache, but animated stuff thwarts the caching, so you have to limit the amount o…

One possibility, a little backwards maybe, is to produce a discrete SDF from e.g. a mesh, by inserting it in an octree. The caching becomes the SDF itself, basically. This would let rendering be done via the SDF, but other logic could use the mesh (or other spatial data structure). Or could the engine treat animated objects as traditional meshed objects (both rendering and interactions)? The author says all physics i…

Sampling an implicit function on a grid shifts you to the world of voxel processing, which has its own strengths and weaknesses. Further processing is lossy (like with raster image processing), storage requirements go up, recovering sharp edges is harder...

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#47
You can't talk about terrain modification without mentioning "From Dust", which did it at a grand scale... 15 (!) years ago.

It allowed you to shape terrain with sand, water and lava. So terrain modification PLUS fluid simulation!

https://www.youtube.com/watch?v=ZYUU3dv7WC4

https://en.wikipedia.org/wiki/From_Dust

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#49

stupid question to anyone reading this: not a gamedev, not even by a long shot but i had to ask - with the advent of all the AI tools, is it actually possible to vibe code a 3D FPS shooter from scratch like if you wrote a 2000 page prompt, can it actually be done?

Depends on what you mean really. In the context of making a game people would actually want to play, no.

Re: I'm making a game engine based on dynamic signed distance fields (SDFs) [video]

#50
post #43

Excellent technical presentation! Though the style itself is a bit too "clay-like", like I wouldn't expect a cube melding with the terrain sand to be a smooth glued connection. Is that some "inherent" SDF thing or just a style of the demo?

I believe you can do regular hard edged intersections. You can see in his operator list some are listed as “smoothSubtract” and some are just “subtract” It’s just easy to do the melding thing with SDFs so a lot of people do it

From his description of the approach I suspect its also to smooth over sharp edges that the grid optimization doesn't like so much.
Post reply on HN