diff --git a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp index e2e2aa75e..4d53f9670 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_queue_funcs.cpp @@ -331,14 +331,6 @@ VkResult WrappedVulkan::vkQueueSubmit( SAFE_DELETE_ARRAY(unwrapped); - if(m_State == WRITING_CAPFRAME) - { - SCOPED_SERIALISE_CONTEXT(QUEUE_SUBMIT); - Serialise_vkQueueSubmit(queue, cmdBufferCount, pCmdBuffers, fence); - - m_FrameCaptureRecord->AddChunk(scope.Get()); - } - // VKTODOHIGH when maps are intercepted with local buffers, this will have to be // done when not in capframe :(. if(m_State == WRITING_CAPFRAME) @@ -375,6 +367,14 @@ VkResult WrappedVulkan::vkQueueSubmit( } } + if(m_State == WRITING_CAPFRAME) + { + SCOPED_SERIALISE_CONTEXT(QUEUE_SUBMIT); + Serialise_vkQueueSubmit(queue, cmdBufferCount, pCmdBuffers, fence); + + m_FrameCaptureRecord->AddChunk(scope.Get()); + } + for(uint32_t i=0; i < cmdBufferCount; i++) { ResourceId cmd = GetResID(pCmdBuffers[i]);