mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-09-18 08:56:10 -04:00
Fix for controller delta time going below start time
This commit is contained in:
parent
020bc410bf
commit
634b0fd067
@ -65,11 +65,7 @@ public:
|
|||||||
, mStopTime(ctrl->timeStop)
|
, mStopTime(ctrl->timeStop)
|
||||||
{
|
{
|
||||||
if(mDeltaInput)
|
if(mDeltaInput)
|
||||||
{
|
|
||||||
mDeltaCount = mPhase;
|
mDeltaCount = mPhase;
|
||||||
while(mDeltaCount < mStartTime)
|
|
||||||
mDeltaCount += (mStopTime-mStartTime);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual Ogre::Real calculate(Ogre::Real value)
|
virtual Ogre::Real calculate(Ogre::Real value)
|
||||||
@ -77,6 +73,9 @@ public:
|
|||||||
if(mDeltaInput)
|
if(mDeltaInput)
|
||||||
{
|
{
|
||||||
mDeltaCount += value*mFrequency;
|
mDeltaCount += value*mFrequency;
|
||||||
|
if(mDeltaCount < mStartTime)
|
||||||
|
mDeltaCount = mStopTime - std::fmod(mStartTime - mDeltaCount,
|
||||||
|
mStopTime - mStartTime);
|
||||||
mDeltaCount = std::fmod(mDeltaCount - mStartTime,
|
mDeltaCount = std::fmod(mDeltaCount - mStartTime,
|
||||||
mStopTime - mStartTime) + mStartTime;
|
mStopTime - mStartTime) + mStartTime;
|
||||||
return mDeltaCount;
|
return mDeltaCount;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user