2
在阴影映射中处理投影别名
我不喜欢简单的过程3D建模,以制作用于3D打印的小建筑物。一个例子: 为了使模型在屏幕上更具可读性,我为单个定向光实现了基本的阴影映射。由于我的场景没有变化,因此我只使用场景的轴对齐框渲染一次阴影贴图,以找出阴影贴图的边界。阴影和边界看起来像我已经正确放置了所有矩阵,但是再靠近一点看起来就很糟糕: 从我读过的书中,我了解了彼得平移以及我可能会做些什么,但是我认为这是投影别名的一种形式,参差不齐的边缘看起来非常糟糕,以至于我认为基本实现中有问题。 我修改了像素着色器以显示阴影纹理边界: 我在纹理上进行了双线性过滤(没有它,我会出现严重的暗疮痤疮)。可悲的是,我对PCF的尝试也失败了-它看起来同样参差不齐: 这是禁用了双线性过滤的单个示例案例: 这看起来像“典型的”投射混叠吗?是否可以使用截锥体的场景(可能会进行级联)剪切视景的动态渲染来解决该问题? 编辑:添加双线性过滤的特写,阴影比较后,只是为了展示我得到的。由于内部边缘,阴影暗疮出现。我正在使用堆叠的虚拟块进行建模,但未执行正确的联合操作。根据我的阅读,在多面体上执行布尔运算并非易事,但也将允许我实现静态阴影量以及清理某些3D打印软件。