summaryrefslogtreecommitdiff
path: root/indra/newview/lldrawable.cpp
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2013-02-13 17:30:00 -0500
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2013-02-13 17:30:00 -0500
commit0f7fe0cbea5cc8f092926bac5461b7cba7198d9b (patch)
tree1c569d77bf55dc16eb6aa3a98e63364cd32ac43f /indra/newview/lldrawable.cpp
parent72dfb2abce5d5635e7f81436d65c8689d161eb37 (diff)
parent11d12f1a99c8ef256299f601cd0ad6604e2178c5 (diff)
merge
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 d8b1887a90..24413caf6a 100644
--- a/indra/newview/lldrawable.cpp
+++ b/indra/newview/lldrawable.cpp
@@ -523,6 +523,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);
@@ -548,9 +549,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;