summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llappearance/llavatarappearance.h2
-rwxr-xr-xindra/newview/llvoavatar.cpp66
-rwxr-xr-xindra/newview/llvoavatar.h3
3 files changed, 1 insertions, 70 deletions
diff --git a/indra/llappearance/llavatarappearance.h b/indra/llappearance/llavatarappearance.h
index 0a6a236d34..bf13680496 100644
--- a/indra/llappearance/llavatarappearance.h
+++ b/indra/llappearance/llavatarappearance.h
@@ -137,7 +137,7 @@ public:
typedef std::map<std::string, LLJoint*> joint_map_t;
joint_map_t mJointMap;
- virtual void computeBodySize();
+ void computeBodySize();
protected:
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 8c20533b4c..2fd26eae80 100755
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -5214,72 +5214,6 @@ void LLVOAvatar::updateVisualParams()
updateHeadOffset();
}
-/*virtual*/
-void LLVOAvatar::computeBodySize()
-{
- LLAvatarAppearance::computeBodySize();
-
- // Certain configurations of avatars can force the overall height (with offset) to go negative.
- // Enforce a constraint to make sure we don't go below 1.1 meters (server-enforced limit)
- // Camera positioning and other things start to break down when your avatar is "walking" while being fully underground
- const LLViewerObject * last_object = NULL;
- if (isSelf() && getWearableData() && !LLApp::isQuitting())
- {
- // Do not force a hover parameter change while we have pending attachments, which may be mesh-based with
- // joint offsets.
- if (LLAppearanceMgr::instance().getNumAttachmentsInCOF() == getNumAttachments())
- {
- LLViewerWearable* shape = (LLViewerWearable*)getWearableData()->getWearable(LLWearableType::WT_SHAPE, 0);
- BOOL loaded = TRUE;
- for (attachment_map_t::const_iterator points_iter = mAttachmentPoints.begin();
- points_iter != mAttachmentPoints.end() && loaded;
- ++points_iter)
- {
- const LLViewerJointAttachment *attachment_pt = (*points_iter).second;
- if (attachment_pt)
- {
- for (LLViewerJointAttachment::attachedobjs_vec_t::const_iterator attach_iter = attachment_pt->mAttachedObjects.begin(); attach_iter != attachment_pt->mAttachedObjects.end(); attach_iter++)
- {
- const LLViewerObject* object = (LLViewerObject*)*attach_iter;
- if (object)
- {
- last_object = object;
- llwarns << "attachment at point: " << (*points_iter).first << " object exists: " << object->getAttachmentItemID() << llendl;
- loaded &=!object->isDrawableState(LLDrawable::REBUILD_ALL);
- if (!loaded && shape && !shape->getVolatile())
- {
- llwarns << "caught unloaded attachment! skipping enforcement" << llendl;
- }
- }
- }
- }
- }
-
- if (last_object)
- {
- LL_DEBUGS("Avatar") << "scanned at least one object!" << LL_ENDL;
- }
- if (loaded && shape && !shape->getVolatile())
- {
- F32 hover_value = shape->getVisualParamWeight(AVATAR_HOVER);
- if (hover_value < 0.0f && (mBodySize.mV[VZ] + hover_value < 1.1f))
- {
- hover_value = -(mBodySize.mV[VZ] - 1.1f); // avoid floating point rounding making the above check continue to fail.
- llassert(mBodySize.mV[VZ] + hover_value >= 1.1f);
-
- hover_value = llmin(hover_value, 0.0f); // don't force the hover value to be greater than 0.
-
- LL_DEBUGS("Avatar") << "changed hover value to: " << hover_value << " from: " << mAvatarOffset.mV[VZ] << LL_ENDL;
-
- mAvatarOffset.mV[VZ] = hover_value;
- shape->setVisualParamWeight(AVATAR_HOVER,hover_value, FALSE);
- }
- }
- }
- }
-}
-
-
//-----------------------------------------------------------------------------
// isActive()
//-----------------------------------------------------------------------------
diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h
index fad2fd962c..48b5a6e873 100755
--- a/indra/newview/llvoavatar.h
+++ b/indra/newview/llvoavatar.h
@@ -212,9 +212,6 @@ public:
/*virtual*/ LLVector3 getPosAgentFromGlobal(const LLVector3d &position);
virtual void updateVisualParams();
- /*virtual*/ void computeBodySize();
-
-
/** Inherited
** **