Merge pull request #87817 from Dheatly23/fix-87813
Fix quaternion keyframe optimization for collinear rotation over 180 degrees
This commit is contained in:
commit
27575c4d4b
1 changed files with 1 additions and 1 deletions
|
@ -4016,7 +4016,7 @@ bool Animation::_quaternion_track_optimize_key(const TKey<Quaternion> t0, const
|
|||
if (q0.get_axis().dot(q1.get_axis()) >= 1.0 - p_allowed_angular_error * 2.0) {
|
||||
double a0 = Math::acos(t0.value.dot(t1.value));
|
||||
double a1 = Math::acos(t1.value.dot(t2.value));
|
||||
if (a0 + a1 >= Math_PI) {
|
||||
if (a0 + a1 >= Math_PI / 2) {
|
||||
return false; // Rotation is more than 180 deg, keep key.
|
||||
}
|
||||
// Calc velocities.
|
||||
|
|
Loading…
Add table
Reference in a new issue