Module: vkd3d Branch: master Commit: 535bbfa6f8aa3b41bf7d667866859eaf416a7e67 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=535bbfa6f8aa3b41bf7d6678...
Author: Francisco Casas fcasas@codeweavers.com Date: Fri Apr 22 12:25:04 2022 +0200
tests: Test matrix initialization.
Signed-off-by: Francisco Casas fcasas@codeweavers.com Signed-off-by: Giovanni Mascellani gmascellani@codeweavers.com Signed-off-by: Zebediah Figura zfigura@codeweavers.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
Makefile.am | 1 + tests/hlsl-initializer-matrix.shader_test | 72 +++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+)
diff --git a/Makefile.am b/Makefile.am index 3e113dc7..26aa3f84 100644 --- a/Makefile.am +++ b/Makefile.am @@ -79,6 +79,7 @@ vkd3d_shader_tests = \ tests/hlsl-initializer-local-array.shader_test \ tests/hlsl-initializer-nested.shader_test \ tests/hlsl-initializer-numeric.shader_test \ + tests/hlsl-initializer-matrix.shader_test \ tests/hlsl-initializer-static-array.shader_test \ tests/hlsl-initializer-struct.shader_test \ tests/hlsl-intrinsic-override.shader_test \ diff --git a/tests/hlsl-initializer-matrix.shader_test b/tests/hlsl-initializer-matrix.shader_test new file mode 100644 index 00000000..c4fafea7 --- /dev/null +++ b/tests/hlsl-initializer-matrix.shader_test @@ -0,0 +1,72 @@ +[pixel shader] +float4 main() : SV_TARGET +{ + float4x3 mat = {11, 12, 13, 21, 22, 23, 31, 32, 33, 41, 42, 43}; + return float4(mat[1], 0); +} + +[test] +todo draw quad +probe all rgba (21, 22, 23, 0) + + +[pixel shader] +float4 main() : SV_TARGET +{ + row_major float4x3 mat = {11, 12, 13, 21, 22, 23, 31, 32, 33, 41, 42, 43}; + return float4(mat[1], 0); +} + +[test] +todo draw quad +probe all rgba (21, 22, 23, 0) + + +[pixel shader] +float4 main() : SV_TARGET +{ + float3x4 mat = {11, 12, 13, 14, 21, 22, 23, 24, 31, 32, 33, 34}; + return float4(mat[1]); +} + +[test] +todo draw quad +probe all rgba (21, 22, 23, 24) + + +[pixel shader] +float4 main() : SV_TARGET +{ + row_major float3x2 mat = {11, 12, 21, 22, 31, 32}; + return float4(mat[1], mat[2]); +} + +[test] +todo draw quad +probe all rgba (21, 22, 31, 32) + + +[pixel shader] +float4 main() : SV_TARGET +{ + row_major float3x2 mat; + mat = float3x2(11, 12, 21, 22, 31, 32); + return float4(mat[1], mat[2]); +} + +[test] +todo draw quad +probe all rgba (21, 22, 31, 32) + + +[pixel shader] +float4 main() : SV_TARGET +{ + float4 x = float4(12, 21, 22, 31); + float3x2 mat = float3x2(11, x, 32); + return float4(mat[1], mat[2]); +} + +[test] +todo draw quad +probe all rgba (21, 22, 31, 32)