mirror of
https://github.com/halpz/re3.git
synced 2025-07-25 15:22:47 +00:00
Fix redone + add hud fix
This commit is contained in:
@ -18,6 +18,7 @@ bool CTimer::m_UserPause;
|
||||
bool CTimer::m_CodePause;
|
||||
#ifdef FIX_BUGS
|
||||
uint32 CTimer::m_LogicalFrameCounter;
|
||||
uint32 CTimer::m_LogicalFramesPassed;
|
||||
#endif
|
||||
|
||||
uint32 _nCyclesPerMS = 1;
|
||||
@ -54,6 +55,7 @@ void CTimer::Initialise(void)
|
||||
m_snTimeInMilliseconds = 1;
|
||||
#ifdef FIX_BUGS
|
||||
m_LogicalFrameCounter = 0;
|
||||
m_LogicalFramesPassed = 0;
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
@ -109,12 +111,14 @@ void CTimer::Update(void)
|
||||
frameTime = updInCyclesScaled / (double)_nCyclesPerMS;
|
||||
|
||||
#ifdef FIX_BUGS
|
||||
m_LogicalFramesPassed = 0;
|
||||
static double frameTimeLogical = 0.0;
|
||||
frameTimeLogical += ((double)updInCycles / (double)_nCyclesPerMS);
|
||||
while (frameTimeLogical >= 1000.0 / 30.0) {
|
||||
frameTimeLogical -= 1000.0 / 30.0;
|
||||
m_LogicalFrameCounter++;
|
||||
m_LogicalFramesPassed++;
|
||||
}
|
||||
m_LogicalFrameCounter += m_LogicalFramesPassed;
|
||||
#endif
|
||||
|
||||
m_snTimeInMillisecondsPauseMode = m_snTimeInMillisecondsPauseMode + frameTime;
|
||||
@ -142,12 +146,14 @@ void CTimer::Update(void)
|
||||
frameTime = (double)updInMs * ms_fTimeScale;
|
||||
|
||||
#ifdef FIX_BUGS
|
||||
m_LogicalFramesPassed = 0;
|
||||
static double frameTimeLogical = 0.0;
|
||||
frameTimeLogical += (double)updInMs;
|
||||
while(frameTimeLogical >= 1000.0 / 30.0) {
|
||||
frameTimeLogical -= 1000.0 / 30.0;
|
||||
m_LogicalFrameCounter++;
|
||||
m_LogicalFramesPassed++;
|
||||
}
|
||||
m_LogicalFrameCounter += m_LogicalFramesPassed;
|
||||
#endif
|
||||
|
||||
oldPcTimer = timer;
|
||||
|
@ -13,6 +13,7 @@ class CTimer
|
||||
static float ms_fTimeStepNonClipped;
|
||||
#ifdef FIX_BUGS
|
||||
static uint32 m_LogicalFrameCounter;
|
||||
static uint32 m_LogicalFramesPassed;
|
||||
#endif
|
||||
public:
|
||||
static bool m_UserPause;
|
||||
@ -65,6 +66,7 @@ public:
|
||||
static float GetDefaultTimeStep(void) { return 50.0f / 30.0f; }
|
||||
static float GetTimeStepFix(void) { return GetTimeStep() / GetDefaultTimeStep(); }
|
||||
static uint32 GetLogicalFrameCounter(void) { return m_LogicalFrameCounter; }
|
||||
static uint32 GetLogicalFramesPassed(void) { return m_LogicalFramesPassed; }
|
||||
#endif
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user