Fix marker regions before command buffers are started

This commit is contained in:
baldurk
2020-07-12 10:52:10 +01:00
parent 88591c35fd
commit 75fc8140c1
2 changed files with 6 additions and 6 deletions
+4 -4
View File
@@ -994,14 +994,14 @@ void VulkanReplay::ClearOutputWindowColor(uint64_t id, FloatVector col)
VkCommandBuffer cmd = m_pDriver->GetNextCmd();
const VkDevDispatchTable *vt = ObjDisp(dev);
VkMarkerRegion::Begin("ClearOutputWindowColor", cmd);
VkCommandBufferBeginInfo beginInfo = {VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, NULL,
VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT};
VkResult vkr = vt->BeginCommandBuffer(Unwrap(cmd), &beginInfo);
RDCASSERTEQUAL(vkr, VK_SUCCESS);
VkMarkerRegion::Begin("ClearOutputWindowColor", cmd);
outw.bbBarrier.srcAccessMask = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT;
outw.bbBarrier.oldLayout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
outw.bbBarrier.dstAccessMask = VK_ACCESS_TRANSFER_WRITE_BIT;
@@ -1101,14 +1101,14 @@ void VulkanReplay::FlipOutputWindow(uint64_t id)
VkCommandBuffer cmd = m_pDriver->GetNextCmd();
const VkDevDispatchTable *vt = ObjDisp(dev);
VkMarkerRegion::Begin("FlipOutputWindow", cmd);
VkCommandBufferBeginInfo beginInfo = {VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, NULL,
VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT};
VkResult vkr = vt->BeginCommandBuffer(Unwrap(cmd), &beginInfo);
RDCASSERTEQUAL(vkr, VK_SUCCESS);
VkMarkerRegion::Begin("FlipOutputWindow", cmd);
// ensure rendering has completed before copying
outw.bbBarrier.srcAccessMask = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT;
outw.bbBarrier.dstAccessMask = VK_ACCESS_TRANSFER_READ_BIT;
+2 -2
View File
@@ -484,13 +484,13 @@ bool VulkanReplay::RenderTextureInternal(TextureDisplay cfg, const ImageState &i
VkCommandBuffer cmd = m_pDriver->GetNextCmd();
VkMarkerRegion::Begin("RenderTexture", cmd);
VkCommandBufferBeginInfo beginInfo = {VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, NULL,
VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT};
vt->BeginCommandBuffer(Unwrap(cmd), &beginInfo);
VkMarkerRegion::Begin("RenderTexture", cmd);
ImageBarrierSequence setupBarriers, cleanupBarriers;
imageState.TempTransition(m_pDriver->GetQueueFamilyIndex(),
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, VK_ACCESS_SHADER_READ_BIT,