[LayaAir 2.0]Shader中如何计算每个projCoord对应的screenCoord,归一化为[0,1]
之前网上中的一些实现方法如下:
vec4 computeScreenPos(vec4 projPos)
{
vec3 ndc = projPos.xyz / projPos.w;
vec4 screenPos;
screenPos.x = (ndc.x * 0.5 + 0.5);
screenPos.y = u_ProjectionParams.z * (ndc.y * 0.5 + 0.5);
screenPos.zw = projPos.zw;
return screenPos;
}
实际应用采样深度纹理的时候,好像是错误的
vec4 computeScreenPos(vec4 projPos)
{
vec3 ndc = projPos.xyz / projPos.w;
vec4 screenPos;
screenPos.x = (ndc.x * 0.5 + 0.5);
screenPos.y = u_ProjectionParams.z * (ndc.y * 0.5 + 0.5);
screenPos.zw = projPos.zw;
return screenPos;
}
实际应用采样深度纹理的时候,好像是错误的
没有找到相关结果
已邀请:
要回复问题请先登录
1 个回复
184*****121
赞同来自:
把模型空间的坐标转换为归一化的屏幕坐标,好采样图片