1 # simple dvec3 through vs->tcs->tes->fs.
4 GL_ARB_tessellation_shader
8 #extension GL_ARB_gpu_shader_fp64: require
16 vs_var0 = dvec3(1.0LF, 2.0LF, 3.0LF);
20 [tessellation control shader]
21 #extension GL_ARB_tessellation_shader: require
22 #extension GL_ARB_gpu_shader_fp64: require
23 layout(vertices = 3) out;
29 gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
30 gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 0.0);
31 gl_TessLevelInner = float[2](0.0, 0.0);
32 tcs_var0[gl_InvocationID] = vs_var0[gl_InvocationID] + dvec3(2.0LF, 3.0LF, 4.0LF);
36 [tessellation evaluation shader]
37 #extension GL_ARB_tessellation_shader: require
38 #extension GL_ARB_gpu_shader_fp64: require
42 flat out dvec3 tes_var0;
45 gl_Position = gl_in[0].gl_Position * gl_TessCoord[0]
46 + gl_in[1].gl_Position * gl_TessCoord[1]
47 + gl_in[2].gl_Position * gl_TessCoord[2];
49 tes_var0 = tcs_var0[0] + dvec3(3.0LF, 4.0LF, 5.0LF);
54 #extension GL_ARB_gpu_shader_fp64: require
55 flat in dvec3 tes_var0;
59 if (tes_var0 == dvec3(6.0LF, 9.0LF, 12.0LF))
60 gl_FragColor = vec4(0.0, 1.0, 0.0, 1.0);
62 gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
75 clear color 0.1 0.1 0.1 0.1
77 patch parameter vertices 3
78 draw arrays GL_PATCHES 0 6
79 probe all rgba 0.0 1.0 0.0 1.0