PDA

View Full Version : Anyway to keep the animation of a bone after zero-out it?



mewnow
10-22-2016, 11:46 PM
A bone already has animation.
Now use a null to zero-out the bone, in other words, the bone has an different parent.
Then the animation of the bone is different as it "should be".
So, anyway to keep the "proper" animation of the bone?

ernpchan
10-23-2016, 11:07 AM
Not that I know of. You'd have to manually change the values of all the keyframe values to account for the new local space which you can do in the Graph Editor.

mewnow
10-23-2016, 07:39 PM
That means I have to redo all my animation manually?!

jeric_synergy
10-23-2016, 07:42 PM
Hmmm.... could the animation be baked out in some fashion?

BTW, is this a done deal, or are you planning something?

mewnow
10-23-2016, 09:20 PM
I think it has on differences between baked or not keyframed data, as the bone has different parent.
And it is a plan only by now, as I have no idea how to keep the animation.

ernpchan
10-23-2016, 09:31 PM
Yeah, animation is in local space. What you could do is, before changing the parent relationship, globally move your bone to as best line up with the new parent. Then change the parent child relationship with parent in place on. If you got your bone lined up as best you could, then there should be a minimal amount of jump between the first keyframe and the rest of the keyframes.

jeric_synergy
10-23-2016, 10:14 PM
OK, not getting it: the bone is animated, and the OP wants it to have a different parent but stay where it is?

Isn't that what Parent In Place does??

ernpchan
10-23-2016, 10:29 PM
It'll do it for the first point in time where you change the parent child relationship. So if you have a keyframe at 1 and change the parent child relationship at 1 the values will update accordingly. But all your keyframes after 1 won't.

Skywatcher_NT
10-24-2016, 02:01 AM
Put a bone ( A ) in the same place as the animated bone ( B ) ( e.g. copy it and delete the animation keys ).
Create a bone ( C ) at the 0,0,0 position of the object ( pivot ).
Then parent B to C and C to A.
Bone A becomes the zero position that you can move now and you keep the animation of B.
Bone C you can lock and hide.
Does this help ?

mewnow
10-24-2016, 02:44 AM
@Sky: You not get a "real" zero-out, zero-out means zero pos & rot relative to its parent, so it line up orientation to its parent.

Skywatcher_NT
10-24-2016, 03:05 AM
Yes, I know that ;) , just a quick solution.
If you want a 'real' zero out just parent your bone to the parent with parent in place off, add/substract the values of your parent in the first frame to your bone in the graph editor .
Select keys in graph --> Keys tab --> Numeric move --> Value Offset

mewnow
10-24-2016, 03:45 AM
@Sky: Add/sub values has a lot of limitions, do not fit for situation when the orientation of new parent is big differences than original one.
And, I have a lot of scene to deal with.

RebelHill
10-24-2016, 07:55 AM
Clone the item, zero the original, constrain it to the clone in worldspace, bake the motion, remove the constraint and the clone.

mewnow
10-24-2016, 10:47 AM
Clone the item, zero the original, constrain it to the clone in worldspace, bake the motion, remove the constraint and the clone.

Nice one!
Can we have a non-baked option?

RebelHill
10-24-2016, 10:53 AM
no, because you have record the motion within the new space.

ernpchan
10-24-2016, 05:28 PM
Nice one!
Can we have a non-baked option?

After you bake the animation I think RH has a keyframe reducer in his toolbox script.

mewnow
10-24-2016, 07:47 PM
After you bake the animation I think RH has a keyframe reducer in his toolbox script.

Thanks.