Page MenuHome

Apply Pose as Rest Pose: implement an Only Selected bones option.
Needs ReviewPublic

Authored by Alexander Gavrilov (angavrilov) on Oct 6 2018, 5:28 PM.

Details

Summary

It seems useful, and I've seen people asking about it.

The most difficult part is handling parent-child relations correctly:
when a parent is applied, the children should be moved accordingly,
and when applying a child, it should not include transformation from
unapplied parents. All this requires walking bones as a tree, instead
of a flat list.

Limitation: Applying bones with non-uniform scaling without also applying
children will distort non-rest posing on said children for reasons related
to T54159 (basically, non-uniform scale plus rotation creates shear, and
Blender matrix decomposition utilities don't have tools to deal with it).

Diff Detail

Repository
rB Blender
Branch
temp-angavrilov-partial-apply-pose (branched from blender2.8)
Build Status
Buildable 2193
Build 2193: arc lint + arc unit

Event Timeline

I've been sitting on this for a while because of the limitation, but maybe it's better to just add this with a documented caveat.

Some tests I've been using, the last having an example of the limitation: