[PATCH vkd3d 3/8] vkd3d: Translate D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS to VK_SHARING_MODE_CONCURRENT.
Józef Kucia
joseph.kucia at gmail.com
Thu May 2 09:02:37 CDT 2019
From: Józef Kucia <jkucia at codeweavers.com>
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
libs/vkd3d/resource.c | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
diff --git a/libs/vkd3d/resource.c b/libs/vkd3d/resource.c
index 9e6216a0251f..ac2ff384cd3d 100644
--- a/libs/vkd3d/resource.c
+++ b/libs/vkd3d/resource.c
@@ -621,11 +621,18 @@ static HRESULT vkd3d_create_image(struct d3d12_device *device,
image_info.usage |= VK_IMAGE_USAGE_SAMPLED_BIT;
if (desc->Flags & D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS)
- FIXME("Ignoring D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS.\n");
-
- image_info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
- image_info.queueFamilyIndexCount = 0;
- image_info.pQueueFamilyIndices = NULL;
+ {
+ TRACE("Creating image with VK_SHARING_MODE_CONCURRENT.\n");
+ image_info.sharingMode = VK_SHARING_MODE_CONCURRENT;
+ image_info.queueFamilyIndexCount = device->queue_family_count;
+ image_info.pQueueFamilyIndices = device->queue_family_indices;
+ }
+ else
+ {
+ image_info.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
+ image_info.queueFamilyIndexCount = 0;
+ image_info.pQueueFamilyIndices = NULL;
+ }
image_info.initialLayout = is_cpu_accessible_heap(heap_properties) ?
VK_IMAGE_LAYOUT_PREINITIALIZED : VK_IMAGE_LAYOUT_UNDEFINED;
--
2.21.0
More information about the wine-devel
mailing list