From 7f73ecc02a835499390aed734ae898264aef2e8e Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 7 Mar 2016 23:08:06 +0100 Subject: [PATCH] Declare images as VK_SHARING_MODE_CONCURRENT * Necessary for now since the code doesn't acquire ownership --- renderdoc/driver/vulkan/vk_core.cpp | 2 +- renderdoc/driver/vulkan/vk_debug.cpp | 8 ++++---- renderdoc/driver/vulkan/vk_initstate.cpp | 4 ++-- renderdoc/driver/vulkan/vk_replay.cpp | 8 ++++---- renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_core.cpp b/renderdoc/driver/vulkan/vk_core.cpp index 82dfbb898..a97b7ebc1 100644 --- a/renderdoc/driver/vulkan/vk_core.cpp +++ b/renderdoc/driver/vulkan/vk_core.cpp @@ -858,7 +858,7 @@ bool WrappedVulkan::EndFrameCapture(void *dev, void *wnd) { swapInfo.extent.width, swapInfo.extent.height, 1 }, 1, 1, VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_LINEAR, VK_IMAGE_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; vt->CreateImage(Unwrap(dev), &imInfo, NULL, &readbackIm); diff --git a/renderdoc/driver/vulkan/vk_debug.cpp b/renderdoc/driver/vulkan/vk_debug.cpp index 2139e6254..8471cb0a9 100644 --- a/renderdoc/driver/vulkan/vk_debug.cpp +++ b/renderdoc/driver/vulkan/vk_debug.cpp @@ -1140,7 +1140,7 @@ VulkanDebugManager::VulkanDebugManager(WrappedVulkan *driver, VkDevice dev) { width, height, 1 }, 1, 1, VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_SAMPLED_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; @@ -1306,7 +1306,7 @@ VulkanDebugManager::VulkanDebugManager(WrappedVulkan *driver, VkDevice dev) { 1, 1, 1 }, 1, 1, VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT|VK_IMAGE_USAGE_TRANSFER_SRC_BIT, - VK_SHARING_MODE_EXCLUSIVE, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; @@ -2555,7 +2555,7 @@ ResourceId VulkanDebugManager::RenderOverlay(ResourceId texid, TextureDisplayOve 1, 1, VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT|VK_IMAGE_USAGE_SAMPLED_BIT|VK_IMAGE_USAGE_TRANSFER_SRC_BIT, - VK_SHARING_MODE_EXCLUSIVE, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; @@ -3561,7 +3561,7 @@ ResourceId VulkanDebugManager::RenderOverlay(ResourceId texid, TextureDisplayOve 1, 4, VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_TRANSFER_DST_BIT|VK_IMAGE_USAGE_STORAGE_BIT|VK_IMAGE_USAGE_SAMPLED_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; diff --git a/renderdoc/driver/vulkan/vk_initstate.cpp b/renderdoc/driver/vulkan/vk_initstate.cpp index 003bb3462..66c4c7f1e 100644 --- a/renderdoc/driver/vulkan/vk_initstate.cpp +++ b/renderdoc/driver/vulkan/vk_initstate.cpp @@ -459,7 +459,7 @@ bool WrappedVulkan::Serialise_SparseBufferInitialState(ResourceId id, VulkanReso VkBufferCreateInfo bufInfo = { VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, NULL, 0, info->totalSize, VK_BUFFER_USAGE_TRANSFER_SRC_BIT|VK_BUFFER_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, }; VkBuffer buf; @@ -1496,7 +1496,7 @@ bool WrappedVulkan::Serialise_InitialState(ResourceId resid, WrappedVkRes *) m_CreationInfo.m_Image[liveim->id].samples, VK_IMAGE_TILING_OPTIMAL, // make this optimal since the format/etc is more likely supported as optimal VK_IMAGE_USAGE_TRANSFER_SRC_BIT|VK_IMAGE_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, diff --git a/renderdoc/driver/vulkan/vk_replay.cpp b/renderdoc/driver/vulkan/vk_replay.cpp index ab7952230..2919ad235 100644 --- a/renderdoc/driver/vulkan/vk_replay.cpp +++ b/renderdoc/driver/vulkan/vk_replay.cpp @@ -282,7 +282,7 @@ void VulkanReplay::OutputWindow::Create(WrappedVulkan *driver, VkDevice device, 0, Unwrap(surface), 2, imformat, imcolspace, { width, height }, 1, VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT | VK_IMAGE_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR, VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, presentmode, true, Unwrap(old), @@ -325,7 +325,7 @@ void VulkanReplay::OutputWindow::Create(WrappedVulkan *driver, VkDevice device, 1, 1, VULKAN_MESH_VIEW_SAMPLES, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_TRANSFER_DST_BIT|VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; @@ -429,7 +429,7 @@ void VulkanReplay::OutputWindow::Create(WrappedVulkan *driver, VkDevice device, 1, 1, depth ? VULKAN_MESH_VIEW_SAMPLES : VK_SAMPLE_COUNT_1_BIT, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_TRANSFER_DST_BIT|VK_IMAGE_USAGE_TRANSFER_SRC_BIT|VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; @@ -4002,7 +4002,7 @@ byte *VulkanReplay::GetTextureData(ResourceId tex, uint32_t arrayIdx, uint32_t m (uint32_t)imInfo.mipLevels, (uint32_t)imInfo.arrayLayers, imInfo.samples, VK_IMAGE_TILING_OPTIMAL, VK_IMAGE_USAGE_TRANSFER_SRC_BIT|VK_IMAGE_USAGE_TRANSFER_DST_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, }; diff --git a/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp index 4109faf51..747ed6736 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_wsi_funcs.cpp @@ -214,7 +214,7 @@ bool WrappedVulkan::Serialise_vkCreateSwapchainKHR( VK_IMAGE_USAGE_TRANSFER_DST_BIT| VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT| VK_IMAGE_USAGE_SAMPLED_BIT, - VK_SHARING_MODE_EXCLUSIVE, 0, NULL, + VK_SHARING_MODE_CONCURRENT, 0, NULL, VK_IMAGE_LAYOUT_UNDEFINED, };