#version 450 #extension GL_EXT_nonuniform_qualifier : require layout(set = 0, binding = 1) uniform sampler s_sampler; layout(set = 0, binding = 3) uniform texture2D s_images[]; layout(location = 0) in flat uint meshIdx; layout(location = 1) in vec2 uv; layout(location = 0) out vec4 outColor; void main() { outColor = texture(sampler2D(s_images[nonuniformEXT(meshIdx)], s_sampler), uv); }