aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llvoavatar.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/llvoavatar.cpp25
1 files changed, 18 insertions, 7 deletions
diff --git a/linden/indra/newview/llvoavatar.cpp b/linden/indra/newview/llvoavatar.cpp
index d8b0994..8ddc936 100644
--- a/linden/indra/newview/llvoavatar.cpp
+++ b/linden/indra/newview/llvoavatar.cpp
@@ -1521,10 +1521,12 @@ void LLVOAvatar::loadCloud(const std::string& filename, LLPartSysData& particle
1521 LLSDSerialize::fromXMLDocument(cloud, in_file); 1521 LLSDSerialize::fromXMLDocument(cloud, in_file);
1522 1522
1523 particles.fromLLSD(cloud); 1523 particles.fromLLSD(cloud);
1524 if(particles.mPartImageID.isNull()) 1524 const LLUUID default_id = DEFAULT_UNREZZED_AVATAR_PARTICLE;
1525 if(particles.mPartImageID.isNull() || default_id == particles.mPartImageID)
1525 { 1526 {
1526 LLViewerImage* cloud_image = gImageList.getImageFromFile("cloud-particle.j2c"); 1527 LLViewerImage* cloud_image =
1527 particles.mPartImageID = cloud_image->getID(); 1528 gImageList.getImageFromFile("cloud-particle.j2c", MIPMAP_YES, IMMEDIATE_YES, 0, 0, default_id);
1529 particles.mPartImageID = default_id;
1528 } 1530 }
1529} 1531}
1530 1532
@@ -7431,6 +7433,7 @@ BOOL LLVOAvatar::isVisible()
7431// returns true if the value has changed. 7433// returns true if the value has changed.
7432BOOL LLVOAvatar::updateIsFullyLoaded() 7434BOOL LLVOAvatar::updateIsFullyLoaded()
7433{ 7435{
7436
7434 // a "heuristic" to determine if we have enough avatar data to render 7437 // a "heuristic" to determine if we have enough avatar data to render
7435 // (to avoid rendering a "Ruth" - DEV-3168) 7438 // (to avoid rendering a "Ruth" - DEV-3168)
7436 7439
@@ -7510,11 +7513,19 @@ BOOL LLVOAvatar::updateIsFullyLoaded()
7510 7513
7511BOOL LLVOAvatar::isFullyLoaded() 7514BOOL LLVOAvatar::isFullyLoaded()
7512{ 7515{
7516 static BOOL* sPreviewAvatarCloud = rebind_llcontrol<BOOL>("PreviewAvatarAsCloud", &gSavedSettings, true);
7513 static BOOL* sRenderUnloadedAvatar = rebind_llcontrol<BOOL>("RenderUnloadedAvatar", &gSavedSettings, true); 7517 static BOOL* sRenderUnloadedAvatar = rebind_llcontrol<BOOL>("RenderUnloadedAvatar", &gSavedSettings, true);
7514 if (*sRenderUnloadedAvatar) 7518
7515 return TRUE; 7519 if(*sPreviewAvatarCloud && mIsSelf)
7516 else 7520 {
7517 return mFullyLoaded; 7521 return FALSE;
7522 }
7523 else if (*sRenderUnloadedAvatar)
7524 {
7525 return TRUE;
7526 }
7527
7528 return mFullyLoaded;
7518} 7529}
7519 7530
7520 7531