方向光投影

一篇非常优秀的关于ShadowBias的总结

  • PCF 为什么会对Shadow Bias的大小取值有影响?
    • 答: 因为PCF会filter多个Shadow Map上的Texel, 所以要保证ShadowBias可以照顾所有Texel到光源近平面(Light View Near Plane)的距离小于Depth。
  • ShadowCaster Vertex Based Bias (SCVBB)的优劣有哪些?
    • 答:将Shadow Bias的计算放入ShadowCaster Pass可节约成本。但Caster阶段的反向Normal Bias与Receive阶段算NormalBias不是一回事。
    • 文章中关于SCVBB的示意图。Cast的时候为AB的normal,Receive的时候为AD的normal。
      SCVBB
    • Unity SRP中,CommandBuffer.SetGlobalDepthBias就是SCVBB的实现(应该?)。

Cascaded ShadowMap

Dithering