mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
6a8939e19f
These tests should actually compile and run in SM1, which is possible if we pass the int and uint uniforms in the expected IEEE 754 float format for SM1 shaders. Also, bools should be passed as 1.0f or 0.0f to SM1.
47 lines
842 B
Plaintext
47 lines
842 B
Plaintext
[pixel shader]
|
|
float4 main() : SV_TARGET
|
|
{
|
|
return float4(
|
|
(float)(bool)0.0,
|
|
(float)(bool)0,
|
|
(float)(bool)2.0,
|
|
(float)(bool)2
|
|
);
|
|
}
|
|
|
|
[test]
|
|
draw quad
|
|
probe all rgba (0.0, 0.0, 1.0, 1.0)
|
|
|
|
|
|
[pixel shader todo(sm<4)]
|
|
uniform float4 x;
|
|
uniform int4 y;
|
|
|
|
float4 main() : SV_TARGET
|
|
{
|
|
return (float4)(bool4)x + 10.0 * (float4)(int4)(bool4)y;
|
|
}
|
|
|
|
[test]
|
|
uniform 0 float4 0.0 0.0 2.0 4.0
|
|
if(sm<4) uniform 4 float4 0 1 0 10
|
|
if(sm>=4) uniform 4 int4 0 1 0 10
|
|
todo(sm<4) draw quad
|
|
probe all rgba (0.0, 10.0, 1.0, 11.0)
|
|
|
|
|
|
[pixel shader todo(sm<4)]
|
|
uniform bool4 b;
|
|
|
|
float4 main() : sv_target
|
|
{
|
|
return (float4)b + (float4)(int4)b;
|
|
}
|
|
|
|
[test]
|
|
if(sm<4) uniform 0 float4 1.0 1.0 1.0 0.0
|
|
if(sm>=4) uniform 0 uint4 0x00000001 0x00000002 0x80000000 0x00000000
|
|
todo(sm<4) draw quad
|
|
probe all rgba (2.0, 2.0, 2.0, 0.0)
|