DirectX 11 正面剔除不会剔除阴影贴图中的正面

DirectX 11 front face culling does not cull front faces in shadow map

我尝试在 DirectX 11 上实现阴影映射 (CSM),并成功地让原型工作。现在我已经在阴影贴图通道中使用 背面剔除 绘制了几何体,但我现在想 切换到正面剔除 以进一步减少阴影粉刺

切换到正面剔除并没有改变任何东西。在使用 Visual Studio 图形调试器进行深入分析后,我现在被卡住了。

图形调试器说光栅化状态设置正确。

但是阴影贴图中的深度值似乎没有一点变化。

据我了解front/back在将深度值写入深度缓冲区之前应用面部剔除。

我哪里错了?在没有渲染目标视图但只有深度模板视图附加到输出合并器的情况下渲染到深度缓冲区时是否有任何特殊行为?

事实上,模型有一个内壳,因为模型加载器(用于 Sketchup 文件)为模型的每个面添加了内表面和外表面。

感谢评论和指出!