From 7d73616fda41c5cc4219cb50e3a81391b27c6e54 Mon Sep 17 00:00:00 2001 From: Magnus Norddahl Date: Sun, 25 Aug 2019 12:12:29 +0200 Subject: [PATCH] - release any references to command buffer when flushed --- src/rendering/vulkan/renderer/vk_renderstate.cpp | 2 -- src/rendering/vulkan/system/vk_framebuffer.cpp | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/rendering/vulkan/renderer/vk_renderstate.cpp b/src/rendering/vulkan/renderer/vk_renderstate.cpp index 1e7167baf..e1104f9ea 100644 --- a/src/rendering/vulkan/renderer/vk_renderstate.cpp +++ b/src/rendering/vulkan/renderer/vk_renderstate.cpp @@ -162,7 +162,6 @@ void VkRenderState::Apply(int dt) mApplyCount++; if (mApplyCount >= vk_submit_size) { - EndRenderPass(); GetVulkanFrameBuffer()->FlushCommands(false); mApplyCount = 0; } @@ -437,7 +436,6 @@ void VkRenderState::ApplyDynamicSet() void VkRenderState::WaitForStreamBuffers() { - EndRenderPass(); GetVulkanFrameBuffer()->WaitForCommands(false); mApplyCount = 0; mStreamBufferWriter.Reset(); diff --git a/src/rendering/vulkan/system/vk_framebuffer.cpp b/src/rendering/vulkan/system/vk_framebuffer.cpp index ac79f022e..3c9a9e335 100644 --- a/src/rendering/vulkan/system/vk_framebuffer.cpp +++ b/src/rendering/vulkan/system/vk_framebuffer.cpp @@ -251,6 +251,8 @@ void VulkanFrameBuffer::FlushCommands(VulkanCommandBuffer **commands, size_t cou void VulkanFrameBuffer::FlushCommands(bool finish, bool lastsubmit) { + mRenderState->EndRenderPass(); + if (mDrawCommands || mTransferCommands) { VulkanCommandBuffer *commands[2];