This repository has been archived on 2023-10-09. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
blender-archive/source/blender
Alexander Gavrilov 16eafdadf6 Fix precision issues and a bug in vec_roll_to_mat3_normalized.
When the input vector gets close to -Y, y and theta becomes totally
unreliable. It is thus necessary to compute the result in a different
way based on x and z. The code already had a special case, but:

- The threshold for using the special case was way too low.
- The special case was not precise enough to extend the threshold.
- The special case math had a sign error, resulting in a jump.

This adds tests for the computation precision and fixes the issues
by adjusting the threshold, and replacing the special case with one
based on a quadratic Taylor expansion of sqrt instead of linear.

Replacing the special case fixes the bug and results in a compatibility
break, requiring versioning for the roll of affected bones.

Differential Revision: https://developer.blender.org/D9551
2021-10-20 12:58:19 +03:00
..
2021-10-20 11:16:43 +11:00
2021-10-06 14:54:05 +11:00
2021-10-20 11:16:43 +11:00
2021-10-04 13:15:15 +11:00
2021-10-20 11:16:43 +11:00
2021-10-12 17:55:02 +11:00
2021-10-20 09:17:46 +11:00
2021-10-20 09:19:21 +11:00
2021-10-03 12:13:29 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-20 11:16:43 +11:00
2021-10-06 14:54:05 +11:00
2021-10-20 11:16:43 +11:00