From 35801dcd72f3063554f7509687c7c36af3bf6cf3 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 9 Nov 2017 15:10:05 +0000 Subject: [PATCH] Don't try to fetch resource ID from already unwrapped image --- .../driver/vulkan/wrappers/vk_cmd_funcs.cpp | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp index c54f2d332..4f05e859f 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp @@ -1828,6 +1828,8 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier( } } + ResourceId origcmd = GetResourceManager()->GetOriginalID(GetResID(commandBuffer)); + for(uint32_t i = 0; i < imageMemoryBarrierCount; i++) { if(pImageMemoryBarriers[i].image != VK_NULL_HANDLE) @@ -1839,6 +1841,13 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier( ReplaceExternalQueueFamily(imgBarriers.back().srcQueueFamilyIndex, imgBarriers.back().dstQueueFamilyIndex); + + if(IsLoading(m_State)) + { + m_BakedCmdBufferInfo[origcmd].resourceUsage.push_back(std::make_pair( + GetResID(pImageMemoryBarriers[i].image), + EventUsage(m_BakedCmdBufferInfo[origcmd].curEventID, ResourceUsage::Barrier))); + } } } @@ -1849,17 +1858,6 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier( else commandBuffer = VK_NULL_HANDLE; } - else - { - ResourceId cmd = GetResourceManager()->GetOriginalID(GetResID(commandBuffer)); - - for(size_t i = 0; i < imgBarriers.size(); i++) - { - m_BakedCmdBufferInfo[cmd].resourceUsage.push_back(std::make_pair( - GetResID(imgBarriers[i].image), - EventUsage(m_BakedCmdBufferInfo[cmd].curEventID, ResourceUsage::Barrier))); - } - } if(commandBuffer != VK_NULL_HANDLE) {