我正在使用延迟渲染,我将眼睛空间位置相应地存储在纹理中:
顶点:
gl_Position = vec4(vertex_position, 1.0);
几何学:
vertexOut.position = vec3(viewMatrix * modelMatrix * gl_in[i].gl_Position);
分段:
positionOut = vec3(vertexIn.position);
现在,在第二个通道(照明通道)中,我尝试使用从这个 vec4 计算的 UV 坐标对我的阴影贴图进行采样
vec4 lightSpacePos = lightProjectionMatrix * lightViewMatrix * lightModelMatrix * vec4(position, 1.0);
使用的位置与从位置纹理存储和采样的位置相同。在进行此计算之前,我是否需要使用逆相机视图矩阵转换位置?将其带回世界空间或我应该如何进行?