diff options
| author | Xiaohong Bao <bao@lindenlab.com> | 2009-10-12 05:32:52 +0000 | 
|---|---|---|
| committer | Xiaohong Bao <bao@lindenlab.com> | 2009-10-12 05:32:52 +0000 | 
| commit | c2ddcfae49bb1b4794facd64de1c2ac62fdb5715 (patch) | |
| tree | ad9b9f386a7725be892d7f221e973af97b7b2326 /indra/newview | |
| parent | 18f1895bf2abceadba292672eb80a384f0142c73 (diff) | |
fix for EXT-1328:  Alpha textures are not displayed correctly when first loaded.
to be reviewed by davep.
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llface.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llface.h | 1 | ||||
| -rw-r--r-- | indra/newview/llviewertexture.cpp | 5 | 
3 files changed, 11 insertions, 2 deletions
| diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp index b0ae13348b..4246cbc27f 100644 --- a/indra/newview/llface.cpp +++ b/indra/newview/llface.cpp @@ -280,6 +280,11 @@ void LLFace::setTexture(LLViewerTexture* tex)  	mTexture = tex ;  } +void LLFace::dirtyTexture() +{ +	gPipeline.markTextured(getDrawable()); +} +  void LLFace::switchTexture(LLViewerTexture* new_texture)  {  	if(mTexture == new_texture) @@ -295,7 +300,7 @@ void LLFace::switchTexture(LLViewerTexture* new_texture)  	getViewerObject()->changeTEImage(mTEOffset, new_texture) ;  	setTexture(new_texture) ;	 -	gPipeline.markTextured(getDrawable()); +	dirtyTexture();  }  void LLFace::setTEOffset(const S32 te_offset) diff --git a/indra/newview/llface.h b/indra/newview/llface.h index f6ffefcb7c..d734b327d9 100644 --- a/indra/newview/llface.h +++ b/indra/newview/llface.h @@ -90,6 +90,7 @@ public:  	U16				getGeomStart()		const	{ return mGeomIndex; }		// index into draw pool  	void			setTexture(LLViewerTexture* tex) ;  	void            switchTexture(LLViewerTexture* new_texture); +	void            dirtyTexture();  	LLXformMatrix*	getXform()			const	{ return mXform; }  	BOOL			hasGeometry()		const	{ return mGeomCount > 0; }  	LLVector3		getPositionAgent()	const; diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 9f096209dd..a0ab4cb1e6 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -1315,7 +1315,10 @@ bool LLViewerFetchedTexture::updateFetch()  					mComponents = mRawImage->getComponents();  					mGLTexturep->setComponents(mComponents) ; -					gTextureList.dirtyImage(this); +					for(ll_face_list_t::iterator iter = mFaceList.begin(); iter != mFaceList.end(); ++iter) +					{ +						(*iter)->dirtyTexture() ; +					}  				}			  				mIsRawImageValid = TRUE;  				gTextureList.mCreateTextureList.insert(this); | 
