vkd3d/tests/hlsl/logic-operations.shader_test
Elizabeth Figura d3ba810c98 tests: Stop probing all pixels when drawing a uniform colour.
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).
2024-06-13 23:55:31 +02:00

182 lines
3.0 KiB
Plaintext

[pixel shader]
float4 main() : SV_TARGET
{
float x = 5.0;
float y = 15.0;
return float4(x == y, x != y, x < y, x <= y);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
float x = 5.0;
float y = 15.0;
float zero = 0.0;
return float4(x > y, x >= y, !x, !zero);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
float zero = 0.0;
float one = 1.0;
return float4(zero && zero, zero && one, one && zero, one && one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
float zero = 0.0;
float one = 1.0;
return float4(zero || zero, zero || one, one || zero, one || one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
int x = 5;
int y = 15;
return float4(x == y, x != y, x < y, x <= y);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
int x = 5;
int y = 15;
int zero = 0;
return float4(x > y, x >= y, !x, !zero);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
int zero = 0;
int one = 1;
return float4(zero && zero, zero && one, one && zero, one && one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
int zero = 0;
int one = 1;
return float4(zero || zero, zero || one, one || zero, one || one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
uint x = 5;
uint y = 15;
return float4(x == y, x != y, x < y, x <= y);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
uint x = 5;
uint y = 15;
uint zero = 0;
return float4(x > y, x >= y, !x, !zero);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
uint zero = 0;
uint one = 1;
return float4(zero && zero, zero && one, one && zero, one && one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0)
[pixel shader]
float4 main() : SV_TARGET
{
uint zero = 0;
uint one = 1;
return float4(zero || zero, zero || one, one || zero, one || one);
}
[test]
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0)
[pixel shader]
int a, b;
float4 main() : SV_TARGET
{
return float4(!(a && b), !!(a || b), !!!a, !(a < b));
}
[test]
if(sm<4) uniform 0 float 5
if(sm<4) uniform 4 float 0
if(sm>=4) uniform 0 int 5
if(sm>=4) uniform 1 int 0
todo(glsl) draw quad
probe (0, 0) rgba (1.0, 1.0, 0.0, 1.0)
if(sm<4) uniform 0 float -1
if(sm<4) uniform 4 float 3
if(sm>=4) uniform 0 int -1
if(sm>=4) uniform 1 int 3
todo(glsl) draw quad
probe (0, 0) rgba (0.0, 1.0, 0.0, 0.0)