Opengl es 阴影贴图-与灯光正交的薄壁上的瑕疵
我的背面(对光)和阴影贴图有问题,我似乎无法通过。我仍处于优化引擎的相对早期阶段,但我似乎无法达到这一点,因为即使为这一块几何体手动调整了所有东西,它看起来仍然像垃圾 它是一堵薄墙,通过大约5块不同的墙“弯曲”。当我创建深度贴图时,我正在剔除前面的面(对着灯光)。这当然有帮助,但墙另一侧的正面似乎是导致z战斗/投射阴影的原因 屏幕截图上的一些注释:Opengl es 阴影贴图-与灯光正交的薄壁上的瑕疵,opengl-es,3d,opengl-es-2.0,shadow-mapping,Opengl Es,3d,Opengl Es 2.0,Shadow Mapping,我的背面(对光)和阴影贴图有问题,我似乎无法通过。我仍处于优化引擎的相对早期阶段,但我似乎无法达到这一点,因为即使为这一块几何体手动调整了所有东西,它看起来仍然像垃圾 它是一堵薄墙,通过大约5块不同的墙“弯曲”。当我创建深度贴图时,我正在剔除前面的面(对着灯光)。这当然有帮助,但墙另一侧的正面似乎是导致z战斗/投射阴影的原因 屏幕截图上的一些注释: 绘制深度纹理(来自灯光)时,将剔除前面 我已经为这一块几何体调整了近平面和远平面(分别设置为20和25) 一个方向光源,朝场景右侧以一个微小的角
- 绘制深度纹理(来自灯光)时,将剔除前面
- 我已经为这一块几何体调整了近平面和远平面(分别设置为20和25)
- 一个方向光源,朝场景右侧以一个微小的角度向下照射,足以指示墙应该被遮挡,但大部分是笔直向下
- 使用非常大的4096x4096阴影贴图纹理
- 所有照明都已禁用,但要知道,即使在这面墙上,我也在进行软照明(因此顶点的顶点法线)
问题似乎在于你
为了确保我能正确理解这一点,这堵墙应该被遮蔽还是被照亮?在图像中添加一些指示平行光角度的注释可能也会有所帮助。添加了一些编辑,但总而言之,从技术上讲,基于几何结构,它应该在阴影中。。。但我猜使用阴影贴图在与光线成一定角度的陡坡上对人脸进行阴影处理是不可取的(因为存在瑕疵,即错误的自阴影)。也许我仍然遗漏了一些东西,那么如果面向观看者的那部分墙背对光线,它不应该已经变暗了吗?希望构成墙顶面的顶点和面向观察者的部分之间没有法线共享。此外,灯光的箭头是否指示灯光的位置,或灯光的照射方向?实际上,我认为您希望使墙的各个部分具有正确的法线,即使这意味着复制拐角处的顶点以确保每个面都具有正确的法线。只需计算阴影就会得到一个二进制(in/out)结果,而不是我假设您正在寻找的阴影。阴影映射实现的问题是,最终会出现阴影中断的情况,您需要处理ε和技巧以使其更好。的确如此