mirror of https://github.com/xemu-project/xemu.git
54 lines
1.5 KiB
GLSL
54 lines
1.5 KiB
GLSL
#version 460
|
|
|
|
#extension GL_EXT_nonuniform_qualifier : require
|
|
|
|
// unsized and not indexed in either stage
|
|
// both should become implicitly sized to 1
|
|
uniform float f0[];
|
|
|
|
// unsized and not indexed in earlier stage, unsized and dynamically indexed in later stage
|
|
// both should become runtime sized
|
|
uniform sampler2D s0[];
|
|
|
|
// unsized and dynamically indexed in earlier stage, unsized and not indexed in later stage
|
|
// both should become runtime sized
|
|
uniform sampler2D s1[];
|
|
|
|
// unsized and statically indexed in earlier stage, unsized and not indexed in later stage
|
|
// both should become implicitly sized to highest index + 1 (11)
|
|
uniform U0 {
|
|
vec4 a[];
|
|
} u0;
|
|
|
|
// unsized and not indexed in earlier stage, unsized and statically indexed in later stage
|
|
// both should become implicitly sized to highest index + 1 (7)
|
|
uniform U1 {
|
|
vec4 a[];
|
|
} u1;
|
|
|
|
// unsized buffer array, statically indexed in earlier stage, not indexed in later stage
|
|
// both should become implicitly sized to highest index + 1 (10)
|
|
buffer B0 {
|
|
vec4 a;
|
|
} b0[];
|
|
|
|
// unsized and statically indexed in earlier stage, explicitly sized in later stage
|
|
// should adopt explicit size (11)
|
|
buffer B1 {
|
|
vec4 a[];
|
|
} b1;
|
|
|
|
// unsized and not indexed in earlier stage, unsized and dynamically indexed in later stage
|
|
// both should become runtime sized
|
|
buffer B2 {
|
|
vec4 a[];
|
|
} b2;
|
|
|
|
out vec4 out_VS;
|
|
|
|
void main() {
|
|
out_VS = texture(s1[nonuniformEXT(0)], vec2(0));
|
|
out_VS = u0.a[10];
|
|
out_VS = b1.a[5];
|
|
}
|