ext_gpu_shader4: add compiler tests for everything
[piglit.git] / tests / spec / arb_tessellation_shader / execution / tcs-tes-patch-array.shader_test
blobcfb66dbfbcb5122570bab3b7f45cc22bda7e4869
1 [require]
2 GLSL >= 1.50
3 GL_ARB_tessellation_shader
6 [vertex shader passthrough]
8 [tessellation control shader]
9 #extension GL_ARB_tessellation_shader: require
10 layout(vertices = 3) out;
12 patch out vec4 color[3];
14 void main() {
15         gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
16         gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 0.0);
17         gl_TessLevelInner = float[2](0.0, 0.0);
18         color[0] = vec4(0, 0.3, 0, 1);
19         color[2] = vec4(0, 0.7, 0, 1);
23 [tessellation evaluation shader]
24 #extension GL_ARB_tessellation_shader: require
25 layout(triangles) in;
27 patch in vec4 color[3];
28 out vec4 color_fs;
30 void main() {
31         gl_Position = gl_in[0].gl_Position * gl_TessCoord[0]
32                     + gl_in[1].gl_Position * gl_TessCoord[1]
33                     + gl_in[2].gl_Position * gl_TessCoord[2];
35         color_fs = color[0] + color[2];
39 [fragment shader]
40 in vec4 color_fs;
42 void main()
44         gl_FragColor = color_fs;
47 [vertex data]
48 piglit_vertex/float/2
49 -1.0 -1.0
50  1.0 -1.0
51 -1.0  1.0
52 -1.0  1.0
53  1.0 -1.0
54  1.0  1.0
56 [test]
57 clear color 0.1 0.1 0.1 0.1
58 clear
59 patch parameter vertices 3
60 draw arrays GL_PATCHES 0 6
61 probe all rgba 0.0 1.0 0.0 1.0