Module: vkd3d Branch: master Commit: 6129399b4f96a524319e17525e54542392b52e17 URL: https://gitlab.winehq.org/wine/vkd3d/-/commit/6129399b4f96a524319e17525e5454...
Author: Zebediah Figura zfigura@codeweavers.com Date: Sun Apr 30 23:31:33 2023 -0500
tests: Add a test for SampleBias() with multiple mipmap levels.
---
Makefile.am | 1 + tests/sample-bias.shader_test | 43 +++++++++++++++++++++++++++++++++++++++++++ tests/sampler.shader_test | 14 -------------- 3 files changed, 44 insertions(+), 14 deletions(-)
diff --git a/Makefile.am b/Makefile.am index f5cee9a6..e06d0eeb 100644 --- a/Makefile.am +++ b/Makefile.am @@ -157,6 +157,7 @@ vkd3d_shader_tests = \ tests/register-reservations.shader_test \ tests/return.shader_test \ tests/round.shader_test \ + tests/sample-bias.shader_test \ tests/sample-level.shader_test \ tests/sampler.shader_test \ tests/sampler-offset.shader_test \ diff --git a/tests/sample-bias.shader_test b/tests/sample-bias.shader_test new file mode 100644 index 00000000..08e50696 --- /dev/null +++ b/tests/sample-bias.shader_test @@ -0,0 +1,43 @@ +[sampler 0] +filter linear linear linear +address clamp clamp clamp + +[texture 0] +size (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 + +[vertex shader] +void main(out float2 tex : texcoord, inout float4 pos : sv_position) +{ + tex = pos.xy; +} + +[pixel shader] +sampler s; +Texture2D t; +uniform float bias; + +float4 main(float2 coord : texcoord) : sv_target +{ + /* Choice of initial mipmap level is hardware-dependent, and in practice + * varies too much to be reasonably covered by ULPS. Quantize instead. */ + return floor(t.SampleBias(s, coord, bias) * 10); +} + +[test] +uniform 0 float4 6.5 0.0 0.0 0.0 +draw quad +probe all rgba (10.0, 0.0, 10.0, 0.0) + +uniform 0 float4 7.5 0.0 0.0 0.0 +draw quad +probe all rgba (4.0, 0.0, 10.0, 0.0) + +uniform 0 float4 8.5 0.0 0.0 0.0 +draw quad +probe all rgba (0.0, 0.0, 10.0, 0.0) diff --git a/tests/sampler.shader_test b/tests/sampler.shader_test index dfae6140..628c3186 100644 --- a/tests/sampler.shader_test +++ b/tests/sampler.shader_test @@ -33,20 +33,6 @@ float4 main() : sv_target draw quad probe all rgba (0.25, 0, 0.25, 0)
-[pixel shader] -SamplerState s; -Texture2D t; - -float4 main() : sv_target -{ - return t.SampleBias(s, float2(0.5, 0.5), 0.0); -} - -[test] -draw quad -probe all rgba (0.25, 0, 0.25, 0) - - [pixel shader fail] sampler2D s;