Implement GL_EXT_vulkan_glsl_relaxed option

This commit is contained in:
will brown
2020-06-09 20:43:48 -04:00
committed by Malcolm Bechard
parent 159b057080
commit ecc9b9149f
43 changed files with 6707 additions and 111 deletions

View File

@@ -0,0 +1,28 @@
#version 460
out vec4 o;
// default uniforms will be gathered into a uniform block
// final global block will merge uniforms from all linked files
uniform vec4 a; // declared in both stages
uniform vec2 b1; // declaration order swapped in other stage
uniform vec2 b2;
uniform vec4 c1; // not delcared in other file
uniform vec4 d;
// final global buffer will berge buffers from all linked files
layout (binding = 0) uniform atomic_uint counter1;
layout (binding = 0) uniform atomic_uint counter2;
vec4 foo();
vec4 bar() {
uint j = atomicCounterIncrement(counter1) + atomicCounterDecrement(counter2);
vec4 v = a + vec4(b1.x, b1.y, b2.x, b2.y) + c1 + d;
return float(j) * v;
}
void main() {
o = foo() + bar();
}