Blender Git Commit Log

Git Commits -> Revision 0bf8096

Revision 0bf8096 by Alexander Gavrilov (master)
July 19, 2018, 14:58 (GMT)
Resolve the opposite vector ambiguity in Damped Track constraint.

Damped Track by specification attempts to arrive at the desired
direction via the shortest rotation. However with opposite vectors
there are infinitely many valid 180 degree rotations. Currently
it gives up and does nothing.

I think that it would be more reasonable to resolve the ambiguity
arbitrarily, so that Damped Track won't have a weird dead zone.
To make it more predictable I use a local axis.

In addition, the singularity area vicinity has some floating
point precision problems that result in significant jitter.
This applies workarounds for two causes of instability.

Differential Revision: https://developer.blender.org/D3530

Commit Details:

Full Hash: 0bf8096501a8e7883f4061ba3e425966ba7517cd
Parent Commit: 51f14cf
Lines Changed: +41, -2

3 Modified Paths:

/source/blender/blenkernel/intern/constraint.c (+30, -2) (Diff)
/source/blender/blenlib/BLI_math_vector.h (+1, -0) (Diff)
/source/blender/blenlib/intern/math_vector_inline.c (+10, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021