[require] GLSL >= 4.50 [vertex shader] layout(location=0) in vec4 vertex; out vec4 value; void main() { value = vertex; // causes problems on haswell! float mod = 10.0 - (0.01 * value.y) / 10.0; if (mod < 0.0) mod = 0.0; float speed = 0.01 + mod; value.y -= speed; if (value.y <= 0.0) value.y += 10.0; } [geometry shader] layout(triangles) in; layout(triangle_strip) out; layout(max_vertices = 1) out; in vec4 value[]; out vec4 pos; out vec4 fc; void main() { pos = value[0]; fc = value[0]; EmitVertex(); EndPrimitive(); } [fragment shader] in vec4 fc; out vec4 piglit_fragcolor; void main() { piglit_fragcolor = fc; } [test] clear draw rect -1 -1 2 2 probe all rgba 0.0 0.0 0.0 0.0