summaryrefslogtreecommitdiff
path: root/indra/llcharacter
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2017-12-20 16:26:17 +0000
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2017-12-20 16:26:17 +0000
commit2e6e6c434615b46b754b8198c867f77b0a6b92de (patch)
tree58a75f770308b77fdb02fe6cf8cc2a995d969221 /indra/llcharacter
parentb0e47ec2c26a05a1aa98436ba092f1f01c3ac8aa (diff)
MAINT-8104 - make pausing of wireframe updates a little smarter - waits for a couple of frames to make sure state is current before starting to skip LLRiggedVolume::update()
Diffstat (limited to 'indra/llcharacter')
-rw-r--r--indra/llcharacter/llmotioncontroller.cpp3
-rw-r--r--indra/llcharacter/llmotioncontroller.h3
2 files changed, 4 insertions, 2 deletions
diff --git a/indra/llcharacter/llmotioncontroller.cpp b/indra/llcharacter/llmotioncontroller.cpp
index 4c3a676382..3116403616 100644
--- a/indra/llcharacter/llmotioncontroller.cpp
+++ b/indra/llcharacter/llmotioncontroller.cpp
@@ -135,7 +135,7 @@ LLMotionController::LLMotionController()
mLastTime(0.0f),
mHasRunOnce(FALSE),
mPaused(FALSE),
- mPauseTime(0.f),
+ mPausedFrame(0),
mTimeStep(0.f),
mTimeStepCount(0),
mLastInterp(0.f),
@@ -1129,6 +1129,7 @@ void LLMotionController::pauseAllMotions()
{
//LL_INFOS() << "Pausing animations..." << LL_ENDL;
mPaused = TRUE;
+ mPausedFrame = LLFrameTimer::getFrameCount();
}
}
diff --git a/indra/llcharacter/llmotioncontroller.h b/indra/llcharacter/llmotioncontroller.h
index bcd0bfc685..637ee4d2bb 100644
--- a/indra/llcharacter/llmotioncontroller.h
+++ b/indra/llcharacter/llmotioncontroller.h
@@ -148,6 +148,7 @@ public:
void pauseAllMotions();
void unpauseAllMotions();
BOOL isPaused() const { return mPaused; }
+ S32 getPausedFrame() const { return mPausedFrame; }
void setTimeStep(F32 step);
F32 getTimeStep() const { return mTimeStep; }
@@ -221,7 +222,7 @@ protected:
F32 mLastTime;
BOOL mHasRunOnce;
BOOL mPaused;
- F32 mPauseTime;
+ S32 mPausedFrame;
F32 mTimeStep;
S32 mTimeStepCount;
F32 mLastInterp;