gl_FragCoord
gl_FragCoord
是一个内置的变量,在fragment shader中可用。它表示当前fragment的屏幕坐标。
in vec4 gl_FragCoord;
无
返回一个vec4
类型的向量,包含当前fragment的屏幕坐标。
gl_FragCoord.x
表示当前fragment的x坐标。gl_FragCoord.y
表示当前fragment的y坐标。gl_FragCoord.z
表示当前fragment的深度值,取值范围为0.0到1.0。gl_FragCoord.w
表示当前fragment的透明度,取值范围为0.0到1.0。以下示例代码计算当前fragment的颜色,使用fragment的x坐标除以屏幕的宽度作为红色通道值。
void main() {
vec2 resolution = vec2(1280.0, 720.0);
vec4 fragColor = vec4(0.0);
fragColor.x = gl_FragCoord.x / resolution.x;
fragColor.y = gl_FragCoord.y / resolution.y;
gl_FragColor = fragColor;
}