I can't really answer your questions since frankly I don't know, but I just wanted to post something relevant and potentially helpful I watched the other day!
Have you seen the Shadertoy thing making the rounds lately with an orange creature jumping around in a gooey green field? The author streamed remaking the whole thing from scratch and I went from knowing nothing about this to understanding it quite well just from watching this:
Overall, I feel it's very similar to regular polygon rendering with regards to lighting calculations and so on, so there are a lot of skills that transfer readily once you get the basics! There are also certain things that you can do a lot more easily than you can do with polygons, like metaballing and shadows, so while there are certainly disadvantages in comparison, there absolutely seem to be advantages too. Would be super cool to see a game based on this!
Thanks for sharing that. I'll definitely check the shader out. The 5 hours video I might skim over though haha.
I'm playing around with meta balling, and boolean in general, which is amazing. I instinctively associate boolean with headaches caused by bad polygons and bugs and poor performance. Here it's free of charge.
If anyone is interested I can start dumping all the resources I'm finding on the subject. People have created entire libraries of distance functions for all kinds of primitive shapes, as well as transformations (twist, bend etc). And when it comes to fractals a whole world of possibilities open up. It starts to get a bit more math heavy, because finding distance functions for fractals is not trivial. There is even a forum dedicated to fractals!
I'm finding the subject surprisingly easy to get into (I mean, comparatively with what I expected to find and to other computer graphics topics). The parallelization implementation is the hardest part but that's its own challenge. Parallelization is usually the hardest part of anything that requires parallelization.
I believe this 2003 realtime raytracing demo uses functions for all its objects: [video]
So possibly in raytracing you can find some of the answers.
It might just be parametric objects, not distance function. But I'll check it out!