diff --git a/Makefile.am b/Makefile.am index 958be146..bb69078c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -50,6 +50,7 @@ vkd3d_shader_runners = \ tests/shader_runner_d3d12 vkd3d_shader_tests = \ + tests/math.shader_test \ tests/swizzle-0.shader_test \ tests/swizzle-1.shader_test \ tests/swizzle-2.shader_test \ @@ -177,6 +178,7 @@ tests_vkd3d_api_LDADD = libvkd3d.la @VULKAN_LIBS@ tests_vkd3d_shader_api_LDADD = libvkd3d-shader.la SHADER_TEST_LOG_COMPILER = tests/shader_runner_d3d12 XFAIL_TESTS = \ + tests/math.shader_test \ tests/swizzle-0.shader_test \ tests/swizzle-1.shader_test \ tests/swizzle-2.shader_test \ diff --git a/tests/math.shader_test b/tests/math.shader_test new file mode 100644 index 00000000..2fe59a08 --- /dev/null +++ b/tests/math.shader_test @@ -0,0 +1,15 @@ +[pixel shader] +float4 main(uniform float u, uniform float v, uniform float w, uniform float x, + uniform float y, uniform float z) : SV_TARGET +{ + return float4(x * y - z / w + --u / -v, + z * x / y + w / -v, + u + v - w, + x / y / w); +} + +[test] +uniform 0 float4 2.5 0.3 0.2 0.7 +uniform 4 float4 0.1 1.5 0.0 0.0 +draw quad +probe all rgba (-12.43, 9.833333, 1.6, 35.0) 1