1
0
Fork 0

Spectre/Game/FPSCounter: Use sp::Time

This commit is contained in:
Henrik Hautakoski 2020-12-14 18:27:18 +01:00
parent 6de6028ba4
commit 919aa7740a
2 changed files with 19 additions and 18 deletions

View file

@ -5,9 +5,9 @@
namespace sp {
FPSCounter::FPSCounter() :
m_fps (60.0f),
m_updateRate (2000)
m_fps (60.0f)
{
m_updateRate = Time::seconds(2);
reset();
}
@ -21,14 +21,14 @@ float FPSCounter::getFPS() const
return m_fps;
}
void FPSCounter::setUpdateRate(unsigned int ups)
void FPSCounter::setUpdateRate(unsigned int rate)
{
// Clamp to 1.
if (ups < 1) {
ups = 1;
if (rate < 1) {
rate = 1;
}
m_updateRate = ups * 1000;
m_updateRate = Time::seconds(rate);
// Must reset the counter.
reset();
@ -36,12 +36,11 @@ void FPSCounter::setUpdateRate(unsigned int ups)
bool FPSCounter::update()
{
unsigned int current = system::getMilliseconds();
unsigned int elapsed = current - m_time;
Time current = Time::milliseconds(system::getMilliseconds());
Time elapsed = current - m_time;
if (elapsed >= m_updateRate) {
float fraction = m_count / ((float) elapsed);
m_fps = fraction * 1000.f;
m_fps = m_count / elapsed.seconds();
m_time = current;
m_count = 0;
@ -52,7 +51,7 @@ bool FPSCounter::update()
void FPSCounter::reset()
{
m_time = system::getMilliseconds();
m_time = Time::milliseconds(system::getMilliseconds());
m_count = 0;
}