1#version 460 2 3 4layout(location = 5) in outBlock { 5 vec4 o3; 6}; 7 8 9in vec4 gfo1; 10in vec2 gfo2; 11 12out vec4 outColor; 13 14layout (binding = 0) uniform sampler2D glass; 15 16uniform crossStageBlock1 { 17 uniform vec4 a; 18 vec4 b; 19}; 20 21readonly buffer fragOnlyBlock { 22 vec2 fb1; 23}; 24 25uniform crossStageBlock2 { 26 uniform vec4 a; 27 vec2 b; 28} blockName2 [2]; // instance name different from vert 29 30vec2 Bar() { 31 return fb1 + 32 blockName2[0].b + 33 blockName2[1].b; 34} 35 36vec4 Foo() { 37 return a + 38 b + 39 blockName2[0].a + 40 blockName2[1].a + 41 vec4(Bar(), 0.0, 0.0); 42} 43 44void main() 45{ 46 vec4 color = gfo1; // o1 is statically used 47 color = color + Foo(); 48 outColor = color; 49} 50 51