Original Post
It seems to me there's a fundamental problem with Percentage Closer Soft Shadows, which makes them unsuited to all but the simplest scenes. For those who are unfamiliar with the algorithm, it's described in this paper. Basically you average the depth values in a particular area of the shadow map, and then perform standard PCF using a kernel size based on that average. In theory, this makes shadows appear "softer" the further they are from an occluder. The problem occurs when a shadow receiver is occluded by more than one shadow caster. Because the shadow map will contain only the depth of the nearest occluder to the light, any more distant occluders will effectively be ignored. This means that shadows' softness will only be "correct" for receivers that are occluded by one caster: a pretty major drawback. This is similar, I think, to the "light bleeding" artifact in Variance Shadow Maps. The only ideas I can think of to solve this are to use very small penumbrae so you don't notice any inaccuracies (which pretty much negates the whole point of PCSS); or somehow use a "deep" shadow map, with the depth of each occluder stored in a different component (which would be costly, horrible to implement, and would *still* break at a certain number of overlapping occluders); or have a shadow map per caster. But I haven't seen this problem mentioned in any discussions of PCSS, which makes me wonder if I'm missing something obvious. Am I? Is there a simple solution? Otherwise, it seems to me that PCSS is unusable.
