summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/glslang/src/Test/spv.420.geom
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);
}