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 /reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.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 'reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.frag')
-rw-r--r--reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.frag23
1 files changed, 23 insertions, 0 deletions
diff --git a/reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.frag b/reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.frag
new file mode 100644
index 00000000..f1ad5c5f
--- /dev/null
+++ b/reference/shaders-msl-no-opt/frag/nonuniform-constructor.msl2.frag
@@ -0,0 +1,23 @@
+#include <metal_stdlib>
+#include <simd/simd.h>
+
+using namespace metal;
+
+struct main0_out
+{
+ float4 FragColor [[color(0)]];
+};
+
+struct main0_in
+{
+ float2 vUV [[user(locn0)]];
+ int vIndex [[user(locn1)]];
+};
+
+fragment main0_out main0(main0_in in [[stage_in]], array<texture2d<float>, 10> uTex [[texture(0)]], sampler Immut [[sampler(0)]])
+{
+ main0_out out = {};
+ out.FragColor = uTex[in.vIndex].sample(Immut, in.vUV);
+ return out;
+}
+