[require] shader model >= 5.0 [sampler 0] filter linear linear linear address clamp clamp clamp comparison equal [srv 0] format r32-float-shadow size (2d, 3, 3) 0.0 0.0 0.0 0.4 0.1 0.0 0.5 0.0 0.2 [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmp(s, float2(0.2, 0.2), 0.1, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 1.0, 0.0, 0.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpRed(s, float2(0.6, 0.6), 0.1, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 0.0, 0.0, 1.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpGreen(s, float2(0.2, 0.2), 0.1, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 1.0, 0.0, 0.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpGreen(s, float2(0.8, 0.8), 0.2, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 1.0, 0.0, 0.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpGreen(s, float2(0.2, 0.2), 0.1, int2(0, 0), int2(0, 0), int2(0, 0), int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 1.0, 0.0, 0.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpBlue(s, float2(0.2, 0.8), 0.5, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(1.0, 0.0, 0.0, 0.0) [pixel shader] SamplerComparisonState s; Texture2D t; float4 main() : sv_target { return t.GatherCmpAlpha(s, float2(0.2, 0.8), 0.4, int2(0, 0)); } [test] todo(msl | glsl) draw quad probe (0, 0) rgba(0.0, 0.0, 0.0, 1.0)