vkd3d: Create smaller UAV-only descriptor pools in the allocator if Vulkan-backed heaps are enabled.

In this case d3d12_command_allocator_allocate_descriptor_set() is
only called for clearing UAVs. This helps on platforms with limited
descriptor maximum counts.
This commit is contained in:
Conor McCarthy
2023-05-08 14:47:07 +10:00
committed by Alexandre Julliard
parent 7516adeeae
commit f039c86aac
Notes: Alexandre Julliard 2023-05-08 22:33:59 +02:00
Approved-by: Henri Verbeet (@hverbeet)
Approved-by: Alexandre Julliard (@julliard)
Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/202
3 changed files with 22 additions and 4 deletions

View File

@@ -1437,7 +1437,7 @@ static VkDescriptorPool d3d12_command_allocator_allocate_descriptor_pool(
pool_desc.pNext = NULL;
pool_desc.flags = 0;
pool_desc.maxSets = 512;
pool_desc.poolSizeCount = ARRAY_SIZE(device->vk_pool_sizes);
pool_desc.poolSizeCount = device->vk_pool_count;
pool_desc.pPoolSizes = device->vk_pool_sizes;
if ((vr = VK_CALL(vkCreateDescriptorPool(vk_device, &pool_desc, NULL, &vk_pool))) < 0)
{