diff options
| author | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-07-30 19:10:46 -0400 | 
|---|---|---|
| committer | Brad Payne (Vir Linden) <vir@lindenlab.com> | 2012-07-30 19:10:46 -0400 | 
| commit | 6ae4802e6d3ed7aa67c4946c434850de3be5ffe3 (patch) | |
| tree | 2bfeb690ba2dbf9849fb318d3f551a584278cee2 /indra/llcharacter/llmotioncontroller.cpp | |
| parent | 020980fb4cd5f2cc18b56fa795c08c153a15bd4a (diff) | |
| parent | 58d5e223b8a15b4825b96923b5891b251c6ccc98 (diff) | |
merge
Diffstat (limited to 'indra/llcharacter/llmotioncontroller.cpp')
| -rw-r--r-- | indra/llcharacter/llmotioncontroller.cpp | 17 | 
1 files changed, 12 insertions, 5 deletions
| diff --git a/indra/llcharacter/llmotioncontroller.cpp b/indra/llcharacter/llmotioncontroller.cpp index bb892f4a7f..4f6351709e 100644 --- a/indra/llcharacter/llmotioncontroller.cpp +++ b/indra/llcharacter/llmotioncontroller.cpp @@ -542,6 +542,8 @@ void LLMotionController::updateIdleActiveMotions()  //-----------------------------------------------------------------------------  // updateMotionsByType()  //----------------------------------------------------------------------------- +static LLFastTimer::DeclareTimer FTM_MOTION_ON_UPDATE("Motion onUpdate"); +  void LLMotionController::updateMotionsByType(LLMotion::LLMotionBlendType anim_type)  {  	BOOL update_result = TRUE; @@ -699,7 +701,10 @@ void LLMotionController::updateMotionsByType(LLMotion::LLMotionBlendType anim_ty  			}  			// perform motion update -			update_result = motionp->onUpdate(mAnimTime - motionp->mActivationTimestamp, last_joint_signature); +			{ +				LLFastTimer t(FTM_MOTION_ON_UPDATE); +				update_result = motionp->onUpdate(mAnimTime - motionp->mActivationTimestamp, last_joint_signature); +			}  		}  		//********************** @@ -810,7 +815,7 @@ void LLMotionController::updateMotions(bool force_update)  	// Always cap the number of loaded motions  	purgeExcessMotions(); -	 +		  	// Update timing info for this time step.  	if (!mPaused)  	{ @@ -832,6 +837,7 @@ void LLMotionController::updateMotions(bool force_update)  				}  				updateLoadingMotions(); +				  				return;  			} @@ -850,7 +856,7 @@ void LLMotionController::updateMotions(bool force_update)  	}  	updateLoadingMotions(); - +	  	resetJointSignatures();  	if (mPaused && !force_update) @@ -861,11 +867,12 @@ void LLMotionController::updateMotions(bool force_update)  	{  		// update additive motions  		updateAdditiveMotions(); +				  		resetJointSignatures(); - +		  		// update all regular motions  		updateRegularMotions(); - +		  		if (use_quantum)  		{  			mPoseBlender.blendAndCache(TRUE); | 
