6 #include "Mountain/core.hpp" 7 #include "Mountain/utils/stopwatch.hpp" 20 MOUNTAIN_API
static inline float_t timeScale = 1.f;
23 MOUNTAIN_API
static inline float_t maxDeltaTime = 0.1f;
26 MOUNTAIN_API
static inline float_t freezeTimer = 0.f;
28 MOUNTAIN_API
static inline std::optional<double_t> targetFps;
31 STATIC_GETTER(float_t, TotalTime, m_TotalTime)
34 STATIC_GETTER(float_t, LastTotalTime, m_LastTotalTime)
37 STATIC_GETTER(float_t, TotalTimeUnscaled, m_TotalTimeUnscaled)
40 STATIC_GETTER(float_t, LastTotalTimeUnscaled, m_LastTotalTimeUnscaled)
43 STATIC_GETTER(float_t, DeltaTime, m_DeltaTime)
46 STATIC_GETTER(float_t, DeltaTimeUnscaled, m_DeltaTimeUnscaled)
49 STATIC_GETTER(uint64_t, TotalFrameCount, m_TotalFrameCount)
52 MOUNTAIN_API
static float_t GetTargetDeltaTime();
63 STATIC_GETTER(float_t, LastFrameDuration, m_LastFrameDuration)
70 MOUNTAIN_API
static bool_t
OnInterval(float_t interval);
77 MOUNTAIN_API
static bool_t OnIntervalUnscaled(float_t interval);
80 MOUNTAIN_API
static inline float_t m_TotalTime = 0.f;
81 MOUNTAIN_API
static inline float_t m_LastTotalTime = 0.f;
82 MOUNTAIN_API
static inline float_t m_TotalTimeUnscaled = 0.f;
83 MOUNTAIN_API
static inline float_t m_LastTotalTimeUnscaled = 0.f;
84 MOUNTAIN_API
static inline float_t m_DeltaTime = 0.f;
85 MOUNTAIN_API
static inline float_t m_DeltaTimeUnscaled = 0.f;
86 MOUNTAIN_API
static inline uint64_t m_TotalFrameCount = 0;
88 MOUNTAIN_API
static inline float_t m_LastFrameDuration = 0.f;
90 MOUNTAIN_API
static inline Stopwatch m_Stopwatch;
92 static void Initialize();
93 static void Shutdown();
102 static void WaitForNextFrame();
103 static double_t SleepFor(double_t milliseconds);
MATH_TOOLBOX constexpr bool_t OnInterval(float_t value, float_t lastValue, float_t interval)
Contains all declarations of the Mountain Framework.