summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llcontrolavatar.cpp34
-rw-r--r--indra/newview/llvovolume.cpp5
2 files changed, 6 insertions, 33 deletions
diff --git a/indra/newview/llcontrolavatar.cpp b/indra/newview/llcontrolavatar.cpp
index 1a86718acd..fab95ab1d8 100644
--- a/indra/newview/llcontrolavatar.cpp
+++ b/indra/newview/llcontrolavatar.cpp
@@ -50,23 +50,6 @@ LLControlAvatar::~LLControlAvatar()
void LLControlAvatar::matchVolumeTransform()
{
-#if 0
- // AXON - should we be using bind_shape?
- {
- LLVolume *volume = mRootVolp->getVolume();
- if (volume)
- {
- LLUUID mesh_id = volume->getParams().getSculptID();
- const LLMeshSkinInfo* skin = gMeshRepo.getSkinInfo(mesh_id, mRootVolp);
- if (skin)
- {
- LLMatrix4 bind_shape = skin->mBindShapeMatrix;
- LL_INFOS("AXON") << "bind_shape is " << bind_shape << LL_ENDL;
- }
- }
- }
-#endif
-
if (mRootVolp)
{
if (mRootVolp->isAttachment())
@@ -255,7 +238,7 @@ void LLControlAvatar::updateDebugText()
total_tris += volp->getTriangleCount(&verts);
total_verts += verts;
lod_string += llformat("%d",volp->getLOD());
- if (volp && volp->mDrawable)
+ if (volp && volp->mDrawable)
{
if (volp->mDrawable->isActive())
{
@@ -274,19 +257,6 @@ void LLControlAvatar::updateDebugText()
addDebugText(llformat("CAV obj %d anim %d active %s",
total_linkset_count, animated_volume_count, active_string.c_str()));
-#if 0
- // AXON - detailed rigged mesh info
- for (std::vector<LLVOVolume*>::iterator it = volumes.begin();
- it != volumes.end(); ++it)
- {
- LLRiggedVolume *rig_vol = (*it)->getRiggedVolume();
- if (rig_vol)
- {
- addDebugText(rig_vol->mExtraDebugText);
- }
- }
-#endif
-
addDebugText(llformat("lod %s",lod_string.c_str()));
addDebugText(llformat("tris %d verts %d", total_tris, total_verts));
//addDebugText(llformat("anim time %.1f (step %f factor %f)",
@@ -328,7 +298,7 @@ void LLControlAvatar::updateAnimations()
{
if (!mRootVolp)
{
- LL_WARNS("AXON") << "No root vol" << LL_ENDL;
+ LL_WARNS_ONCE("AXON") << "No root vol" << LL_ENDL;
return;
}
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index f77fe56bac..311945d3ee 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -3333,10 +3333,13 @@ U32 LLVOVolume::getExtendedMeshFlags() const
void LLVOVolume::onSetExtendedMeshFlags(U32 flags)
{
+ // AXON - the check against mUserSelected is "empirically
+ // derived": doing rebuildGeom() while in selection trashes the
+ // graphics state of animated objects. Skipping this update is OK
+ // because we get another one on deselect.
if (mDrawable.notNull() && !mUserSelected)
{
// Need to trigger rebuildGeom(), which is where control avatars get created/removed
- //LL_INFOS() << (U32) this << " flags " << flags << ", calling markForUpdate()" << LL_ENDL;
markForUpdate(TRUE);
}
if (isAttachment() && getAvatarAncestor())