mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-01-28 13:05:02 -08:00
tests: Test bool semantics.
This commit is contained in:
parent
8b4e70dfee
commit
3cce4e70e9
Notes:
Alexandre Julliard
2023-05-01 22:25:00 +02:00
Approved-by: Giovanni Mascellani (@giomasce) Approved-by: Francisco Casas (@fcasas) Approved-by: Henri Verbeet (@hverbeet) Approved-by: Alexandre Julliard (@julliard) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/177
@ -53,6 +53,7 @@ vkd3d_shader_tests = \
|
|||||||
tests/array-parameters.shader_test \
|
tests/array-parameters.shader_test \
|
||||||
tests/asuint.shader_test \
|
tests/asuint.shader_test \
|
||||||
tests/bitwise.shader_test \
|
tests/bitwise.shader_test \
|
||||||
|
tests/bool-semantics.shader_test \
|
||||||
tests/cast-broadcast.shader_test \
|
tests/cast-broadcast.shader_test \
|
||||||
tests/cast-componentwise-compatible.shader_test \
|
tests/cast-componentwise-compatible.shader_test \
|
||||||
tests/cast-componentwise-equal.shader_test \
|
tests/cast-componentwise-equal.shader_test \
|
||||||
|
53
tests/bool-semantics.shader_test
Normal file
53
tests/bool-semantics.shader_test
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
[require]
|
||||||
|
shader model >= 4.0
|
||||||
|
|
||||||
|
[input layout]
|
||||||
|
0 r32g32b32a32 uint apple
|
||||||
|
0 r32g32 int sv_position
|
||||||
|
|
||||||
|
[vertex buffer 0]
|
||||||
|
format r32 uint
|
||||||
|
0 1 0x80000000 0xffffffff -2 -2
|
||||||
|
0 1 0x80000000 0xffffffff -2 2
|
||||||
|
0 1 0x80000000 0xffffffff 2 -2
|
||||||
|
0 1 0x80000000 0xffffffff 2 2
|
||||||
|
|
||||||
|
[vertex shader]
|
||||||
|
|
||||||
|
struct input
|
||||||
|
{
|
||||||
|
bool4 apple : apple;
|
||||||
|
int4 pos : sv_position;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct output
|
||||||
|
{
|
||||||
|
bool4 apple : apple;
|
||||||
|
int4 fapple : apple1;
|
||||||
|
float4 pos : sv_position;
|
||||||
|
};
|
||||||
|
|
||||||
|
void main(in struct input i, out struct output o, uint id : SV_VertexID)
|
||||||
|
{
|
||||||
|
o.apple = i.apple;
|
||||||
|
o.fapple = i.apple;
|
||||||
|
o.pos = i.pos;
|
||||||
|
}
|
||||||
|
|
||||||
|
[pixel shader]
|
||||||
|
|
||||||
|
struct input
|
||||||
|
{
|
||||||
|
bool4 apple : apple;
|
||||||
|
int4 fapple : apple1;
|
||||||
|
float4 pos : sv_position;
|
||||||
|
};
|
||||||
|
|
||||||
|
float4 main(struct input i) : sv_target
|
||||||
|
{
|
||||||
|
return i.apple + i.fapple;
|
||||||
|
}
|
||||||
|
|
||||||
|
[test]
|
||||||
|
draw triangle strip 4
|
||||||
|
todo probe all rgba (0.0, 2.0, 2.0, 2.0)
|
@ -152,7 +152,9 @@ static DXGI_FORMAT parse_format(const char *line, enum texture_data_type *data_t
|
|||||||
formats[] =
|
formats[] =
|
||||||
{
|
{
|
||||||
{"r32g32b32a32 float", TEXTURE_DATA_FLOAT, 16, DXGI_FORMAT_R32G32B32A32_FLOAT},
|
{"r32g32b32a32 float", TEXTURE_DATA_FLOAT, 16, DXGI_FORMAT_R32G32B32A32_FLOAT},
|
||||||
|
{"r32g32b32a32 uint", TEXTURE_DATA_UINT, 16, DXGI_FORMAT_R32G32B32A32_UINT},
|
||||||
{"r32g32 float", TEXTURE_DATA_FLOAT, 8, DXGI_FORMAT_R32G32_FLOAT},
|
{"r32g32 float", TEXTURE_DATA_FLOAT, 8, DXGI_FORMAT_R32G32_FLOAT},
|
||||||
|
{"r32g32 int", TEXTURE_DATA_SINT, 8, DXGI_FORMAT_R32G32_SINT},
|
||||||
{"r32g32 uint", TEXTURE_DATA_UINT, 8, DXGI_FORMAT_R32G32_UINT},
|
{"r32g32 uint", TEXTURE_DATA_UINT, 8, DXGI_FORMAT_R32G32_UINT},
|
||||||
{"r32 float", TEXTURE_DATA_FLOAT, 4, DXGI_FORMAT_R32_FLOAT},
|
{"r32 float", TEXTURE_DATA_FLOAT, 4, DXGI_FORMAT_R32_FLOAT},
|
||||||
{"r32 sint", TEXTURE_DATA_SINT, 4, DXGI_FORMAT_R32_SINT},
|
{"r32 sint", TEXTURE_DATA_SINT, 4, DXGI_FORMAT_R32_SINT},
|
||||||
@ -270,11 +272,11 @@ static void parse_resource_directive(struct resource_params *resource, const cha
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case TEXTURE_DATA_SINT:
|
case TEXTURE_DATA_SINT:
|
||||||
u.i = strtol(line, &rest, 10);
|
u.i = strtol(line, &rest, 0);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TEXTURE_DATA_UINT:
|
case TEXTURE_DATA_UINT:
|
||||||
u.u = strtoul(line, &rest, 10);
|
u.u = strtoul(line, &rest, 0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user