Piecewise Transform Bone node elements

A surprisingly frustrating one and difficult to work around:

I’ve got some pretty complex aiming blendspaces and one issue I occasionally have is that in lerping between two defined poses, the skeleton will occasionally twist his gun sideways at certain blend positions.

I would have figured this would be a trivial fix, being that I can override the rotation of the bone (i.e. force it to zero out its roll).

Problem is, you can’t override JUST the roll and keep the pitch and yaw. Either you override all of it, or none of it. And trying to pull ref values for the other two (i.e. GetSocketRotation > pitch and yaw, 0 roll) doesn’t work because of the way frames are updated; this locks the bone’s position permanently because it’s drawing the socket positions from before the animgraph finishes updating the bones this frame (obviously) so they get glued in place, always drawing from the prior frame and never changing.

tl;dr need a way of only replacing one element of the rotation/location/etc of a bone’s transform while carrying forward the anim-defined pose for the other elements.