Blender Git Commit Log

Git Commits -> Revision 4dc639a

Revision 4dc639a by Sergey Sharybin (master)
November 20, 2018, 14:53 (GMT)
Speedup rigs with multiple objects deformed by bbones

Previously each of the objects which has armature modifier will
request deformation matricies from bbones. Thing is, all those
deformations are the same and do not depend on object which is
being modified. What's even worse is that this calculation is
not cheap.

This change makes it so bbones deformation is calculated once
and stored in the armature object. After this armature modifiers
simply use it.

With a rigs we've got here dependency graph evaluation time
goes down from 0.02 sec to 0.012 sec.

Possible further optimization is to make bbone deformation
calculated at the time when bone is calculated. This will avoid
an extra threaded loop over all bones.

Commit Details:

Full Hash: 4dc639ac9965f3d0e8b2304363c62d888cdd1dc9
Parent Commit: 163be42
Lines Changed: +192, -57

6 Modified Paths:

/source/blender/blenkernel/BKE_armature.h (+18, -0) (Diff)
/source/blender/blenkernel/intern/armature.c (+108, -31) (Diff)
/source/blender/blenkernel/intern/armature_update.c (+52, -24) (Diff)
/source/blender/blenkernel/intern/object.c (+1, -0) (Diff)
/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc (+6, -2) (Diff)
/source/blender/makesdna/DNA_object_types.h (+7, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021