From 3d4dc19412921864c25cd25e0cbffd6e1693c43c Mon Sep 17 00:00:00 2001 From: Vaxry <43317083+vaxerski@users.noreply.github.com> Date: Sat, 16 Aug 2025 20:02:15 +0100 Subject: renderer: improve zoom in anims (#11453) Removes `animations:first_launch_animation` as it's useless now --- src/render/Renderer.cpp | 29 ++--------------------------- 1 file changed, 2 insertions(+), 27 deletions(-) (limited to 'src/render/Renderer.cpp') diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index dfafbead..326f71bb 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -1186,8 +1186,6 @@ void CHyprRenderer::renderMonitor(PHLMONITOR pMonitor, bool commit) { static auto PDAMAGEBLINK = CConfigValue("debug:damage_blink"); static auto PDIRECTSCANOUT = CConfigValue("render:direct_scanout"); static auto PVFR = CConfigValue("misc:vfr"); - static auto PANIMENABLED = CConfigValue("animations:enabled"); - static auto PFIRSTLAUNCHANIM = CConfigValue("animations:first_launch_animation"); static auto PTEARINGENABLED = CConfigValue("general:allow_tearing"); static int damageBlinkCleanup = 0; // because double-buffered @@ -1202,28 +1200,6 @@ void CHyprRenderer::renderMonitor(PHLMONITOR pMonitor, bool commit) { if (!*PDAMAGEBLINK) damageBlinkCleanup = 0; - static bool firstLaunch = true; - static bool firstLaunchAnimActive = *PFIRSTLAUNCHANIM; - - float zoomInFactorFirstLaunch = 1.f; - - if (firstLaunch) { - firstLaunch = false; - m_renderTimer.reset(); - } - - if (m_renderTimer.getSeconds() < 1.5f && firstLaunchAnimActive) { // TODO: make the animation system more damage-flexible so that this can be migrated to there - if (!*PANIMENABLED) { - zoomInFactorFirstLaunch = 1.f; - firstLaunchAnimActive = false; - } else { - zoomInFactorFirstLaunch = 2.f - g_pAnimationManager->getBezier("default")->getYForPoint(m_renderTimer.getSeconds() / 1.5); - damageMonitor(pMonitor); - } - } else { - firstLaunchAnimActive = false; - } - if (*PDEBUGOVERLAY == 1) { renderStart = std::chrono::high_resolution_clock::now(); g_pDebugOverlay->frameData(pMonitor); @@ -1334,11 +1310,10 @@ void CHyprRenderer::renderMonitor(PHLMONITOR pMonitor, bool commit) { else g_pHyprOpenGL->m_renderData.mouseZoomFactor = 1.f; - if (zoomInFactorFirstLaunch > 1.f) { - g_pHyprOpenGL->m_renderData.mouseZoomFactor = zoomInFactorFirstLaunch; + if (pMonitor->m_zoomAnimProgress->isBeingAnimated()) { + g_pHyprOpenGL->m_renderData.mouseZoomFactor = 2.0 - pMonitor->m_zoomAnimProgress->value(); // 2x zoom -> 1x zoom g_pHyprOpenGL->m_renderData.mouseZoomUseMouse = false; g_pHyprOpenGL->m_renderData.useNearestNeighbor = false; - pMonitor->m_forceFullFrames = 10; } CRegion damage, finalDamage; -- cgit v1.2.3