blob: 3c0a05121886335fa8e122afbf32134efb19f477 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
#version 420 core
layout(triangles) in;
in gl_PerVertex {
float gl_PointSize;
} gl_in[];
out gl_PerVertex {
float gl_PointSize;
};
layout(line_strip) out;
layout(max_vertices = 127) out;
layout(invocations = 4) in;
uniform sampler2D s2D;
in vec2 coord[];
int i;
void main()
{
float p = gl_in[1].gl_PointSize;
gl_PointSize = p;
gl_ViewportIndex = 7;
EmitStreamVertex(1);
EndStreamPrimitive(0);
EmitVertex();
EndPrimitive();
int id = gl_InvocationID;
const ivec2 offsets[5] =
{
ivec2(0,1),
ivec2(1,-2),
ivec2(0,3),
ivec2(-3,0),
ivec2(2,1)
};
vec4 v = textureGatherOffset(s2D, coord[0], offsets[i].xy);
}
|