Module: vkd3d Branch: master Commit: 756931f8494ab195f7832b70a23e9cf7e0817310 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=756931f8494ab195f7832b70... Author: Józef Kucia <jkucia(a)codeweavers.com> Date: Thu May 2 16:02:37 2019 +0200 vkd3d: Translate D3D12_RESOURCE_FLAG_ALLOW_SIMULTANEOUS_ACCESS to VK_SHARING_MODE_CONCURRENT. Signed-off-by: Józef Kucia <jkucia(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- 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 9e6216a..ac2ff38 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;