diff options
author | Hans-Kristian Arntzen <post@arntzen-software.no> | 2019-02-22 14:02:11 +0300 |
---|---|---|
committer | Hans-Kristian Arntzen <post@arntzen-software.no> | 2019-02-22 14:27:40 +0300 |
commit | a4ac27546a8fb86156c77939d44fddbdf283b1df (patch) | |
tree | 422da6ae84b066c3d41f3d9461f9a8d2c3cb0a02 /reference/opt/shaders/asm | |
parent | 77bc102c6bfca8caca7ecc1abc1382f81d7a75f5 (diff) |
MSL: Fix textures which are sampled and compared against.
depth2d in MSL only returns float, not float4, even for normal sampling.
We need to conditionally remap-swizzle back to float4.
Diffstat (limited to 'reference/opt/shaders/asm')
-rw-r--r-- | reference/opt/shaders/asm/frag/sample-and-compare.asm.frag | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/reference/opt/shaders/asm/frag/sample-and-compare.asm.frag b/reference/opt/shaders/asm/frag/sample-and-compare.asm.frag new file mode 100644 index 00000000..d6489ed0 --- /dev/null +++ b/reference/opt/shaders/asm/frag/sample-and-compare.asm.frag @@ -0,0 +1,13 @@ +#version 450 + +uniform sampler2D SPIRV_Cross_Combinedg_Textureg_Sampler; +uniform sampler2DShadow SPIRV_Cross_Combinedg_Textureg_CompareSampler; + +layout(location = 0) in vec2 in_var_TEXCOORD0; +layout(location = 0) out float out_var_SV_Target; + +void main() +{ + out_var_SV_Target = texture(SPIRV_Cross_Combinedg_Textureg_Sampler, in_var_TEXCOORD0).x + textureLod(SPIRV_Cross_Combinedg_Textureg_CompareSampler, vec3(in_var_TEXCOORD0, 0.5), 0.0); +} + |