diff options
author | callum <none@none> | 2012-08-29 11:16:22 -0700 |
---|---|---|
committer | callum <none@none> | 2012-08-29 11:16:22 -0700 |
commit | e4230e640aacda728c860ae43efaf7b8cd24f217 (patch) | |
tree | 42d4a875d295a9d8ff2ffbb40dcc895372dc1d3b /indra | |
parent | 173364ed5da234c68dd6d0497e443f7aeb98e1b1 (diff) |
MAINT-1455 FIX Media Texture not visually updated correctly
Reviewed by me. (Bao created)
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llviewerobject.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llviewerobject.h | 2 | ||||
-rw-r--r-- | indra/newview/llvovolume.cpp | 12 | ||||
-rw-r--r-- | indra/newview/llvovolume.h | 1 |
4 files changed, 15 insertions, 2 deletions
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp index 67c87a6c63..e8c3d8e99f 100644 --- a/indra/newview/llviewerobject.cpp +++ b/indra/newview/llviewerobject.cpp @@ -4205,7 +4205,7 @@ S32 LLViewerObject::setTETextureCore(const U8 te, const LLUUID& uuid, LLHost hos return retval; } - +//virtual void LLViewerObject::changeTEImage(S32 index, LLViewerTexture* new_image) { if(index < 0 || index >= getNumTEs()) diff --git a/indra/newview/llviewerobject.h b/indra/newview/llviewerobject.h index 409108266e..b824b11513 100644 --- a/indra/newview/llviewerobject.h +++ b/indra/newview/llviewerobject.h @@ -332,7 +332,7 @@ public: /*virtual*/ S32 setTEGlow(const U8 te, const F32 glow); /*virtual*/ BOOL setMaterial(const U8 material); virtual void setTEImage(const U8 te, LLViewerTexture *imagep); // Not derived from LLPrimitive - void changeTEImage(S32 index, LLViewerTexture* new_image) ; + virtual void changeTEImage(S32 index, LLViewerTexture* new_image) ; LLViewerTexture *getTEImage(const U8 te) const; void fitFaceTexture(const U8 face); diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 5ea13ee0a6..a8bfc3ba46 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -1842,6 +1842,18 @@ void LLVOVolume::setNumTEs(const U8 num_tes) return ; } +//virtual +void LLVOVolume::changeTEImage(S32 index, LLViewerTexture* imagep) +{ + BOOL changed = (mTEImages[index] != imagep); + LLViewerObject::changeTEImage(index, imagep); + if (changed) + { + gPipeline.markTextured(mDrawable); + mFaceMappingChanged = TRUE; + } +} + void LLVOVolume::setTEImage(const U8 te, LLViewerTexture *imagep) { BOOL changed = (mTEImages[te] != imagep); diff --git a/indra/newview/llvovolume.h b/indra/newview/llvovolume.h index 29e782e9dd..25fe085421 100644 --- a/indra/newview/llvovolume.h +++ b/indra/newview/llvovolume.h @@ -174,6 +174,7 @@ public: /*virtual*/ void setScale(const LLVector3 &scale, BOOL damped); + /*virtual*/ void changeTEImage(S32 index, LLViewerTexture* new_image) ; /*virtual*/ void setNumTEs(const U8 num_tes); /*virtual*/ void setTEImage(const U8 te, LLViewerTexture *imagep); /*virtual*/ S32 setTETexture(const U8 te, const LLUUID &uuid); |