Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ValveSoftware/vkd3d.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Rebohle <philip.rebohle@tu-dortmund.de>2020-05-29 17:35:21 +0300
committerHans-Kristian Arntzen <post@arntzen-software.no>2020-06-02 17:23:38 +0300
commite6857939e7de69da02dfb277a0482905c133b1c3 (patch)
tree821bd7d819afe78cd8ad2c0810c85e10d73e8625
parent45109686be834d3501f2b73a987c8c5369abf18c (diff)
vkd3d: Do not enable VK_KHR_dedicated_allocation.proton_5.0-nextproton_5.0
Core in 1.1. Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
-rw-r--r--libs/vkd3d/device.c2
-rw-r--r--libs/vkd3d/resource.c75
-rw-r--r--libs/vkd3d/vkd3d_private.h2
-rw-r--r--libs/vkd3d/vulkan_procs.h8
4 files changed, 33 insertions, 54 deletions
diff --git a/libs/vkd3d/device.c b/libs/vkd3d/device.c
index b25ce8cf..1ecc0cdd 100644
--- a/libs/vkd3d/device.c
+++ b/libs/vkd3d/device.c
@@ -138,9 +138,7 @@ static const struct vkd3d_optional_extension_info optional_device_extensions[] =
{
/* KHR extensions */
VK_EXTENSION(KHR_BUFFER_DEVICE_ADDRESS, KHR_buffer_device_address),
- VK_EXTENSION(KHR_DEDICATED_ALLOCATION, KHR_dedicated_allocation),
VK_EXTENSION(KHR_DRAW_INDIRECT_COUNT, KHR_draw_indirect_count),
- VK_EXTENSION(KHR_GET_MEMORY_REQUIREMENTS_2, KHR_get_memory_requirements2),
VK_EXTENSION(KHR_IMAGE_FORMAT_LIST, KHR_image_format_list),
VK_EXTENSION(KHR_PUSH_DESCRIPTOR, KHR_push_descriptor),
VK_EXTENSION(KHR_TIMELINE_SEMAPHORE, KHR_timeline_semaphore),
diff --git a/libs/vkd3d/resource.c b/libs/vkd3d/resource.c
index be5d5c44..26a4a1ac 100644
--- a/libs/vkd3d/resource.c
+++ b/libs/vkd3d/resource.c
@@ -171,34 +171,26 @@ HRESULT vkd3d_allocate_buffer_memory(struct d3d12_device *device, VkBuffer vk_bu
memory_requirements = &memory_requirements2.memoryRequirements;
- if (heap_flags == D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS &&
- device->vk_info.KHR_dedicated_allocation)
- {
- info.sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2;
- info.pNext = NULL;
- info.buffer = vk_buffer;
-
- dedicated_requirements.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
- dedicated_requirements.pNext = NULL;
+ info.sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2;
+ info.pNext = NULL;
+ info.buffer = vk_buffer;
- memory_requirements2.sType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
- memory_requirements2.pNext = &dedicated_requirements;
+ dedicated_requirements.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
+ dedicated_requirements.pNext = NULL;
- VK_CALL(vkGetBufferMemoryRequirements2KHR(device->vk_device, &info, &memory_requirements2));
+ memory_requirements2.sType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
+ memory_requirements2.pNext = &dedicated_requirements;
- if (dedicated_requirements.prefersDedicatedAllocation)
- {
- dedicated_allocation = &dedicated_info;
+ VK_CALL(vkGetBufferMemoryRequirements2(device->vk_device, &info, &memory_requirements2));
- dedicated_info.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
- dedicated_info.pNext = NULL;
- dedicated_info.image = VK_NULL_HANDLE;
- dedicated_info.buffer = vk_buffer;
- }
- }
- else
+ if (heap_flags == D3D12_HEAP_FLAG_ALLOW_ONLY_BUFFERS && dedicated_requirements.prefersDedicatedAllocation)
{
- VK_CALL(vkGetBufferMemoryRequirements(device->vk_device, vk_buffer, memory_requirements));
+ dedicated_allocation = &dedicated_info;
+
+ dedicated_info.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
+ dedicated_info.pNext = NULL;
+ dedicated_info.image = VK_NULL_HANDLE;
+ dedicated_info.buffer = vk_buffer;
}
if (FAILED(hr = vkd3d_allocate_device_memory(device, heap_properties, heap_flags,
@@ -234,33 +226,26 @@ static HRESULT vkd3d_allocate_image_memory(struct d3d12_device *device, VkImage
memory_requirements = &memory_requirements2.memoryRequirements;
- if (device->vk_info.KHR_dedicated_allocation)
- {
- info.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2;
- info.pNext = NULL;
- info.image = vk_image;
-
- dedicated_requirements.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
- dedicated_requirements.pNext = NULL;
+ info.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2;
+ info.pNext = NULL;
+ info.image = vk_image;
- memory_requirements2.sType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
- memory_requirements2.pNext = &dedicated_requirements;
+ dedicated_requirements.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
+ dedicated_requirements.pNext = NULL;
- VK_CALL(vkGetImageMemoryRequirements2KHR(device->vk_device, &info, &memory_requirements2));
+ memory_requirements2.sType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
+ memory_requirements2.pNext = &dedicated_requirements;
- if (dedicated_requirements.prefersDedicatedAllocation)
- {
- dedicated_allocation = &dedicated_info;
+ VK_CALL(vkGetImageMemoryRequirements2(device->vk_device, &info, &memory_requirements2));
- dedicated_info.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
- dedicated_info.pNext = NULL;
- dedicated_info.image = vk_image;
- dedicated_info.buffer = VK_NULL_HANDLE;
- }
- }
- else
+ if (dedicated_requirements.prefersDedicatedAllocation)
{
- VK_CALL(vkGetImageMemoryRequirements(device->vk_device, vk_image, memory_requirements));
+ dedicated_allocation = &dedicated_info;
+
+ dedicated_info.sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
+ dedicated_info.pNext = NULL;
+ dedicated_info.image = vk_image;
+ dedicated_info.buffer = VK_NULL_HANDLE;
}
if (FAILED(hr = vkd3d_allocate_device_memory(device, heap_properties, heap_flags,
diff --git a/libs/vkd3d/vkd3d_private.h b/libs/vkd3d/vkd3d_private.h
index 2cd29e20..df6f8eb4 100644
--- a/libs/vkd3d/vkd3d_private.h
+++ b/libs/vkd3d/vkd3d_private.h
@@ -112,9 +112,7 @@ struct vkd3d_vulkan_info
/* KHR device extensions */
bool KHR_buffer_device_address;
- bool KHR_dedicated_allocation;
bool KHR_draw_indirect_count;
- bool KHR_get_memory_requirements2;
bool KHR_image_format_list;
bool KHR_push_descriptor;
bool KHR_timeline_semaphore;
diff --git a/libs/vkd3d/vulkan_procs.h b/libs/vkd3d/vulkan_procs.h
index d1be290f..ddbdc9f9 100644
--- a/libs/vkd3d/vulkan_procs.h
+++ b/libs/vkd3d/vulkan_procs.h
@@ -151,13 +151,16 @@ VK_DEVICE_PFN(vkFreeCommandBuffers)
VK_DEVICE_PFN(vkFreeDescriptorSets)
VK_DEVICE_PFN(vkFreeMemory)
VK_DEVICE_PFN(vkGetBufferMemoryRequirements)
+VK_DEVICE_PFN(vkGetBufferMemoryRequirements2)
VK_DEVICE_PFN(vkGetDescriptorSetLayoutSupport)
VK_DEVICE_PFN(vkGetDeviceMemoryCommitment)
VK_DEVICE_PFN(vkGetDeviceQueue)
VK_DEVICE_PFN(vkGetEventStatus)
VK_DEVICE_PFN(vkGetFenceStatus)
VK_DEVICE_PFN(vkGetImageMemoryRequirements)
+VK_DEVICE_PFN(vkGetImageMemoryRequirements2)
VK_DEVICE_PFN(vkGetImageSparseMemoryRequirements)
+VK_DEVICE_PFN(vkGetImageSparseMemoryRequirements2)
VK_DEVICE_PFN(vkGetImageSubresourceLayout)
VK_DEVICE_PFN(vkGetPipelineCacheData)
VK_DEVICE_PFN(vkGetQueryPoolResults)
@@ -192,11 +195,6 @@ VK_DEVICE_EXT_PFN(vkSignalSemaphoreKHR)
VK_DEVICE_EXT_PFN(vkCmdDrawIndirectCountKHR)
VK_DEVICE_EXT_PFN(vkCmdDrawIndexedIndirectCountKHR)
-/* VK_KHR_get_memory_requirements2 */
-VK_DEVICE_EXT_PFN(vkGetBufferMemoryRequirements2KHR)
-VK_DEVICE_EXT_PFN(vkGetImageMemoryRequirements2KHR)
-VK_DEVICE_EXT_PFN(vkGetImageSparseMemoryRequirements2KHR)
-
/* VK_KHR_push_descriptor */
VK_DEVICE_EXT_PFN(vkCmdPushDescriptorSetKHR)