ext_gpu_shader4: add compiler tests for everything
[piglit.git] / tests / spec / arb_tessellation_shader / execution / tcs-tes-vertex.shader_test
blob98d8bb71d4ae7b7e4e235f9ca083d26af9fc876a
1 [require]
2 GLSL >= 1.50
3 GL_ARB_tessellation_shader
6 [vertex shader passthrough]
9 [tessellation control shader]
10 #extension GL_ARB_tessellation_shader: require
11 layout(vertices = 3) out;
13 out vec4 color[];
15 void main() {
16         gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
17         gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 0.0);
18         gl_TessLevelInner = float[2](0.0, 0.0);
19         color[gl_InvocationID] = vec4(0, 1, 0, 1);
23 [tessellation evaluation shader]
24 #extension GL_ARB_tessellation_shader: require
25 layout(triangles) in;
27 in vec4 color[];
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] * gl_TessCoord[0]
36                    + color[1] * gl_TessCoord[1]
37                    + color[2] * gl_TessCoord[2];
41 [fragment shader]
42 in vec4 color_fs;
44 void main()
46         gl_FragColor = color_fs;
49 [vertex data]
50 piglit_vertex/float/2
51 -1.0 -1.0
52  1.0 -1.0
53 -1.0  1.0
54 -1.0  1.0
55  1.0 -1.0
56  1.0  1.0
58 [test]
59 clear color 0.1 0.1 0.1 0.1
60 clear
61 patch parameter vertices 3
62 draw arrays GL_PATCHES 0 6
63 probe all rgba 0.0 1.0 0.0 1.0