Add buffer barriers to "Usage in frame" view

This is very helpful to debug missing barriers by matching the workflow offered for images.
This commit is contained in:
MagicPoncho
2018-06-22 11:29:26 -04:00
committed by baldurk
parent f0c8efe24d
commit 1bd83cca23
@@ -2081,11 +2081,16 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier(
RemapQueueFamilyIndices(bufBarriers.back().srcQueueFamilyIndex,
bufBarriers.back().dstQueueFamilyIndex);
if(IsLoading(m_State))
{
m_BakedCmdBufferInfo[m_LastCmdBufferID].resourceUsage.push_back(std::make_pair(
GetResID(pBufferMemoryBarriers[i].buffer),
EventUsage(m_BakedCmdBufferInfo[m_LastCmdBufferID].curEventID, ResourceUsage::Barrier)));
}
}
}
ResourceId origcmd = GetResourceManager()->GetOriginalID(GetResID(commandBuffer));
for(uint32_t i = 0; i < imageMemoryBarrierCount; i++)
{
if(pImageMemoryBarriers[i].image != VK_NULL_HANDLE)
@@ -2100,9 +2105,9 @@ bool WrappedVulkan::Serialise_vkCmdPipelineBarrier(
if(IsLoading(m_State))
{
m_BakedCmdBufferInfo[origcmd].resourceUsage.push_back(std::make_pair(
m_BakedCmdBufferInfo[m_LastCmdBufferID].resourceUsage.push_back(std::make_pair(
GetResID(pImageMemoryBarriers[i].image),
EventUsage(m_BakedCmdBufferInfo[origcmd].curEventID, ResourceUsage::Barrier)));
EventUsage(m_BakedCmdBufferInfo[m_LastCmdBufferID].curEventID, ResourceUsage::Barrier)));
}
}
}
@@ -3998,4 +4003,4 @@ INSTANTIATE_FUNCTION_SERIALISED(void, vkCmdInsertDebugUtilsLabelEXT, VkCommandBu
const VkDebugUtilsLabelEXT *pLabelInfo);
INSTANTIATE_FUNCTION_SERIALISED(void, vkCmdSetDeviceMask, VkCommandBuffer commandBuffer,
uint32_t deviceMask);
uint32_t deviceMask);