所以我正在努力实现阴影映射。到目前为止,我已经从相机的角度将几何体(深度、法线、颜色)渲染到帧缓冲区,并从光的角度渲染了几何体的深度。现在,我从相机的角度渲染光照,对于每个片段,我将比较它与光照的距离,与 render-from-the-lights-pov 通道中的深度 tex 值。如果距离较远,则它处于阴影中。(只是在这里重述以确保没有任何我没有意识到我不明白的东西)。
所以,要完成这最后一步,我需要将深度值 [0-1] 转换为其眼睛空间值 [0.1-100](我的近/远平面)。(这里的解释——从深度缓冲区获取真正的 z 值)。
是否有任何理由不让render-from-the-lights-pov 传递直接将片段到相机(z 组件)的距离写入纹理?那么我们就不必处理荒谬的转换了吗?还是我错过了什么?