SH-4226 FIX wearing petite outfit gives appearance responder errors
Requesting appearance updates on updateGeometry for the avatar was spamming the back-end and causing the throttling mechanism to get hit. Removing that caused a re-introduction of SH-4109, so added a callback to link creation in the COF for attachments to request an appearance update. This should cause us to request an appearance update once per attachment attached, where before we were seeing up to 8 redundant requests.master
parent
01ffa67887
commit
ec00f7f14f
|
|
@ -3578,7 +3578,8 @@ void LLAppearanceMgr::registerAttachment(const LLUUID& item_id)
|
|||
// we have to pass do_update = true to call LLAppearanceMgr::updateAppearanceFromCOF.
|
||||
// it will trigger gAgentWariables.notifyLoadingFinished()
|
||||
// But it is not acceptable solution. See EXT-7777
|
||||
LLAppearanceMgr::addCOFItemLink(item_id); // Add COF link for item.
|
||||
LLPointer<LLInventoryCallback> cb = new LLUpdateAppearanceOnDestroy();
|
||||
LLAppearanceMgr::addCOFItemLink(item_id, cb); // Add COF link for item.
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -76,7 +76,6 @@
|
|||
#include "llviewershadermgr.h"
|
||||
#include "llvoavatar.h"
|
||||
#include "llvocache.h"
|
||||
#include "llappearancemgr.h"
|
||||
|
||||
const S32 MIN_QUIET_FRAMES_COALESCE = 30;
|
||||
const F32 FORCE_SIMPLE_RENDER_AREA = 512.f;
|
||||
|
|
@ -4240,8 +4239,6 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
|
|||
{
|
||||
LLFastTimer t(FTM_REBUILD_VOLUME_FACE_LIST);
|
||||
|
||||
bool requiredAppearanceUpdate = false;
|
||||
|
||||
//get all the faces into a list
|
||||
for (LLSpatialGroup::element_iter drawable_iter = group->getDataBegin(); drawable_iter != group->getDataEnd(); ++drawable_iter)
|
||||
{
|
||||
|
|
@ -4340,7 +4337,6 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
|
|||
const int jointCnt = pSkinData->mJointNames.size();
|
||||
const F32 pelvisZOffset = pSkinData->mPelvisOffset;
|
||||
bool fullRig = (jointCnt>=20) ? true : false;
|
||||
requiredAppearanceUpdate = true;
|
||||
if ( fullRig )
|
||||
{
|
||||
for ( int i=0; i<jointCnt; ++i )
|
||||
|
|
@ -4365,14 +4361,12 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
|
|||
pelvisGotSet = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
//If we've set the pelvis to a new position we need to also rebuild some information that the
|
||||
//viewer does at launch (e.g. body size etc.)
|
||||
if ( pelvisGotSet )
|
||||
|
|
@ -4612,11 +4606,6 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
|
|||
drawablep->clearState(LLDrawable::RIGGED);
|
||||
}
|
||||
}
|
||||
|
||||
if ( requiredAppearanceUpdate && gAgent.getRegion() && gAgent.getRegion()->getCentralBakeVersion() )
|
||||
{
|
||||
LLAppearanceMgr::instance().requestServerAppearanceUpdate();
|
||||
}
|
||||
}
|
||||
|
||||
group->mBufferUsage = useage;
|
||||
|
|
|
|||
Loading…
Reference in New Issue