tests/hlsl: Add some arithmetic uint16 shader tests.

This commit is contained in:
Conor McCarthy
2025-01-18 00:35:05 +10:00
committed by Henri Verbeet
parent a5d4cbddac
commit 033a0d29c5
Notes: Henri Verbeet 2025-01-28 13:19:48 +01:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Giovanni Mascellani (@giomasce)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1344
5 changed files with 62 additions and 8 deletions

View File

@ -88,3 +88,42 @@ float4 main() : SV_TARGET
uniform 0 uint 7
todo(msl) draw quad
probe (0, 0) rgba(38.0, 5.0, 7.0, 0.0)
[require]
shader model >= 6.2
native-16-bit
[pixel shader]
uniform uint16_t2 u;
uint4 main() : sv_target
{
uint16_t i = 0x7fff, j = 0xffff;
return uint4(u.x + i, u.y + j, 0, 0);
}
[test]
uniform 0 uint4 0 0 0 0
draw quad
probe (0, 0) rgbaui(0x7fff, 0xffff, 0, 0)
uniform 0 uint4 0xffff0001 0 0 0
draw quad
probe (0, 0) rgbaui(0x8000, 0xfffe, 0, 0)
[pixel shader]
uniform uint16_t4 u;
uniform uint i;
uint4 main() : sv_target
{
uint16_t arr[4] = {1, 2, 0x7fff, 0xffff};
return uint4(u.x + arr[i], u.y + arr[i + 1], 0, 0);
}
[test]
uniform 0 uint4 0xfffe0002 0 2 0
draw quad
probe (0, 0) rgbaui(0x8001, 0xfffd, 0, 0)
uniform 0 uint4 0 0 0 0
draw quad
probe (0, 0) rgbaui(1, 2, 0, 0)