我正在尝试在gl_FragCoord上使用pixel_center_integer限定符,但是保存返回的坐标使得它看起来像是Vulkan中的无操作 - 坐标总是偏移.5为片段中心。
我的片段着色器代码(简化)如下所示:
layout(pixel_center_integer) in vec4 gl_FragCoord;
layout(location = 0) out vec2 outVal;
void main()
{
outVal = gl_FragCoord.xy;
}
这是1.0.37 Vulkan SDK,Windows 10,NVidia驱动程序376.53。
这当然很容易解决,但我找不到任何暗示它在Vulkan中不受支持的内容 - glslangvalidator.exe很乐意将其编译为SPIR-V。
答案 0 :(得分:0)
:
不使用OriginLowerLeft执行模式必须;片段入口点必须声明OriginUpperLeft。
不能使用PixelCenterInteger执行模式 。像素始终以半整数坐标为中心。