mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
108 lines
1.8 KiB
Plaintext
108 lines
1.8 KiB
Plaintext
[require]
|
|
shader model >= 5.0
|
|
float64
|
|
|
|
[pixel shader todo]
|
|
uniform double2 d;
|
|
uniform float2 f;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
double2 n = d / f;
|
|
return float4(d.x, d.y, n.x, n.y);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 double2 -4.5 8.5
|
|
uniform 4 float4 -2.25 4.25 0.0 0.0
|
|
todo(sm<6) draw quad
|
|
probe all rgba (-4.5, 8.5, 2.0, 2.0)
|
|
|
|
|
|
[pixel shader todo]
|
|
uniform double2 d;
|
|
|
|
uint4 main() : sv_target
|
|
{
|
|
uint4 result;
|
|
asuint(d.x, result.x, result.y);
|
|
asuint(d.y, result.z, result.w);
|
|
return result;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 double2 -4.5 8.500003814697266
|
|
todo(sm<6) draw quad
|
|
probe all rgbaui (0, 0xc0120000, 0x80000000, 0x40210000)
|
|
|
|
|
|
[pixel shader todo]
|
|
uniform uint4 u;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
// Low bits, high bits
|
|
double2 d = asdouble(u.xz, u.yw);
|
|
return float4(d, 0, 0);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 uint4 0xc000000 0x40020000 0x80000000 0xc04be000
|
|
todo(sm<6) draw quad
|
|
probe all rgba (2.25, -55.75001526, 0.0, 0.0) 1
|
|
|
|
|
|
[pixel shader todo]
|
|
uniform uint2 u;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
double d = asdouble(u.x, u.y);
|
|
return float4(d, 0, 0, 0);
|
|
}
|
|
|
|
[test]
|
|
uniform 0 uint4 0x80000000 0xc04be000 0 0
|
|
todo(sm<6) draw quad
|
|
probe all rgba (-55.75001526, 0.0, 0.0, 0.0) 1
|
|
|
|
|
|
[require]
|
|
shader model >= 6.0
|
|
int64
|
|
|
|
[pixel shader]
|
|
uniform uint64_t2 l;
|
|
uniform uint2 u;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
uint64_t2 n = l / u;
|
|
uint4 result = uint4(l.x, l.y, n.x, n.y);
|
|
return result;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 uint64_t2 0x500000001 0x100000002
|
|
uniform 4 uint4 10 4 0 0
|
|
draw quad
|
|
probe all rgba (1.0, 2.0, 2147483648.0, 1073741824.0)
|
|
|
|
|
|
[pixel shader]
|
|
uniform int64_t2 l;
|
|
uniform int2 i;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int64_t2 n = l / i;
|
|
int4 result = int4(l.x, l.y, n.x, n.y);
|
|
return result;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 int64_t2 -21474836481 0x100000002
|
|
uniform 4 int4 -20 8 0 0
|
|
draw quad
|
|
probe all rgba (-1.0, 2.0, 1073741824.0, 536870912.0)
|