summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2018-07-20 21:27:18 +0100
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2018-07-20 21:27:18 +0100
commita8e34e2899165141dcdf49ba541125567ece7a35 (patch)
tree0be639859e3c9915a02771f1ae3f7b20db373cbf
parent73c76fdccf3da73502403deeab3f2c4e26d68376 (diff)
MAINT-8863 - less verbose diagnostics, kept the fix. Make sure joint nums get rebuilt after invalid joints are scrubbed.
-rw-r--r--indra/newview/llskinningutil.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/indra/newview/llskinningutil.cpp b/indra/newview/llskinningutil.cpp
index 72252aebde..2bd70da01d 100644
--- a/indra/newview/llskinningutil.cpp
+++ b/indra/newview/llskinningutil.cpp
@@ -111,9 +111,10 @@ void LLSkinningUtil::scrubInvalidJoints(LLVOAvatar *avatar, LLMeshSkinInfo* skin
// needed for handling of any legacy bad data.
if (!avatar->getJoint(skin->mJointNames[j]))
{
- LL_DEBUGS("Avatar") << avatar->getFullname() << " mesh rigged to invalid joint" << skin->mJointNames[j] << LL_ENDL;
+ LL_DEBUGS("Avatar") << avatar->getFullname() << " mesh rigged to invalid joint " << skin->mJointNames[j] << LL_ENDL;
LL_WARNS_ONCE("Avatar") << avatar->getFullname() << " mesh rigged to invalid joint" << skin->mJointNames[j] << LL_ENDL;
skin->mJointNames[j] = "mPelvis";
+ skin->mJointNumsInitialized = false; // force update after names change.
}
}
skin->mInvalidJointsScrubbed = true;
@@ -156,10 +157,11 @@ void LLSkinningUtil::initSkinningMatrixPalette(
LL_WARNS_ONCE("Avatar") << avatar->getFullname()
<< " avatar build state: isBuilt() " << avatar->isBuilt()
<< " mInitFlags " << avatar->mInitFlags << LL_ENDL;
+#if 0
dump_avatar_and_skin_state("initSkinningMatrixPalette joint not found", avatar, skin);
+#endif
}
}
- //dump_avatar_and_skin_state("initSkinningMatrixPalette finished OK", avatar, skin);
}
void LLSkinningUtil::checkSkinWeights(LLVector4a* weights, U32 num_vertices, const LLMeshSkinInfo* skin)
@@ -280,14 +282,13 @@ void LLSkinningUtil::initJointNums(LLMeshSkinInfo* skin, LLVOAvatar *avatar)
{
LL_WARNS_ONCE("Avatar") << avatar->getFullname() << " unable to find joint " << skin->mJointNames[j] << LL_ENDL;
LL_WARNS_ONCE("Avatar") << avatar->getFullname() << " avatar build state: isBuilt() " << avatar->isBuilt() << " mInitFlags " << avatar->mInitFlags << LL_ENDL;
+#if 0
dump_avatar_and_skin_state("initJointNums joint not found", avatar, skin);
+#endif
}
}
}
skin->mJointNumsInitialized = true;
- LL_WARNS("Avatar") << avatar->getFullname() << " jointNums initialized, avatar built " << avatar->isBuilt()
- << " mInitFlags " << avatar->mInitFlags
- << " num joints " << skin->mJointNames.size() << LL_ENDL;
}
}