From 91ac384736a34af53f1dbb9a58306aab0fb02115 Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 16 Oct 2015 14:13:52 +0200 Subject: [PATCH] Make sure we always do BindOutputWindow/FlipOutputWindow pairs of work --- renderdoc/driver/vulkan/vk_debug.cpp | 2 -- renderdoc/replay/replay_output.cpp | 12 +++++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/renderdoc/driver/vulkan/vk_debug.cpp b/renderdoc/driver/vulkan/vk_debug.cpp index 6dd45aba9..b974d4d7c 100644 --- a/renderdoc/driver/vulkan/vk_debug.cpp +++ b/renderdoc/driver/vulkan/vk_debug.cpp @@ -701,8 +701,6 @@ VulkanDebugManager::VulkanDebugManager(WrappedVulkan *driver, VkDevice dev) 0, }; - // VKTODOMED used for texture display, but eventually will have to be created on the fly - // for whichever image we're viewing (and cached), not specifically created here. vkr = vt->CreateImageView(Unwrap(dev), &viewInfo, &m_TextAtlasView); RDCASSERT(vkr == VK_SUCCESS); diff --git a/renderdoc/replay/replay_output.cpp b/renderdoc/replay/replay_output.cpp index 09e8fe0a2..8d5ce7c8e 100644 --- a/renderdoc/replay/replay_output.cpp +++ b/renderdoc/replay/replay_output.cpp @@ -360,9 +360,15 @@ void ReplayOutput::DisplayContext() m_pDevice->BindOutputWindow(m_PixelContext.outputID, false); m_pDevice->ClearOutputWindowColour(m_PixelContext.outputID, color); - if(m_Config.m_Type != eOutputType_TexDisplay) return; - if(m_ContextX < 0.0f && m_ContextY < 0.0f) return; - if(m_RenderData.texDisplay.texid == ResourceId()) return; + if( + (m_Config.m_Type != eOutputType_TexDisplay) || + (m_ContextX < 0.0f && m_ContextY < 0.0f) || + (m_RenderData.texDisplay.texid == ResourceId()) + ) + { + m_pDevice->FlipOutputWindow(m_PixelContext.outputID); + return; + } TextureDisplay disp = m_RenderData.texDisplay; disp.rawoutput = false;