vkd3d/tests/hlsl/sample-grad.shader_test
Nikolay Sivov 2176294df8 vkd3d-shader/hlsl: Implement tex*grad() functions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2024-07-08 18:23:38 +02:00

81 lines
1.5 KiB
Plaintext

[require]
shader model >= 3.0
options: backcompat
[sampler 0]
filter linear linear linear
address clamp clamp clamp
[srv 0]
size (2d, 2, 2)
levels 2
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0
1.0 0.0 1.0 0.0 1.0 0.0 1.0 0.0
0.0 0.0 1.0 0.0
[pixel shader fail(sm>=6)]
sampler s;
float4 grad;
float4 main() : sv_target
{
return tex2D(s, float2(0.5, 0.5), grad.xy, grad.zw);
}
[test]
uniform 0 float4 0.0 0.0 0.0 0.0
todo(glsl) draw quad
probe (0,0) rgba (1.0, 0.0, 1.0, 0.0)
uniform 0 float4 1.0 1.0 1.0 1.0
todo(glsl) draw quad
probe (0,0) rgba (0.0, 0.0, 1.0, 0.0)
uniform 0 float4 2.0 2.0 2.0 2.0
todo(glsl) draw quad
probe (0,0) rgba (0.0, 0.0, 1.0, 0.0)
[pixel shader fail(sm>=6)]
sampler s;
float4 grad;
float4 main() : sv_target
{
return tex2Dgrad(s, float2(0.5, 0.5), grad.xy, grad.zw);
}
[test]
uniform 0 float4 0.0 0.0 0.0 0.0
todo(glsl) draw quad
probe (0,0) rgba (1.0, 0.0, 1.0, 0.0)
uniform 0 float4 1.0 1.0 1.0 1.0
todo(glsl) draw quad
probe (0,0) rgba (0.0, 0.0, 1.0, 0.0)
uniform 0 float4 2.0 2.0 2.0 2.0
todo(glsl) draw quad
probe (0,0) rgba (0.0, 0.0, 1.0, 0.0)
[require]
shader model >= 4.0
[pixel shader]
sampler s;
Texture2D t;
uniform float4 grad;
float4 main() : sv_target
{
return t.SampleGrad(s, float2(0.5, 0.5), grad.xy, grad.zw);
}
[test]
uniform 0 float4 0.0 0.0 0.0 0.0
todo(glsl) draw quad
probe (0, 0) rgba (1.0, 0.0, 1.0, 0.0)
uniform 0 float4 1.0 1.0 1.0 1.0
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 1.0, 0.0)
uniform 0 float4 2.0 2.0 2.0 2.0
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 1.0, 0.0)