vkd3d/tests/hlsl/sample-grad.shader_test
Elizabeth Figura 8fcbbfb8b1 tests/shader_runner: Test versions where the compilation result changes.
Adjust the algorithm for deciding for which profiles to test compilation.

We first ensure that if the compilation result changes (most often as the result
of a feature introduced in a specific version), we test the versions immediately
on either side of the change, to validate that vkd3d-shader is emulating the
same version behaviour.

We then ensure that we are testing at least one version from each set of sm1,
sm4, and sm6.
2024-12-17 16:35:09 +01:00

81 lines
1.6 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>=5.1) todo(sm>=5.1)]
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(msl) 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(msl) 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(msl) draw quad
probe (0,0) rgba (0.0, 0.0, 1.0, 0.0)
[pixel shader fail(sm>=5.1) todo(sm>=5.1)]
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(msl) 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(msl) 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(msl) 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(msl) 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(msl) 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(msl) draw quad
probe (0, 0) rgba (0.0, 0.0, 1.0, 0.0)