yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Greg FischerMerge pull request #2759 from mbechard/vkRelaxed-RetargetID0f886fe7

main
852 B31 linesraw
1#version 460
2
3layout (location = 0) out vec4 io;
4
5// default uniforms will be gathered into a uniform block
6// final global block will merge uniforms from all linked files
7uniform vec4 a;     // declared in both stages
8uniform vec2 b2;    // declaration order swapped in other stage
9uniform vec2 b1;
10uniform vec4 c2;    // not delcared in other file
11uniform vec4 d;
12
13uniform vec4 s[4];
14
15layout (binding = 0) uniform atomic_uint counter3;
16layout (binding = 0) uniform atomic_uint counter2;
17
18vec4 foo() {
19    uint j = atomicCounterIncrement(counter2) + atomicCounterDecrement(counter3);
20    vec4 v = a + vec4(b1.x, b1.y, b2.x, b2.y) + c2 + d;
21
22    return float(j) * v;
23}
24
25void main() {
26
27    vec4 v = foo();
28    v = v + s[gl_VertexID - gl_VertexIndex];
29    v.x = v.x - float(gl_InstanceID - gl_InstanceIndex);
30    io = v;
31}