From 22f53c85588912582f33d840d106b10f54f2c62d Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Mon, 15 Oct 2012 18:41:55 -0400 Subject: additional debugging info, including tracking where visual params live --- indra/llcharacter/llcharacter.cpp | 0 indra/llcharacter/llvisualparam.cpp | 20 +++++++++++++++++++- indra/llcharacter/llvisualparam.h | 12 ++++++++++++ 3 files changed, 31 insertions(+), 1 deletion(-) mode change 100644 => 100755 indra/llcharacter/llcharacter.cpp mode change 100644 => 100755 indra/llcharacter/llvisualparam.cpp mode change 100644 => 100755 indra/llcharacter/llvisualparam.h (limited to 'indra/llcharacter') diff --git a/indra/llcharacter/llcharacter.cpp b/indra/llcharacter/llcharacter.cpp old mode 100644 new mode 100755 diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp old mode 100644 new mode 100755 index 255f61b1b3..1934ed55d3 --- a/indra/llcharacter/llvisualparam.cpp +++ b/indra/llcharacter/llvisualparam.cpp @@ -168,7 +168,8 @@ LLVisualParam::LLVisualParam() mIsAnimating( FALSE ), mID( -1 ), mInfo( 0 ), - mIsDummy(FALSE) + mIsDummy(FALSE), + mParamLocation(LOC_UNKNOWN) { } @@ -320,3 +321,20 @@ void LLVisualParam::resetDrivenParams() // nothing to do for non-driver parameters return; } + +void LLVisualParam::setParamLocation(EParamLocation loc) +{ + if (mParamLocation == LOC_UNKNOWN) + { + mParamLocation = loc; + } + else if (mParamLocation == loc) + { + // no action + } + else + { + llwarns << "param location is already " << mParamLocation << ", not slamming to " << loc << llendl; + } +} + diff --git a/indra/llcharacter/llvisualparam.h b/indra/llcharacter/llvisualparam.h old mode 100644 new mode 100755 index 694e27f371..8345990f47 --- a/indra/llcharacter/llvisualparam.h +++ b/indra/llcharacter/llvisualparam.h @@ -50,6 +50,14 @@ enum EVisualParamGroup NUM_VISUAL_PARAM_GROUPS }; +enum EParamLocation +{ + LOC_UNKNOWN, + LOC_AV_SELF, + LOC_AV_OTHER, + LOC_WEARABLE +}; + const S32 MAX_TRANSMITTED_VISUAL_PARAMS = 255; //----------------------------------------------------------------------------- @@ -149,6 +157,9 @@ public: void setIsDummy(BOOL is_dummy) { mIsDummy = is_dummy; } + void setParamLocation(EParamLocation loc); + EParamLocation getParamLocation() const { return mParamLocation; } + protected: F32 mCurWeight; // current weight F32 mLastWeight; // last weight @@ -160,6 +171,7 @@ protected: S32 mID; // id for storing weight/morphtarget compares compactly LLVisualParamInfo *mInfo; + EParamLocation mParamLocation; // where does this visual param live? }; #endif // LL_LLVisualParam_H -- cgit v1.3 From 7d6da2ebe8db7aa73113659c709d03e16eca5094 Mon Sep 17 00:00:00 2001 From: "Brad Payne (Vir Linden)" Date: Wed, 17 Oct 2012 13:43:19 -0400 Subject: more param location logging, added wearable type info to dumpArchetypeXML --- indra/llappearance/llwearable.cpp | 5 ++++- indra/llcharacter/llvisualparam.cpp | 2 +- indra/newview/llvoavatar.cpp | 11 +++++++++-- 3 files changed, 14 insertions(+), 4 deletions(-) (limited to 'indra/llcharacter') diff --git a/indra/llappearance/llwearable.cpp b/indra/llappearance/llwearable.cpp index f4891c61bd..b33adb254d 100755 --- a/indra/llappearance/llwearable.cpp +++ b/indra/llappearance/llwearable.cpp @@ -128,7 +128,10 @@ void LLWearable::createVisualParams(LLAvatarAppearance *avatarp) { if (param->getWearableType() == mType) { - addVisualParam(param->cloneParam(this)); + LLVisualParam *clone_param = param->cloneParam(this); + clone_param->setParamLocation(LOC_UNKNOWN); + clone_param->setParamLocation(LOC_WEARABLE); + addVisualParam(clone_param); } } diff --git a/indra/llcharacter/llvisualparam.cpp b/indra/llcharacter/llvisualparam.cpp index 1934ed55d3..826f76bae0 100755 --- a/indra/llcharacter/llvisualparam.cpp +++ b/indra/llcharacter/llvisualparam.cpp @@ -324,7 +324,7 @@ void LLVisualParam::resetDrivenParams() void LLVisualParam::setParamLocation(EParamLocation loc) { - if (mParamLocation == LOC_UNKNOWN) + if (mParamLocation == LOC_UNKNOWN || loc == LOC_UNKNOWN) { mParamLocation = loc; } diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index a2ace15f2d..fa6e572064 100755 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -6306,8 +6306,15 @@ void dump_visual_param(apr_file_t* file, LLVisualParam* viewer_param, F32 value) type_string = "param_morph"; if (dynamic_cast(viewer_param)) type_string = "param_skeleton"; - apr_file_printf(file, "\t\t\n", - viewer_param->getID(), viewer_param->getName().c_str(), value, type_string.c_str()); + S32 wtype = -1; + LLViewerVisualParam *vparam = dynamic_cast(viewer_param); + if (vparam) + { + wtype = vparam->getWearableType(); + } + apr_file_printf(file, "\t\t\n", + viewer_param->getID(), viewer_param->getName().c_str(), value, type_string.c_str(), + LLWearableType::getTypeName(LLWearableType::EType(wtype)).c_str()); } -- cgit v1.3