mirror of
https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git
synced 2025-07-20 04:09:16 +00:00
Improve simulation timing at low frame rates.
Increased kDefaultMaxDelta to 0.15. Added a small bias to combat a truncation issue.
This commit is contained in:
@ -261,7 +261,7 @@ public:
|
|||||||
//
|
//
|
||||||
/////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#define kDefaultMaxDelta 0.1 // if the step is greater than .1 seconds, clamp to that
|
#define kDefaultMaxDelta 0.15 // if the step is greater than .15 seconds, clamp to that
|
||||||
#define kDefaultStepSize 1.f / 60.f // default simulation freqency is 60hz
|
#define kDefaultStepSize 1.f / 60.f // default simulation freqency is 60hz
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////
|
||||||
@ -610,7 +610,7 @@ void plSimulationMgr::Advance(float delSecs)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Perform as many whole substeps as possible saving the remainder in our accumulator.
|
// Perform as many whole substeps as possible saving the remainder in our accumulator.
|
||||||
int numSubSteps = (int)(fAccumulator / fStepSize);
|
int numSubSteps = (int)(fAccumulator / fStepSize + 0.000001f);
|
||||||
float delta = numSubSteps * fStepSize;
|
float delta = numSubSteps * fStepSize;
|
||||||
fAccumulator -= delta;
|
fAccumulator -= delta;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user