diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2022-02-17 20:55:32 +0200 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2022-02-17 21:29:05 +0200 |
commit | 892f7d98d5da2c329472a7075a88e010277b86b0 (patch) | |
tree | 90baa86b9538ac349da148461c35e4edce20422e | |
parent | f47730b92c309092d0a5a95e2d49d7ad53230a97 (diff) |
SL-16861 Animesh and avatar color change fix
-rw-r--r-- | indra/newview/llvovolume.cpp | 7 | ||||
-rw-r--r-- | indra/newview/llvovolume.h | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index a60bece037..49be0765a6 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -225,6 +225,7 @@ LLVOVolume::LLVOVolume(const LLUUID &id, const LLPCode pcode, LLViewerRegion *re mNumFaces = 0; mLODChanged = FALSE; mSculptChanged = FALSE; + mColorChanged = FALSE; mSpotLightPriority = 0.f; mMediaImplList.resize(getNumTEs()); @@ -2031,7 +2032,7 @@ BOOL LLVOVolume::updateGeometry(LLDrawable *drawable) was_regen_faces = lodOrSculptChanged(drawable, compiled); drawable->setState(LLDrawable::REBUILD_VOLUME); } - else if (mSculptChanged || mLODChanged) + else if (mSculptChanged || mLODChanged || mColorChanged) { compiled = TRUE; was_regen_faces = lodOrSculptChanged(drawable, compiled); @@ -2043,7 +2044,7 @@ BOOL LLVOVolume::updateGeometry(LLDrawable *drawable) genBBoxes(FALSE); } - else if (mLODChanged || mSculptChanged) + else if (mLODChanged || mSculptChanged || mColorChanged) { dirtySpatialGroup(drawable->isState(LLDrawable::IN_REBUILD_Q1)); compiled = TRUE; @@ -2075,6 +2076,7 @@ BOOL LLVOVolume::updateGeometry(LLDrawable *drawable) mLODChanged = FALSE; mSculptChanged = FALSE; mFaceMappingChanged = FALSE; + mColorChanged = FALSE; return LLViewerObject::updateGeometry(drawable); } @@ -2213,6 +2215,7 @@ S32 LLVOVolume::setTEColor(const U8 te, const LLColor4& color) if (mDrawable.notNull() && retval) { // These should only happen on updates which are not the initial update. + mColorChanged = TRUE; mDrawable->setState(LLDrawable::REBUILD_COLOR); dirtyMesh(); } diff --git a/indra/newview/llvovolume.h b/indra/newview/llvovolume.h index d158044f5d..4cb7a5481c 100644 --- a/indra/newview/llvovolume.h +++ b/indra/newview/llvovolume.h @@ -413,6 +413,7 @@ private: S32 mLOD; BOOL mLODChanged; BOOL mSculptChanged; + BOOL mColorChanged; F32 mSpotLightPriority; LLMatrix4 mRelativeXform; LLMatrix3 mRelativeXformInvTrans; |