summaryrefslogtreecommitdiff
path: root/indra/newview/lldrawable.cpp
diff options
context:
space:
mode:
authorGeenz <geenz@geenzo.com>2013-02-06 14:53:04 -0500
committerGeenz <geenz@geenzo.com>2013-02-06 14:53:04 -0500
commit5a6c0198d97d91c511b2a024db94ef27d4d67eb0 (patch)
tree533c5018cbc62d05ef4cbb79baac505ab89f570e /indra/newview/lldrawable.cpp
parentf3ef69ec19c3fb54d53aba1aa2ac49bc8140b591 (diff)
parente7c0f69c8e0509d822c6f7410bc0d5bb10fde522 (diff)
Merged with latest viewer-dev.
Diffstat (limited to 'indra/newview/lldrawable.cpp')
-rw-r--r--indra/newview/lldrawable.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/indra/newview/lldrawable.cpp b/indra/newview/lldrawable.cpp
index 647c3355ca..d041baea90 100644
--- a/indra/newview/lldrawable.cpp
+++ b/indra/newview/lldrawable.cpp
@@ -524,6 +524,7 @@ F32 LLDrawable::updateXform(BOOL undamped)
dist_squared = dist_vec_squared(new_pos, target_pos);
LLQuaternion new_rot = nlerp(lerp_amt, old_rot, target_rot);
+ // FIXME: This can be negative! It is be possible for some rots to 'cancel out' pos or size changes.
dist_squared += (1.f - dot(new_rot, target_rot)) * 10.f;
LLVector3 new_scale = lerp(old_scale, target_scale, lerp_amt);
@@ -549,9 +550,12 @@ F32 LLDrawable::updateXform(BOOL undamped)
}
else
{
- dist_squared = dist_vec_squared(old_pos, target_pos);
- dist_squared += (1.f - dot(old_rot, target_rot)) * 10.f;
- dist_squared += dist_vec_squared(old_scale, target_scale);
+ // The following fixes MAINT-1742 but breaks vehicles similar to MAINT-2275
+ // dist_squared = dist_vec_squared(old_pos, target_pos);
+
+ // The following fixes MAINT-2247 but causes MAINT-2275
+ //dist_squared += (1.f - dot(old_rot, target_rot)) * 10.f;
+ //dist_squared += dist_vec_squared(old_scale, target_scale);
}
LLVector3 vec = mCurrentScale-target_scale;