Trilliput
идеального таймера нету

вот
tormoz перепробывал все и остановился на банальном блицевском таймере
в ОС программа обычно работает потоками
есть либа BlitzThreads или как то так
но я говорил про реализацию на C++
в справке было что-то расписано про синхронизацию в два потока
в одном банально идет рендер всего дела,
в другом просчитывается симуляция
даж пример валялся в SDK
хотя если чесно я хз почему не работает время симуляции
как я помню оно у мну стояло свободным (5 * DeltaTime)
и все прекрасно работало
Render
мож ты что-то напутал ?
NxReal CPhysX::UpdateTime()
{
NxReal deltaTime;
#ifdef USE_OLD_TIMER
static __int64 gTime,gLastTime;
__int64 freq;
QueryPerformanceCounter((LARGE_INTEGER *)&gTime);
QueryPerformanceFrequency((LARGE_INTEGER *)&freq);
deltaTime = NxReal((double)(gTime - gLastTime)/(double)freq);
gLastTime = gTime;
#endif
#ifdef USE_NEW_TIMER
deltaTime = (NxReal)(dev->getTimer()->getTime() - LastAnimationTime);
LastAnimationTime = dev->getTimer()->getTime();
#endif
return deltaTime;
}
void CPhysX::StartPhysics(float time,bool use)
{
if (!CharController_pause)
gCM->updateControllers();
NxReal deltaTime = UpdateTime();
if (use == 0)
{
gScene->simulate(deltaTime * time);
}
else
{
gScene->simulate(time);
}
gScene->flushStream();
}
void CPhysX::GetPhysicsResults()
{
while (!gScene->fetchResults(NX_RIGID_BODY_FINISHED, false));
}