From c75f85098cfdd53744a30ea5dce24b3fd43bd9c1 Mon Sep 17 00:00:00 2001 From: Tom Englund Date: Fri, 4 Jul 2025 09:39:53 +0200 Subject: [PATCH] renderer: move render calculation behind if case the durationUs is not used unless debug overlay is enabled, lets not calculate it each call to rendermonitor if not enabled. same with renderStart. --- src/render/Renderer.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 37f7c7ed..513225cc 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -1201,10 +1201,10 @@ void CHyprRenderer::renderMonitor(PHLMONITOR pMonitor) { firstLaunchAnimActive = false; } - renderStart = std::chrono::high_resolution_clock::now(); - - if (*PDEBUGOVERLAY == 1) + if (*PDEBUGOVERLAY == 1) { + renderStart = std::chrono::high_resolution_clock::now(); g_pDebugOverlay->frameData(pMonitor); + } if (!g_pCompositor->m_sessionActive) return; @@ -1435,10 +1435,10 @@ void CHyprRenderer::renderMonitor(PHLMONITOR pMonitor) { pMonitor->m_pendingFrame = false; - const float durationUs = std::chrono::duration_cast(std::chrono::high_resolution_clock::now() - renderStart).count() / 1000.f; - g_pDebugOverlay->renderData(pMonitor, durationUs); - if (*PDEBUGOVERLAY == 1) { + const float durationUs = std::chrono::duration_cast(std::chrono::high_resolution_clock::now() - renderStart).count() / 1000.f; + g_pDebugOverlay->renderData(pMonitor, durationUs); + if (pMonitor == g_pCompositor->m_monitors.front()) { const float noOverlayUs = durationUs - std::chrono::duration_cast(endRenderOverlay - renderStartOverlay).count() / 1000.f; g_pDebugOverlay->renderDataNoOverlay(pMonitor, noOverlayUs);