summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xindra/newview/lldrawpoolavatar.cpp2
-rwxr-xr-xindra/newview/pipeline.cpp15
2 files changed, 9 insertions, 8 deletions
diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index e58c2c1037..706918273f 100755
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -1244,7 +1244,7 @@ void LLDrawPoolAvatar::renderAvatars(LLVOAvatar* single_avatar, S32 pass)
return;
}
- BOOL impostor = avatarp->isImpostor() && !single_avatar;
+ BOOL impostor = (avatarp->isImpostor() || avatarp->isTooComplex()) && !single_avatar;
if (impostor && pass != 0)
{ //don't draw anything but the impostor for impostored avatars
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 0536a2bbcf..801422b83b 100755
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -11294,7 +11294,7 @@ static LLTrace::BlockTimerStatHandle FTM_IMPOSTOR_RESIZE("Impostor Resize");
void LLPipeline::generateImpostor(LLVOAvatar* avatar)
{
- LL_WARNS("AvatarRenderPipeline");
+ LL_WARNS_ONCE("AvatarRenderPipeline");
if (avatar)
{
LL_CONT << "Avatar " << avatar->getID() << " is " << (avatar->mDrawable?"":"not ") << "drawable";
@@ -11321,11 +11321,11 @@ void LLPipeline::generateImpostor(LLVOAvatar* avatar)
assertInitialized();
bool visually_muted = avatar->isVisuallyMuted();
- LL_DEBUGS("AvatarRenderPipeline") << "Avatar " << avatar->getID()
+ LL_DEBUGS_ONCE("AvatarRenderPipeline") << "Avatar " << avatar->getID()
<< " is " << ( visually_muted ? "" : "not ") << "visually muted"
<< LL_ENDL;
bool too_complex = avatar->isTooComplex();
- LL_DEBUGS("AvatarRenderPipeline") << "Avatar " << avatar->getID()
+ LL_DEBUGS_ONCE("AvatarRenderPipeline") << "Avatar " << avatar->getID()
<< " is " << ( too_complex ? "" : "not ") << "too complex"
<< LL_ENDL;
@@ -11580,14 +11580,15 @@ void LLPipeline::generateImpostor(LLVOAvatar* avatar)
}
- if (avatar->isTooComplex())
+ if (too_complex)
{ // Visually muted avatar
- LL_DEBUGS("AvatarRenderPipeline") << "Avatar " << avatar->getID() << " set jellybaby" << LL_ENDL;
- gGL.diffuseColor4fv( avatar->getMutedAVColor().mV );
+ LLColor4 muted_color(avatar->getMutedAVColor());
+ LL_DEBUGS_ONCE("AvatarRenderPipeline") << "Avatar " << avatar->getID() << " set jellybaby " << muted_color << LL_ENDL;
+ gGL.diffuseColor4fv( muted_color.mV );
}
else
{ //grey muted avatar
- LL_DEBUGS("AvatarRenderPipeline") << "Avatar " << avatar->getID() << " set grey" << LL_ENDL;
+ LL_DEBUGS_ONCE("AvatarRenderPipeline") << "Avatar " << avatar->getID() << " set grey" << LL_ENDL;
gGL.diffuseColor4ub(64,64,64,255);
}