Hey Eric,
So I just had a look at this and tracked it down to r.EarlyZPass
being equal to 2 and not 3.
Virt has set this to 2 because all the docs about deferred decals advise to do so (Martin Mittring’s comment from April 2014, for instance), while in the meantime there was a commit in December 2014 that gave r.EarlyZPass=3
a new meaning, and it seems to me that this is what we actually need to have both D-buffers and foliage early Z working.
Bottom line, we’ve fixed this simply by setting it to 3, but you may want to update both the documentation and CVarEarlyZPass
’s description in DeferredShadingRenderer.cpp
to reflect this.
Regards,
Leszek