diff options
author | Don Kjer <don@lindenlab.com> | 2012-09-27 22:01:40 +0000 |
---|---|---|
committer | Don Kjer <don@lindenlab.com> | 2012-09-27 22:01:40 +0000 |
commit | 793dde16f371408948474d31f9275ea4031b65aa (patch) | |
tree | 57d46ee9729c2b1888634ce080ce04d4cc2607f3 /indra/llappearance | |
parent | 4f93192e7d00f1f03e0e5241e9f1d2f31623729c (diff) | |
parent | 352698140775e62498686f80b5aa21aee85524cf (diff) |
Merge sunshine-internal -> sunshine-experimental
Diffstat (limited to 'indra/llappearance')
-rwxr-xr-x[-rw-r--r--] | indra/llappearance/llavatarappearance.h | 4 | ||||
-rwxr-xr-x[-rw-r--r--] | indra/llappearance/lldriverparam.cpp | 3 | ||||
-rwxr-xr-x[-rw-r--r--] | indra/llappearance/lltexlayerparams.cpp | 7 | ||||
-rwxr-xr-x | indra/llappearance/llwearable.cpp | 2 |
4 files changed, 10 insertions, 6 deletions
diff --git a/indra/llappearance/llavatarappearance.h b/indra/llappearance/llavatarappearance.h index 4f57335688..5918d1cf2f 100644..100755 --- a/indra/llappearance/llavatarappearance.h +++ b/indra/llappearance/llavatarappearance.h @@ -107,7 +107,9 @@ public: public: virtual bool isSelf() const { return false; } // True if this avatar is for this viewer's agent virtual BOOL isValid() const; - virtual BOOL isUsingBakedTextures() const = 0; + virtual BOOL isUsingServerBakes() const = 0; + virtual BOOL isUsingLocalAppearance() const = 0; + virtual BOOL isEditingAppearance() const = 0; bool isBuilt() const { return mIsBuilt; } diff --git a/indra/llappearance/lldriverparam.cpp b/indra/llappearance/lldriverparam.cpp index 1092b525d0..2d91ebdee9 100644..100755 --- a/indra/llappearance/lldriverparam.cpp +++ b/indra/llappearance/lldriverparam.cpp @@ -187,7 +187,10 @@ BOOL LLDriverParam::setInfo(LLDriverParamInfo *info) { llassert(wearable); LLDriverParam *new_param = new LLDriverParam(mAvatarAppearance, wearable); + // FIXME DRANO this clobbers mWearablep, which means any code + // currently using mWearablep is wrong, or at least untested. *new_param = *this; +// new_param->mDriven.clear(); // clear driven list to avoid overwriting avatar driven params from wearables. return new_param; } diff --git a/indra/llappearance/lltexlayerparams.cpp b/indra/llappearance/lltexlayerparams.cpp index 82c92b5a5e..32bdba4e1c 100644..100755 --- a/indra/llappearance/lltexlayerparams.cpp +++ b/indra/llappearance/lltexlayerparams.cpp @@ -174,12 +174,9 @@ void LLTexLayerParamAlpha::setWeight(F32 weight, BOOL upload_bake) { mCurWeight = new_weight; - if ((mAvatarAppearance->getSex() & getSex()) && (mAvatarAppearance->isSelf() && !mIsDummy)) // only trigger a baked texture update if we're changing a wearable's visual param. + if ((mAvatarAppearance->getSex() & getSex()) && + (mAvatarAppearance->isSelf() && !mIsDummy)) // only trigger a baked texture update if we're changing a wearable's visual param. { - if (!mAvatarAppearance->isUsingBakedTextures()) - { - upload_bake = FALSE; - } mAvatarAppearance->invalidateComposite(mTexLayer->getTexLayerSet(), upload_bake); mTexLayer->invalidateMorphMasks(); } diff --git a/indra/llappearance/llwearable.cpp b/indra/llappearance/llwearable.cpp index 78ff510909..5d53d1ae39 100755 --- a/indra/llappearance/llwearable.cpp +++ b/indra/llappearance/llwearable.cpp @@ -502,6 +502,8 @@ void LLWearable::setLocalTextureObject(S32 index, LLLocalTextureObject <o) void LLWearable::revertValues() { + // FIXME DRANO - this triggers changes to driven params on avatar, potentially clobbering baked appearance. + //update saved settings so wearable is no longer dirty // non-driver params first for (param_map_t::const_iterator iter = mSavedVisualParamMap.begin(); iter != mSavedVisualParamMap.end(); iter++) |