From b403c32b875e55bd01e902f6e9ab05d03041e773 Mon Sep 17 00:00:00 2001 From: baldurk Date: Thu, 15 Aug 2019 14:56:22 +0100 Subject: [PATCH] Fix viewport overlay when using -ve viewport height on KHR_maintenance1 --- renderdoc/driver/vulkan/vk_overlay.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/renderdoc/driver/vulkan/vk_overlay.cpp b/renderdoc/driver/vulkan/vk_overlay.cpp index bd0f1beb5..6ad6f82ca 100644 --- a/renderdoc/driver/vulkan/vk_overlay.cpp +++ b/renderdoc/driver/vulkan/vk_overlay.cpp @@ -972,8 +972,14 @@ ResourceId VulkanReplay::RenderOverlay(ResourceId texid, CompType typeHint, Floa if(m_pDriver->m_ExtensionsEnabled[VkCheckExt_AMD_neg_viewport] || m_pDriver->m_ExtensionsEnabled[VkCheckExt_KHR_maintenance1]) + { ubo->RectSize.y = fabs(viewport.height); + // VK_KHR_maintenance1 requires the position to be adjusted as well + if(m_pDriver->m_ExtensionsEnabled[VkCheckExt_KHR_maintenance1] && viewport.height < 0.0f) + ubo->RectPosition.y += viewport.height; + } + m_Overlay.m_CheckerUBO.Unmap(); vt->CmdBindPipeline(Unwrap(cmd), VK_PIPELINE_BIND_POINT_GRAPHICS,