Why shadows are horrible...

Very interesting discussion. May I ask why a general purpose solution has yet to come around? Is it due to the power of hardware available which makes it impossible?
 
May I ask why a general purpose solution has yet to come around? Is it due to the power of hardware available which makes it impossible?
It's partially due to the hardware speed and feature sets, but it's also algorithmic. Visibility is just a deceptively hard problem to solve in any sort of efficient manner. Unfortunately, the brute force solution is quite expensive (as the offline rendering guys will surely note :)).
 
Last edited by a moderator:
As far as I know, huge shadow maps and tons of samples, which is why offline rendering of shadows is literally hundreds if not thousands of times slower than necessary for a real-time application. It's also possible that some do tons of samples of something like volume shadows, but that would probably be hard to make robust for arbitrary meshes. 3dsmax provides shadow-map and ray-tracing based algorithms IIRC, both of which use tons of samples and are suitably slow :)
 
The fundamental problem with shadow maps is that they are sampled from one viewpoint, and projected into the final view. If you don't take into account the angle of the recieving surface when selecting the initial projection plane, you can end up with bad aliasing even with VERY high resolution maps.

In offline rendering you can tweak the maps and lighting so as to hide the issues, that's not really a practical solution for interactive rendering.

Having said that I still believe that some form of shadow map is the future of interactive shadows.
 
So no voodoo proprietary algorithms, just higher resolution/precision more samples and possibly tuned per frame... :)
 
So no voodoo proprietary algorithms, just higher resolution/precision more samples and possibly tuned per frame... :)
Well if they do have some "voodoo" algorithm, I don't know about it :) However the controls that they provide (stuff like bias and filter sizes) together with the amount of tweaking necessary to get good shadows even in offline renderers leads me to believe that they're just doing the same thing as the rest of us, except probably in double precision with huge shadow maps.
 
Back
Top