0
$\begingroup$

Problem: I have created an armature that attaches to my mesh, but when I move the mesh in object mode, the armature doesn't come with it after parenting with automatic weights. This is obviously due to the parenting position (Mesh to Armature) but I don't know how to get around it. Parenting the Armature to the Mesh doesn't give the Armature Deform options, so I can't do it that way.

Here is my model. The armature works correctly with the mesh like this, as it's parented correctly with automatic weights.

enter image description here

The problem arises when I want to curve my mesh into a circle using the Curve Modifier. I added a Bezier Circle and using the Curve Modifier to the mesh, attached the circle. I then merged the ends of the mesh so there are no gaps. The problem you can see is that the armature doesn't keep its position with the mesh, and grossly distorts the mesh if I leave it where it is. I would prefer not to add the armature after adding the curve modifier as that would be very time-consuming, so much easier doing it flat to start, or so I thought.

enter image description here

How can I get the armature to remain inside the mesh after moving it (or making it into a circle shape) in Object mode? Thank you.

$\endgroup$
1
$\begingroup$

Armature Deformation usually works from bone to mesh, not the other way around. There is an option to use a shape key to deform the mesh, and then parent a bone to some of the vertices, but it will not be applicable to your situation. Depending on the rig itself, there might however be a workaround.

Given that the bones have to deform the mesh, what you need to achieve then is to reposition all of your bones in Pose Mode so they form a circle. To do this, you can try the following: Set the rotation mode to individual origins with the button on the bottom left of the screenshot:

individual origins

This will apply the rotation to each child of the bone individually, instead of just rotating the upmost parent. The bone chain in my screenshot is one single chain, so all bones are in a parent/child relationship. If you now select all bones, and then activate the rotation tool, constraining the rotation to Z-Axis only, you should be able to achieve this:

rotated bones

Rotate it until the circle closes and you're done. In Edit Mode the chain will still be straight, also if you disable the armature modifier visibility you're back to a straight chain.

The logic is: The first bone rotates by X degrees, its first child by X degrees again, the child of that child by another X degrees, and so on. That's why you get a circle in the end. This method is sometimes used when animating fingers curling. If that works with your current rig has to be tested, but I believe there is a chance it will.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.