1#version 400 core
2
3layout(vertices = 4) out;
4int outa[gl_out.length()];
5
6patch out vec4 patchOut;
7
8void main()
9{
10    barrier();
11
12    int a = gl_MaxTessControlInputComponents +
13            gl_MaxTessControlOutputComponents +
14            gl_MaxTessControlTextureImageUnits +
15            gl_MaxTessControlUniformComponents +
16            gl_MaxTessControlTotalOutputComponents;
17
18    vec4 p = gl_in[1].gl_Position;
19    float ps = gl_in[1].gl_PointSize;
20    float cd = gl_in[1].gl_ClipDistance[2];
21
22    int pvi = gl_PatchVerticesIn;
23    int pid = gl_PrimitiveID;
24    int iid = gl_InvocationID;
25
26    gl_out[gl_InvocationID].gl_Position = p;
27    gl_out[gl_InvocationID].gl_PointSize = ps;
28    gl_out[gl_InvocationID].gl_ClipDistance[1] = cd;
29
30    gl_TessLevelOuter[3] = 3.2;
31    gl_TessLevelInner[1] = 1.3;
32}
33
34in vec2 inb[];
35in vec2 ind[gl_MaxPatchVertices];
36
37#extension GL_ARB_separate_shader_objects : enable
38
39layout(location = 3) in vec4 ivla[];
40layout(location = 4) in vec4 ivlb[];
41
42layout(location = 3) out vec4 ovla[];
43layout(location = 4) out vec4 ovlb[];
44