mirror of
https://github.com/TombEngine/TombEngine.git
synced 2025-05-07 11:13:53 +03:00
37 lines
739 B
C++
37 lines
739 B
C++
![]() |
#include "framework.h"
|
||
|
|
||
|
LARGE_INTEGER PerformanceCount;
|
||
|
double LdFreq;
|
||
|
double LdSync;
|
||
|
|
||
|
bool TimeReset()
|
||
|
{
|
||
|
LARGE_INTEGER fq;
|
||
|
QueryPerformanceCounter(&fq);
|
||
|
LdSync = (double)fq.LowPart + (double)fq.HighPart * (double)0xffffffff;
|
||
|
LdSync /= LdFreq;
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
bool TimeInit()
|
||
|
{
|
||
|
LARGE_INTEGER fq;
|
||
|
if (!QueryPerformanceFrequency(&fq))
|
||
|
return false;
|
||
|
LdFreq = (double)fq.LowPart + (double)fq.HighPart * (double)0xFFFFFFFF;
|
||
|
LdFreq /= 60.0;
|
||
|
TimeReset();
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
int Sync()
|
||
|
{
|
||
|
LARGE_INTEGER ct;
|
||
|
double dCounter;
|
||
|
QueryPerformanceCounter(&ct);
|
||
|
dCounter = (double)ct.LowPart + (double)ct.HighPart * (double)0xFFFFFFFF;
|
||
|
dCounter /= LdFreq;
|
||
|
long nFrames = long(dCounter) - long(LdSync);
|
||
|
LdSync = dCounter;
|
||
|
return nFrames;
|
||
|
}
|