diff options
-rw-r--r-- | indra/newview/llvoavatar.cpp | 26 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_tools.xml | 22 |
2 files changed, 32 insertions, 16 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index a195f0fb68..cd98fe6d7e 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -8282,6 +8282,7 @@ void LLVOAvatar::idleUpdateRenderCost() const LLViewerObject* attached_object = (*attachment_iter); if (attached_object && !attached_object->isHUDAttachment()) { + textures.clear(); const LLDrawable* drawable = attached_object->mDrawable; if (drawable) { @@ -8289,6 +8290,25 @@ void LLVOAvatar::idleUpdateRenderCost() if (volume) { cost += volume->getRenderCost(textures); + + const_child_list_t children = volume->getChildren(); + for (const_child_list_t::const_iterator child_iter = children.begin(); + child_iter != children.end(); + ++child_iter) + { + LLViewerObject* child_obj = *child_iter; + LLVOVolume *child = dynamic_cast<LLVOVolume*>( child_obj ); + if (child) + { + cost += volume->getRenderCost(textures); + } + } + + for (LLVOVolume::texture_cost_t::iterator iter = textures.begin(); iter != textures.end(); ++iter) + { + // add the cost of each individual texture in the linkset + cost += iter->second; + } } } } @@ -8296,11 +8316,7 @@ void LLVOAvatar::idleUpdateRenderCost() } - for (LLVOVolume::texture_cost_t::iterator iter = textures.begin(); iter != textures.end(); ++iter) - { - // add the cost of each individual texture in the linkset - cost += iter->second; - } + // Diagnostic output to identify all avatar-related textures. // Does not affect rendering cost calculation. diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml index 05d47506db..b99a8b6228 100644 --- a/indra/newview/skins/default/xui/en/floater_tools.xml +++ b/indra/newview/skins/default/xui/en/floater_tools.xml @@ -788,35 +788,35 @@ name="linked_set_count" top="144" width="80"> - Linked Sets: [COUNT] + L: [COUNT] </text> <text text_color="LtGray_50" type="string" length="1" - height="10" follows="left|top" halign="right" layout="topleft" top_delta="0" - right="-8" - name="linked_set_cost" - tool_tip="Cost of currently selected linked sets as [prims],[physics complexity]" + right="-100" + name="object_count" width="80"> - Cost: [COST] / [PHYSICS] + O: [COUNT] </text> <text text_color="LtGray_50" type="string" length="1" + height="10" follows="left|top" halign="right" layout="topleft" - top_pad="5" - right="-120" - name="object_count" + top_delta="0" + right="-8" + name="linked_set_cost" + tool_tip="Cost of currently selected linked sets as [prims],[physics complexity]" width="80"> - Objects: [COUNT] + Cost: [COST] / [PHYSICS] </text> <text text_color="LtGray_50" @@ -825,7 +825,7 @@ follows="left|top" halign="right" layout="topleft" - top_delta="0" + top_pad="5" right="-8" name="object_cost" tool_tip="Cost of currently selected objects as [prims] / [physics complexity]" |