tests/shader_runner: Add support for cube resources.

This commit is contained in:
Elizabeth Figura
2025-04-17 22:07:34 -05:00
committed by Henri Verbeet
parent b58ff893a5
commit e312207124
Notes: Henri Verbeet 2025-06-26 17:50:53 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1606
9 changed files with 177 additions and 58 deletions

View File

@@ -621,6 +621,12 @@ static void parse_resource_directive(struct resource_params *resource, const cha
{
resource->desc.dimension = RESOURCE_DIMENSION_3D;
}
else if (sscanf(line, "( cube , %u ) ", &resource->desc.width) == 1)
{
resource->desc.dimension = RESOURCE_DIMENSION_CUBE;
resource->desc.height = resource->desc.width;
resource->desc.layer_count = 6;
}
else
{
fatal_error("Malformed resource size '%s'.\n", line);
@@ -652,9 +658,6 @@ static void parse_resource_directive(struct resource_params *resource, const cha
if (rest == line)
break;
if (resource->desc.layer_count > 1)
fatal_error("Upload not implemented for 2d arrays.\n");
vkd3d_array_reserve((void **)&resource->data, &resource->data_capacity, resource->data_size + sizeof(u), 1);
memcpy(resource->data + resource->data_size, &u, sizeof(u));
resource->data_size += sizeof(u);