summaryrefslogtreecommitdiff
path: root/indra/newview/llwearable.cpp
diff options
context:
space:
mode:
authorNyx (Neal Orman) <nyx@lindenlab.com>2009-11-09 16:41:16 -0500
committerNyx (Neal Orman) <nyx@lindenlab.com>2009-11-09 16:41:16 -0500
commit75bdd2ff321032a3a9d4e814d6067088d48cafab (patch)
tree0f37364d789ed813d5f8d3640949bee26996ce0f /indra/newview/llwearable.cpp
parent90d985946ce167a313e2765728caf2652931dfdd (diff)
EXT-2326 Editing appearance causes too many texture callbacks stalls the viewer
problem was caused by triggering updateMeshTextures() every time visual params or textures were changed on your base avatar object. The latest structure makes the parameters and textures in the wearables authoritative, causing them to be copied to the avatar on a regular basis. This resulted in way too many callbacks to be registered while waiting for baked textures to be uploaded. Fixed by removing many calls to updateMeshTextures() and ensuring that it gets called every time an appropriate param or texture actually changes, or a wearable gets added/removed. This appears to cut the number of callbacks to a reasonable level. Code reviewed by Bigpapi.
Diffstat (limited to 'indra/newview/llwearable.cpp')
-rw-r--r--indra/newview/llwearable.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/indra/newview/llwearable.cpp b/indra/newview/llwearable.cpp
index 2b4861ce4f..3185ee45bf 100644
--- a/indra/newview/llwearable.cpp
+++ b/indra/newview/llwearable.cpp
@@ -674,8 +674,6 @@ void LLWearable::writeToAvatar( BOOL set_by_user, BOOL update_customize_floater
avatar->updateSexDependentLayerSets( set_by_user );
}
- avatar->updateMeshTextures();
-
// if( set_by_user )
// {
// gAgent.sendAgentSetAppearance();
@@ -719,7 +717,7 @@ void LLWearable::removeFromAvatar( EWearableType type, BOOL set_by_user )
}
avatar->updateVisualParams();
- avatar->updateMeshTextures();
+ avatar->wearableUpdated(type);
// if( set_by_user )
// {