diff options
| author | Richard Linden <none@none> | 2010-06-30 20:00:24 -0700 | 
|---|---|---|
| committer | Richard Linden <none@none> | 2010-06-30 20:00:24 -0700 | 
| commit | 61252480e0c1b5bc7ed2d5e89c03be1d3c8f7e0c (patch) | |
| tree | d25404a888d576a8c2629ca18db4110ed14ed803 | |
| parent | 43d51d4548916d37ec89f38d5209e20864c4885c (diff) | |
EXT-8177 FIX avatar walk/run animation periodically stops when going down a steep hill
| -rw-r--r-- | indra/llcharacter/llkeyframewalkmotion.cpp | 3 | 
1 files changed, 2 insertions, 1 deletions
| diff --git a/indra/llcharacter/llkeyframewalkmotion.cpp b/indra/llcharacter/llkeyframewalkmotion.cpp index 0587e5642c..4a1aca62bc 100644 --- a/indra/llcharacter/llkeyframewalkmotion.cpp +++ b/indra/llcharacter/llkeyframewalkmotion.cpp @@ -289,7 +289,8 @@ BOOL LLWalkAdjustMotion::onUpdate(F32 time, U8* joint_mask)  		F32 foot_speed = speed - ((foot_slip_vector * avatar_movement_dir) / delta_time);  		// multiply animation playback rate so that foot speed matches avatar speed -		F32 desired_speed_multiplier = llclamp(speed / foot_speed, 0.f, ANIM_SPEED_MAX); +		F32 min_speed_multiplier = clamp_rescale(speed, 0.f, 1.f, 0.f, 0.1f); +		F32 desired_speed_multiplier = llclamp(speed / foot_speed, min_speed_multiplier, ANIM_SPEED_MAX);  		// blend towards new speed adjustment value  		F32 new_speed_adjust = lerp(mAdjustedSpeed, desired_speed_multiplier, LLCriticalDamp::getInterpolant(SPEED_ADJUST_TIME_CONSTANT)); | 
