From 4ffade076a6db654873f119717dae9a4bd588153 Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 4 Apr 2023 13:06:23 +0100 Subject: [PATCH] Only show discard resource usage on final subpass. Refs #2895 --- .../driver/vulkan/wrappers/vk_cmd_funcs.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp index f487ff0bc..4a50c38a3 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_cmd_funcs.cpp @@ -86,15 +86,18 @@ void WrappedVulkan::AddImplicitResolveResourceUsage(uint32_t subpass) EventUsage(m_BakedCmdBufferInfo[m_LastCmdBufferID].curEventID, ResourceUsage::ResolveSrc))); } - // also add any discards - for(size_t i = 0; i < rpinfo.attachments.size(); i++) + // also add any discards on the final subpass + if(subpass + 1 == rpinfo.subpasses.size()) { - if(rpinfo.attachments[i].storeOp == VK_ATTACHMENT_STORE_OP_DONT_CARE) + for(size_t i = 0; i < rpinfo.attachments.size(); i++) { - ResourceId image = m_CreationInfo.m_ImageView[fbattachments[i]].image; - m_BakedCmdBufferInfo[m_LastCmdBufferID].resourceUsage.push_back(make_rdcpair( - image, - EventUsage(m_BakedCmdBufferInfo[m_LastCmdBufferID].curEventID, ResourceUsage::Discard))); + if(rpinfo.attachments[i].storeOp == VK_ATTACHMENT_STORE_OP_DONT_CARE) + { + ResourceId image = m_CreationInfo.m_ImageView[fbattachments[i]].image; + m_BakedCmdBufferInfo[m_LastCmdBufferID].resourceUsage.push_back(make_rdcpair( + image, + EventUsage(m_BakedCmdBufferInfo[m_LastCmdBufferID].curEventID, ResourceUsage::Discard))); + } } } }