# Is there a way to animate the pivot point of a bone?

So I have a bone where I'd like there to be 3 points of rotation, and depending on my animation, I'd like to be able to switch pivot points easy. I can't seem to figure out a way to do this where all 3 pivots will follow each other and also rotate on each other.

Being able to animate the origin of a bone would solve this, but I'm not sure that's possible.

Any help would be appreciated,

Thanks!

• I think this could be of your interest: youtube.com/… Commented Apr 26, 2020 at 7:22

This is an idea I have but I haven't tested it. Hope it can be used.

Set up a chain of elongated, non-renderable cubes in the same spaces as the bones. Move their pivot points to the correct end, and link them so they're like a chain of bones.

Now you can use a Child Of constraint on the relevant cube to parent it to an Empty. Set Influence to zero until you're ready to switch to the new pivot point/Empty. Do this 3 times after moving the Empties to where you need the 3 pivot points. You need a 4th Child Of constraint to have the next cube/bone in the chain as the target/parent. You can then animate Influence to switch between pivot points. When you want to rotate a bone around a different pivot point, you rotate the Empty.

The reason for leaving the bones there is you need them for skinning purposes.

If one could use a Child Of constraint directly on a bone that'd be easier, but as far as I can see it's a mesh-only constraint.

You could try the above if the bone whose pivot point you want to animate is at the head of the hierarchy. Otherwise the you'll rip the chain apart.

I'm not sure that I understand what your end goal is. This is the kind of stuff where a lot of the times, people new to 3D transformations don't really know what they want.

However, if you say something like, "Being able to animate the origin of a bone would solve this," yeah, you can do that. In a couple of different ways.

First, a pivot constraint:

Notice the bone constraint settings, notice the transformation (on sidebar) of the bone. The empty, which is being used as the pivot point, is at world origin with no rotation or scale. You can move the empty and rotation will be reinterpreted around the empty, wherever it is.

There's another way you can do the same thing:

Suzanne is parented to "deform", deform is parented to "pivot", pivot is parented to "root". Deform is in same local axes as pivot and has a copy location constraint, all inverted, in local space, targeting pivot. When you move pivot, deform doesn't move. When you rotate pivot, deform rotates about pivot. Note that moving pivot after rotation causes apparent motion in deform, but that's not because you're moving deform, it's because you're reinterpreting your existing rotation about a new pivot point.