mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
tests: Test the shape of the sum of two numeric values.
Signed-off-by: Giovanni Mascellani <gmascellani@codeweavers.com> Signed-off-by: Zebediah Figura <zfigura@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
77b5125fda
commit
d4adbe81a0
@ -71,6 +71,7 @@ vkd3d_shader_tests = \
|
|||||||
tests/hlsl-nested-arrays.shader_test \
|
tests/hlsl-nested-arrays.shader_test \
|
||||||
tests/hlsl-return-implicit-conversion.shader_test \
|
tests/hlsl-return-implicit-conversion.shader_test \
|
||||||
tests/hlsl-return-void.shader_test \
|
tests/hlsl-return-void.shader_test \
|
||||||
|
tests/hlsl-shape.shader_test \
|
||||||
tests/hlsl-static-initializer.shader_test \
|
tests/hlsl-static-initializer.shader_test \
|
||||||
tests/hlsl-storage-qualifiers.shader_test \
|
tests/hlsl-storage-qualifiers.shader_test \
|
||||||
tests/hlsl-struct-assignment.shader_test \
|
tests/hlsl-struct-assignment.shader_test \
|
||||||
@ -286,6 +287,7 @@ XFAIL_TESTS = \
|
|||||||
tests/hlsl-nested-arrays.shader_test \
|
tests/hlsl-nested-arrays.shader_test \
|
||||||
tests/hlsl-return-implicit-conversion.shader_test \
|
tests/hlsl-return-implicit-conversion.shader_test \
|
||||||
tests/hlsl-return-void.shader_test \
|
tests/hlsl-return-void.shader_test \
|
||||||
|
tests/hlsl-shape.shader_test \
|
||||||
tests/hlsl-static-initializer.shader_test \
|
tests/hlsl-static-initializer.shader_test \
|
||||||
tests/hlsl-storage-qualifiers.shader_test \
|
tests/hlsl-storage-qualifiers.shader_test \
|
||||||
tests/hlsl-vector-indexing.shader_test \
|
tests/hlsl-vector-indexing.shader_test \
|
||||||
|
355
tests/hlsl-shape.shader_test
Normal file
355
tests/hlsl-shape.shader_test
Normal file
@ -0,0 +1,355 @@
|
|||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float x = 1.0;
|
||||||
|
float y = 2.0;
|
||||||
|
return float4(x + y, 0.0, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (3.0, 0.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1 x = float1(1.0);
|
||||||
|
float2 y = float2(1.0, 2.0);
|
||||||
|
return float4(x + y, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1 x = float1(1.0);
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2 x = float2(1.0, 2.0);
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return float4(x + y, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float x = 1.0;
|
||||||
|
float1 y = float1(1.0);
|
||||||
|
return float4(x + y, y + x, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 2.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float x = 1.0;
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4 x = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float y = 1.0;
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2x2 x = float2x2(1.0, 2.0,
|
||||||
|
3.0, 4.0);
|
||||||
|
float2x3 y = float2x3(1.0, 2.0, 3.0,
|
||||||
|
4.0, 5.0, 6.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 7.0, 9.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2x3 x = float2x3(1.0, 2.0, 3.0,
|
||||||
|
4.0, 5.0, 6.0);
|
||||||
|
float2x2 y = float2x2(1.0, 2.0,
|
||||||
|
3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 7.0, 9.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1x4 x = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float4x4 y = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x4 x = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
float1x4 y = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x1 x = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float4x4 y = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 7.0, 12.0, 17.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x4 x = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
float4x1 y = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 7.0, 12.0, 17.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x4 x = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
float2x3 y = float2x3(1.0, 2.0, 3.0,
|
||||||
|
4.0, 5.0, 6.0);
|
||||||
|
return float4((x + y)[0], 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2x3 x = float2x3(1.0, 2.0, 3.0,
|
||||||
|
4.0, 5.0, 6.0);
|
||||||
|
float4x4 y = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
return float4((x + y)[1], 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (9.0, 11.0, 13.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4 x = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float1x4 y = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1x4 x = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4 x = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float4x1 y = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x1 x = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4 x = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float2x2 y = float2x2(1.0, 2.0,
|
||||||
|
3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2x2 x = float2x2(1.0, 2.0,
|
||||||
|
3.0, 4.0);
|
||||||
|
float4 y = float4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 6.0, 8.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1 x = float1(1.0);
|
||||||
|
float1x4 y = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float1x4 x = float1x4(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float1 y = float1(1.0);
|
||||||
|
return x + y;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float2 x = float2(1.0, 2.0);
|
||||||
|
float4x1 y = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
return float4(x + y, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x1 x = float4x1(1.0, 2.0, 3.0, 4.0);
|
||||||
|
float2 y = float2(1.0, 2.0);
|
||||||
|
return float4(x + y, 0.0, 0.0);
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 4.0, 0.0, 0.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float x = 1.0;
|
||||||
|
float4x4 y = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
return (x + y)[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (2.0, 3.0, 4.0, 5.0)
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
float4 main() : sv_target
|
||||||
|
{
|
||||||
|
float4x4 x = float4x4(1.0, 2.0, 3.0, 4.0,
|
||||||
|
5.0, 6.0, 7.0, 8.0,
|
||||||
|
9.0, 10.0, 11.0, 12.0,
|
||||||
|
13.0, 14.0, 15.0, 16.0);
|
||||||
|
float y = 1.0;
|
||||||
|
return (x + y)[1];
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw quad
|
||||||
|
probe all rgba (6.0, 7.0, 8.0, 9.0)
|
Loading…
Reference in New Issue
Block a user