mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
d3ba810c98
This is simply unnecessary and wastes time. As part of this, simply remove the "all" directive. Only for a couple of tests is it even potentially interesting to validate all pixels (e.g. nointerpolation.shader_test), and for those "all" is replaced with an explicit (0, 0, 640, 480) rect. In all other cases we just probe (0, 0).
93 lines
1.4 KiB
Plaintext
93 lines
1.4 KiB
Plaintext
% Test implicit and explicit casts on function output parameters.
|
|
|
|
[pixel shader todo]
|
|
|
|
uniform float4 f;
|
|
|
|
void func(out float4 o)
|
|
{
|
|
o = f;
|
|
}
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 x;
|
|
func(x);
|
|
return x;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 float4 -1.9 -1.0 2.9 4.0
|
|
todo(sm<6) draw quad
|
|
probe (0, 0) rgba (-1.0, -1.0, 2.0, 4.0)
|
|
|
|
% As above, but cast "x" to float4 first.
|
|
% In SM 6 a cast seems to implicitly promote the type to const,
|
|
% so it fails to match the parameter of func().
|
|
|
|
[pixel shader todo fail(sm>=6)]
|
|
|
|
uniform float4 f;
|
|
|
|
void func(out float4 o)
|
|
{
|
|
o = f;
|
|
}
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 x;
|
|
func((float4)x);
|
|
return x;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 float4 -1.9 -1.0 2.9 4.0
|
|
todo draw quad
|
|
probe (0, 0) rgba (-1.0, -1.0, 2.0, 4.0)
|
|
|
|
% As above, but declare "x" as float4 and cast it to int4.
|
|
|
|
[pixel shader todo fail(sm>=6)]
|
|
|
|
uniform float4 f;
|
|
|
|
void func(out float4 o)
|
|
{
|
|
o = f;
|
|
}
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
float4 x;
|
|
func((int4)x);
|
|
return x;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 float4 -1.9 -1.0 2.9 4.0
|
|
todo draw quad
|
|
probe (0, 0) rgba (-1.0, -1.0, 2.0, 4.0)
|
|
|
|
|
|
[pixel shader todo]
|
|
uniform int4 i;
|
|
|
|
void func(inout float4 a)
|
|
{
|
|
a += 0.1;
|
|
}
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
int4 x = i;
|
|
func(x);
|
|
return x;
|
|
}
|
|
|
|
[test]
|
|
if(sm<4) uniform 0 float4 -2 0 1 -3000000
|
|
if(sm>=4) uniform 0 int4 -2 0 1 -3000000
|
|
todo(sm<6) draw quad
|
|
probe (0, 0) rgba (-1.0, 0.0, 1.0, -3000000.0) 4
|