Shadows for point lights


I’m into shadowing and I found shadow maps to be not that hard to implement, but they work well only for spotlights (for pointlights one needs 6 passes) Are there any shadowing techniques for pointlights?


I’ve found shadow maps to be very limited even for spotlights ( from a quality point of view ). You might want to have a look at shadow volumes, they work for everything.

I thought about that but they involve expensive calculation of the silhouette, which I wanted to avoid, and they can’t give you smooth shadows.


Shadow volumes are not only expensive to calculate, but they also badly affect fill rate.
Personally, I’ve given up on realistic shadows for now - I don’t deal with environments that contain spot lights, so I’d have to do multi-pass shadow maps, and shadow volumes, as I say, really kill the fill rate.
Real shadows do look so cool though - such a shame.

I bet you could combine a few of those shadow map passes into one. An idea for combining 3 into one: bind 3 textures that consist of 3 shadow map cube faces. Then bind a 1x1 cubemap as the fourth texture where one face is red, one is green, one is blue, and the others are black. You can probably set up some combiners math then to grab the component you are interested in.

It’s also possible to use 4 shadow maps rather than 6 to cover an environment using a tetrahedral layout, but I shudder to even think of that.

  • Matt