From 9b4f6f24f29e8873a14989ba8c9fccfbc460af7f Mon Sep 17 00:00:00 2001 From: JAROWMR Date: Sat, 7 Dec 2024 20:42:38 +0100 Subject: use fixed delta time --- src/crepe/api/LoopTimer.h | 19 ++++++++++--------- src/crepe/system/AISystem.cpp | 2 +- src/crepe/system/PhysicsSystem.cpp | 2 +- 3 files changed, 12 insertions(+), 11 deletions(-) (limited to 'src') diff --git a/src/crepe/api/LoopTimer.h b/src/crepe/api/LoopTimer.h index 9393439..8d0b2f9 100644 --- a/src/crepe/api/LoopTimer.h +++ b/src/crepe/api/LoopTimer.h @@ -58,6 +58,16 @@ public: * \param game_scale The desired game scale (0 = pause, 1 = normal speed, > 1 = speed up). */ void set_game_scale(double game_scale); + + /** + * \brief Get the fixed delta time for consistent updates. + * + * Fixed delta time is used for operations that require uniform time steps, such as physics + * calculations. + * + * \return Fixed delta time in seconds. + */ + double get_fixed_delta_time() const; private: friend class LoopManager; @@ -77,15 +87,6 @@ private: */ void enforce_frame_rate(); - /** - * \brief Get the fixed delta time for consistent updates. - * - * Fixed delta time is used for operations that require uniform time steps, such as physics - * calculations. - * - * \return Fixed delta time in seconds. - */ - double get_fixed_delta_time() const; /** * \brief Get the accumulated lag in the game loop. diff --git a/src/crepe/system/AISystem.cpp b/src/crepe/system/AISystem.cpp index 324ee5f..64e93fc 100644 --- a/src/crepe/system/AISystem.cpp +++ b/src/crepe/system/AISystem.cpp @@ -17,7 +17,7 @@ void AISystem::update() { ComponentManager & mgr = mediator.component_manager; RefVector ai_components = mgr.get_components_by_type(); - double dt = LoopTimer::get_instance().get_delta_time(); + double dt = LoopTimer::get_instance().get_fixed_delta_time(); for (AI & ai : ai_components) { RefVector rigidbodies diff --git a/src/crepe/system/PhysicsSystem.cpp b/src/crepe/system/PhysicsSystem.cpp index 7e66567..be768f9 100644 --- a/src/crepe/system/PhysicsSystem.cpp +++ b/src/crepe/system/PhysicsSystem.cpp @@ -11,7 +11,7 @@ using namespace crepe; void PhysicsSystem::update() { - double dt = LoopTimer::get_instance().get_delta_time(); + double dt = LoopTimer::get_instance().get_fixed_delta_time(); ComponentManager & mgr = this->mediator.component_manager; RefVector rigidbodies = mgr.get_components_by_type(); -- cgit v1.2.3