diff options
author | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-06-24 17:21:18 -0400 |
---|---|---|
committer | Nyx (Neal Orman) <nyx@lindenlab.com> | 2010-06-24 17:21:18 -0400 |
commit | f89bbd3baa6dd87b0477a240e7cde09c6aed3293 (patch) | |
tree | 9a7a3dea0d4e55f2fa3ec70321a1fcfdeb9e4045 /indra/llcharacter | |
parent | 8f892d0f36fda170a5cecf0aea89887d6d0e45ef (diff) |
EXT-7838 FIX - viewer 2.1 avatars look ruth-shaped to viewer-2 users
Added a third visual param group VISUAL_PARAM_GROUP_TWEAKABLE_NO_TRANSMIT
to specify visual params that are user-tweakable, but should not be sent
over the network.
We should have this group *only* for new user-tweakable visual parameters
that should not be sent over the network. These should only be used for
*new* parameters that only contribute to the generation of baked textures.
Code reviewed by Richard
Diffstat (limited to 'indra/llcharacter')
-rw-r--r-- | indra/llcharacter/llcharacter.cpp | 2 | ||||
-rw-r--r-- | indra/llcharacter/llvisualparam.cpp | 4 | ||||
-rw-r--r-- | indra/llcharacter/llvisualparam.h | 2 |
3 files changed, 5 insertions, 3 deletions
diff --git a/indra/llcharacter/llcharacter.cpp b/indra/llcharacter/llcharacter.cpp index 27c0c0b640..11665aff76 100644 --- a/indra/llcharacter/llcharacter.cpp +++ b/indra/llcharacter/llcharacter.cpp @@ -381,7 +381,7 @@ void LLCharacter::clearVisualParamWeights() param; param = getNextVisualParam()) { - if (param->getGroup() == VISUAL_PARAM_GROUP_TWEAKABLE) + if (param->isTweakable()) { param->setWeight( param->getDefaultWeight(), FALSE ); } diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp index 703fe2f9cc..122406e20b 100644 --- a/indra/llcharacter/llvisualparam.cpp +++ b/indra/llcharacter/llvisualparam.cpp @@ -261,7 +261,7 @@ void LLVisualParam::setAnimationTarget(F32 target_value, BOOL upload_bake) if (mInfo) { - if (getGroup() == VISUAL_PARAM_GROUP_TWEAKABLE) + if (isTweakable()) { mTargetWeight = llclamp(target_value, mInfo->mMinWeight, mInfo->mMaxWeight); } @@ -305,7 +305,7 @@ void LLVisualParam::animate( F32 delta, BOOL upload_bake ) //----------------------------------------------------------------------------- void LLVisualParam::stopAnimating(BOOL upload_bake) { - if (mIsAnimating && getGroup() == VISUAL_PARAM_GROUP_TWEAKABLE) + if (mIsAnimating && isTweakable()) { mIsAnimating = FALSE; setWeight(mTargetWeight, upload_bake); diff --git a/indra/llcharacter/llvisualparam.h b/indra/llcharacter/llvisualparam.h index 12b45e6ebe..20ee5fd7ec 100644 --- a/indra/llcharacter/llvisualparam.h +++ b/indra/llcharacter/llvisualparam.h @@ -52,6 +52,7 @@ enum EVisualParamGroup { VISUAL_PARAM_GROUP_TWEAKABLE, VISUAL_PARAM_GROUP_ANIMATABLE, + VISUAL_PARAM_GROUP_TWEAKABLE_NO_TRANSMIT, NUM_VISUAL_PARAM_GROUPS }; @@ -144,6 +145,7 @@ public: F32 getCurrentWeight() const { return mCurWeight; } F32 getLastWeight() const { return mLastWeight; } BOOL isAnimating() const { return mIsAnimating; } + BOOL isTweakable() const { return (getGroup() == VISUAL_PARAM_GROUP_TWEAKABLE) || (getGroup() == VISUAL_PARAM_GROUP_TWEAKABLE_NO_TRANSMIT); } LLVisualParam* getNextParam() { return mNext; } void setNextParam( LLVisualParam *next ); |