Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/KhronosGroup/SPIRV-Cross.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Kristian Arntzen <post@arntzen-software.no>2020-12-07 15:00:15 +0300
committerHans-Kristian Arntzen <post@arntzen-software.no>2020-12-07 15:00:15 +0300
commita11c4780d03d8fae664be3f39d51d63477bfa2ef (patch)
treeeb976692af5194d530a2fd64474460514cb1ca0f /shaders-no-opt/frag/nonuniform-constructor.vk.nocompat.frag
parent6d10da0224bd3214c9a507832e62d9fb6ae9620d (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.frag14
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);
+}