Blender Git Commit Log

Git Commits -> Revision 81ce380

Revision 81ce380 by Jacques Lucke (master)
April 17, 2019, 16:09 (GMT)
Animation: Refactor storage usage during fcurve modifier evaluation

Previously, when a fcurve modifier used storage,
many heap allocations were done.
This caused major slowdowns as described in T63656.

Furthermore, the storage usage was a special case only
used by the Cycles modifier. This refactor makes
storage usage the "normal" case.
That reduces the overall complexity.

The storage is stack allocated now.

The framerate on the provided test scene went up from ~5 fps to ~16 fps.

Reviewers: angavrilov

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

Commit Details:

Full Hash: 81ce3801bf0a876b73b73817ca1a61b4e81b214d
Parent Commit: 5f5a229
Lines Changed: +108, -186

4 Modified Paths:

/source/blender/blenkernel/BKE_fcurve.h (+14, -29) (Diff)
/source/blender/blenkernel/intern/anim_sys.c (+7, -7) (Diff)
/source/blender/blenkernel/intern/fcurve.c (+7, -6) (Diff)
/source/blender/blenkernel/intern/fmodifier.c (+80, -144) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021