f3c677887ded24b56255e59958bfe1d7a0a4fcea
While keeping the general process the same, this commit heavily refactors the animation handling as part of the GPv2 to GPv3 conversion process. The whole animation handling is now embeded in new class, which covers all current use cases (conversion of all fcurves matching a given root RNA path, or a specific set of given full RNA paths, and transfer to another ID's animation data if required). The new system is also now able to perform custom additional conversion on FCurves if necessary, through a new function callback. This is used in this commit to fix two issues with the animation of the 'Stroke Thickness' GPv2 layers adjustment factor (the need to divide the values by 2000, and to switch from an 'integer' FCurve to a regular one). Finally, this commit also adds suport for animation of the old GPv2 'Thickness Scale' parameter. -------- NOTE: While this already improves a lot the animation handling code of GPv3 conversion, this could still use more clean-up. Don't think it's worth it within current usage scope though. But if more use cases need to be covered, and/or we need such conversion behavior in other places, it could be good to do another improvement pass and move this as generic 'animation conversion' helper in a dedicated BKE module.
…
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%
