Different handling of PCF5 in shadow map

So I just stumbled across by it by chance while researching how shadow maps work.

There are a few occurrences, where PCF5 is handled differently to PCF3 and PCF1 is this by design?
Shoudn’t it be the same as only the sample radius increases?

Different handling:

Different handling:

Not present at all (defaulting to FILTER_LINEAR):

One difference under the hood is is that SHADOW_PCF5 is not supported on WebGL1, and we fall back to PCF3.

Also, all of them on WebGL1 use RGBA8 encoded depth, as depth buffer sampling is not available.

And there are further differences like that I’m sure.

1 Like