Files
test2/source/blender/animrig
Aras Pranckevicius 6b9de30ff1 Anim: Add function for batch-creation of many f-curves, use in USD import
Creating f-curves one by one is quadratic complexity due to:
1) scanning all existing f-curves for possible name+index duplicates,
2) channelbag invariants recalculation after each f-curve addition.
3) f-curve array storage is reallocated for each f-curve addition.

In cases when many f-curves are created at once (primary case:
importing an animated character), using the newly added
fcurve_create_many is much faster, because it:
1) uses a hashtable for duplicate name+index checking, instead of
   linear scan, and
2) recalculates channelbag invariants just once.
3) does f-curve array reallocation just once.

Importing USD file exported out of Blender Studio "Rain Restaurant"
scene (about 20k f-curves), on Ryzen 5950X goes 2.0 sec -> 0.9 sec.

Pull Request: https://projects.blender.org/blender/blender/pulls/137004
2025-04-15 13:58:01 +02:00
..
2024-08-15 21:26:12 +10:00
2024-02-02 10:43:17 +11:00
2025-01-20 11:19:23 +11:00