diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-12-07 15:00:15 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2020-12-07 15:00:15 +0300 |
commit | a11c4780d03d8fae664be3f39d51d63477bfa2ef (patch) | |
tree | eb976692af5194d530a2fd64474460514cb1ca0f /shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag | |
parent | 6d10da0224bd3214c9a507832e62d9fb6ae9620d (diff) |
GLSL: Emit nonuniformEXT in correct place for late-combined samplers.
Need to emit nonuniformEXT(sampler2D()) since constructor expressions in
Vulkan GLSL do not propgate the nonuniform qualifier.
Diffstat (limited to 'shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag')
-rw-r--r-- | shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag b/shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag new file mode 100644 index 00000000..452aa953 --- /dev/null +++ b/shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag @@ -0,0 +1,14 @@ +#version 450 +#extension GL_EXT_nonuniform_qualifier : require + +layout(location = 0) out vec4 FragColor; +layout(location = 0) in vec2 vUV; +layout(location = 1) flat in int vIndex; + +layout(set = 0, binding = 0) uniform texture2D uTex[]; +layout(set = 1, binding = 0) uniform sampler Immut; + +void main() +{ + FragColor = texture(nonuniformEXT(sampler2D(uTex[vIndex], Immut)), vUV); +} |