From b1183c712d94d38f75068bd62df006f73bd3550f Mon Sep 17 00:00:00 2001 From: HampusM Date: Sun, 22 May 2022 21:32:16 +0200 Subject: feat: add update speed monitoring --- src/game/game.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'src/game/game.cpp') diff --git a/src/game/game.cpp b/src/game/game.cpp index 18db133..b9f5e3a 100644 --- a/src/game/game.cpp +++ b/src/game/game.cpp @@ -7,6 +7,7 @@ #include +#include #include #include @@ -35,6 +36,7 @@ void Game::on_start() noexcept _status_manager->set_section_title(StatusLineSection::C, "Y: "); _status_manager->set_section_title(StatusLineSection::D, "Paused: "); _status_manager->set_section_title(StatusLineSection::E, "Generation: "); + _status_manager->set_section_title(StatusLineSection::F, "Time since last frame: "); std::shared_ptr> vector2_statusline_subscriber_adapter = _vector2_statusline_subscriber_adapter_factory( @@ -66,9 +68,23 @@ void Game::on_start() noexcept _generation_tracker->get_is_paused() ? "yes" : "no"); _status_manager->set_section_body(StatusLineSection::E, "0"); + + _status_manager->set_section_body(StatusLineSection::F, "0"); + + _last_update_time = std::chrono::system_clock::now(); } -void Game::on_update() noexcept {} +void Game::on_update() noexcept +{ + const auto time_since_last_update = + std::chrono::system_clock::now() - _last_update_time; + + _status_manager->set_section_body( + StatusLineSection::F, + fmt::format("{} nanoseconds", time_since_last_update.count())); + + _last_update_time = std::chrono::system_clock::now(); +} void Game::on_exit() const noexcept { -- cgit v1.2.3-18-g5258