Changed: Use the high resolution local time function instead of the funky code when getting the local time in the client. Use the timer probe function to check if it is necessary to set the cpu mask in the client
This commit is contained in:
parent
d0de6deddc
commit
79527727a4
2 changed files with 7 additions and 19 deletions
|
@ -687,6 +687,9 @@ void prelogInit()
|
|||
_control87 (_EM_INVALID|_EM_DENORMAL/*|_EM_ZERODIVIDE|_EM_OVERFLOW*/|_EM_UNDERFLOW|_EM_INEXACT, _MCW_EM);
|
||||
#endif // NL_OS_WINDOWS
|
||||
|
||||
CTime::CTimerInfo timerInfo;
|
||||
NLMISC::CTime::probeTimerInfo(timerInfo);
|
||||
if (timerInfo.RequiresSingleCore) // TODO: Also have a FV configuration value to force single core.
|
||||
setCPUMask();
|
||||
|
||||
FPU_CHECKER_ONCE
|
||||
|
|
|
@ -134,24 +134,9 @@ void updateClientTime();
|
|||
// update smoothed time (useful for sky animation)
|
||||
void updateSmoothedTime();
|
||||
|
||||
inline TTime ryzomGetLocalTime ()
|
||||
inline NLMISC::TTime ryzomGetLocalTime()
|
||||
{
|
||||
#ifdef NL_OS_WINDOWS
|
||||
if (ClientCfg.TimerMode == 0)
|
||||
{
|
||||
return (TTime)(NLMISC::CTime::ticksToSecond (NLMISC::CTime::getPerformanceTime()) * 1000.0);
|
||||
}
|
||||
else // if (ClientCfg.TimerMode == 1)
|
||||
{
|
||||
// Use 1 ms timer precision
|
||||
timeBeginPeriod(1);
|
||||
DWORD start = timeGetTime();
|
||||
timeEndPeriod(1);
|
||||
return (TTime)start;
|
||||
}
|
||||
#else // NL_OS_WINDOWS
|
||||
return (TTime)(NLMISC::CTime::ticksToSecond (NLMISC::CTime::getPerformanceTime()) * 1000.0);
|
||||
#endif // NL_OS_WINDOWS
|
||||
return NLMISC::CTime::getLocalTimeHR();
|
||||
}
|
||||
|
||||
inline NLMISC::TTicks ryzomGetPerformanceTime()
|
||||
|
|
Loading…
Reference in a new issue