From 97e3e8451e97475059fe6f0a3b5093a17793f1aa Mon Sep 17 00:00:00 2001 From: Green Sky Date: Fri, 1 Aug 2025 17:49:57 +0200 Subject: [PATCH] stop the perf blinking --- src/main_screen.cpp | 6 +++++- src/main_screen.hpp | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main_screen.cpp b/src/main_screen.cpp index 9360f9d..cd2352c 100644 --- a/src/main_screen.cpp +++ b/src/main_screen.cpp @@ -467,7 +467,7 @@ Screen* MainScreen::render(float time_delta, bool&) { ImGui::ShowDemoWindow(&_show_tool_demo); } - _compute_lower_limit_hit = false; + _compute_lower_limit_hit_rendered = true; float tc_unfinished_queue_interval; { // load rendered but not loaded textures @@ -690,6 +690,10 @@ Screen* MainScreen::tick(float time_delta, bool& quit) { if (compute_mode_lower_limit > _min_tick_interval) { _min_tick_interval = compute_mode_lower_limit; _compute_lower_limit_hit = true; + } else if (_compute_lower_limit_hit_rendered) { + // stop indicating a limit hit + _compute_lower_limit_hit_rendered = false; + _compute_lower_limit_hit = false; } return nullptr; diff --git a/src/main_screen.hpp b/src/main_screen.hpp index b52b336..ea6ff42 100644 --- a/src/main_screen.hpp +++ b/src/main_screen.hpp @@ -147,6 +147,7 @@ struct MainScreen final : public Screen { float _min_tick_interval {0.f}; bool _compute_lower_limit_hit {false}; + bool _compute_lower_limit_hit_rendered {false}; float nextRender(void) override { return _render_interval; } float nextTick(void) override { return _min_tick_interval; }