diff options
-rw-r--r-- | indra/llappearance/llavatarappearance.cpp | 5 | ||||
-rw-r--r-- | indra/llappearance/llavatarappearance.h | 1 | ||||
-rw-r--r-- | indra/newview/llcontrolavatar.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llskinningutil.cpp | 3 | ||||
-rw-r--r-- | indra/newview/lluiavatar.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llvoavatar.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llvoavatarself.cpp | 2 |
7 files changed, 16 insertions, 1 deletions
diff --git a/indra/llappearance/llavatarappearance.cpp b/indra/llappearance/llavatarappearance.cpp index e35e4edec2..e4772fbb17 100644 --- a/indra/llappearance/llavatarappearance.cpp +++ b/indra/llappearance/llavatarappearance.cpp @@ -190,7 +190,8 @@ LLAvatarAppearance::LLAvatarAppearance(LLWearableData* wearable_data) : mNumBones(0), mNumCollisionVolumes(0), mCollisionVolumes(NULL), - mIsBuilt(FALSE) + mIsBuilt(FALSE), + mInitFlags(0) { llassert_always(mWearableData); mBakedTextureDatas.resize(LLAvatarAppearanceDefines::BAKED_NUM_INDICES); @@ -281,6 +282,8 @@ void LLAvatarAppearance::initInstance() buildCharacter(); + mInitFlags |= 1<<0; + } // virtual diff --git a/indra/llappearance/llavatarappearance.h b/indra/llappearance/llavatarappearance.h index b6bdb652e8..7815c1844b 100644 --- a/indra/llappearance/llavatarappearance.h +++ b/indra/llappearance/llavatarappearance.h @@ -70,6 +70,7 @@ public: static void initClass(); static void cleanupClass(); // Cleanup data that's only init'd once per class. virtual void initInstance(); // Called after construction to initialize the instance. + S32 mInitFlags; virtual BOOL loadSkeletonNode(); BOOL loadMeshNodes(); BOOL loadLayersets(); diff --git a/indra/newview/llcontrolavatar.cpp b/indra/newview/llcontrolavatar.cpp index 93b178e0e9..6adb34c263 100644 --- a/indra/newview/llcontrolavatar.cpp +++ b/indra/newview/llcontrolavatar.cpp @@ -63,6 +63,8 @@ void LLControlAvatar::initInstance() updateJointLODs(); updateGeometry(mDrawable); hideSkirt(); + + mInitFlags |= 1<<4; } void LLControlAvatar::matchVolumeTransform() diff --git a/indra/newview/llskinningutil.cpp b/indra/newview/llskinningutil.cpp index 64794ae720..df8fc2f7ae 100644 --- a/indra/newview/llskinningutil.cpp +++ b/indra/newview/llskinningutil.cpp @@ -102,6 +102,7 @@ void LLSkinningUtil::initSkinningMatrixPalette( // valid. In other cases of skinned rendering, invalid // joints should already have been removed during scrubInvalidJoints(). LL_WARNS_ONCE("Avatar") << "Rigged to invalid joint name " << skin->mJointNames[j] << LL_ENDL; + LL_WARNS_ONCE() << "avatar build state: isBuilt() " << avatar->isBuilt() << " mInitFlags " << avatar->mInitFlags << LL_ENDL; } } } @@ -217,11 +218,13 @@ void LLSkinningUtil::initJointNums(LLMeshSkinInfo* skin, LLVOAvatar *avatar) if (skin->mJointNums[j] < 0) { LL_WARNS_ONCE() << "joint has unusual number " << skin->mJointNames[j] << ": " << skin->mJointNums[j] << LL_ENDL; + LL_WARNS_ONCE() << "avatar build state: isBuilt() " << avatar->isBuilt() << " mInitFlags " << avatar->mInitFlags << LL_ENDL; } } else { LL_WARNS_ONCE() << "unable to find joint " << skin->mJointNames[j] << LL_ENDL; + LL_WARNS_ONCE() << "avatar build state: isBuilt() " << avatar->isBuilt() << " mInitFlags " << avatar->mInitFlags << LL_ENDL; } } } diff --git a/indra/newview/lluiavatar.cpp b/indra/newview/lluiavatar.cpp index 6cc14fc49b..e4e266c92a 100644 --- a/indra/newview/lluiavatar.cpp +++ b/indra/newview/lluiavatar.cpp @@ -56,4 +56,6 @@ void LLUIAvatar::initInstance() slamPosition(); updateJointLODs(); updateGeometry(mDrawable); + + mInitFlags |= 1<<3; } diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 1ed105f8d4..127dfe7c60 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -1188,6 +1188,8 @@ void LLVOAvatar::initInstance() //VTPause(); // VTune mVoiceVisualizer->setVoiceEnabled( LLVoiceClient::getInstance()->getVoiceEnabled( mID ) ); + + mInitFlags |= 1<<1; } // virtual diff --git a/indra/newview/llvoavatarself.cpp b/indra/newview/llvoavatarself.cpp index 31a76d6dd9..b3a2d7951c 100644 --- a/indra/newview/llvoavatarself.cpp +++ b/indra/newview/llvoavatarself.cpp @@ -235,6 +235,8 @@ void LLVOAvatarSelf::initInstance() //doPeriodically(output_self_av_texture_diagnostics, 30.0); doPeriodically(update_avatar_rez_metrics, 5.0); doPeriodically(boost::bind(&LLVOAvatarSelf::checkStuckAppearance, this), 30.0); + + mInitFlags |= 1<<2; } void LLVOAvatarSelf::setHoverIfRegionEnabled() |