307147c99c0dd076f4f61529ae5c941249a5079a
Update all F-Curves so they have the correct flags (`FCURVE_INT_VALUES`, `FCURVE_DISCRETE_VALUES`) for the RNA property type that they animate. The bug that caused these flags to be incorrect (#136347) is already fixed. This commit ensures that F-Curves that were created while the bug was in a Blender release are updated to ensure they have the correct flags. This is quite important to fix, as otherwise enum properties will actually be interpolated. Imagine the "fun" when a rig is going through all the intermediate rotation modes when it was intended to switch from "Quaternion" to "ZYX". Even before this commit, these flags were already recomputed on key insertion (at least the ones through the UI). The versioning code simply runs this update on all existing F-Curves. Since this may have some performance impact (doing an RNA path resolve on all F-Curves on all Actions), the versioning code is only run when the blend file is from 4.4 or newer, as the bug was introduced in that release. Pull Request: https://projects.blender.org/blender/blender/pulls/136512
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
