1
$\begingroup$

I'm trying to set up a character rig and managed to get the entire body working alright, it has IK constraints set up and all that. Each section of the limbs is segmented (and also a separate object) which is all parented to the armature.

The head consists of just one bone that's connected to the neck bone. The head bone copies the rotation of an IK controller that influences the neck bone.

I started trying to rig the face. I added in two bones for the eye brows and parented them to the head bone. When rotating the head with the IK controller, the bones follow along perfectly.

To get the head mesh to deform, I added the armature modifier to it. After adjusting the weights, this worked perfectly. So now when I rotate the head IK controller, all the bones follow along perfectly, however, I end up with the head mesh deforming from the eyebrows as though the eyebrow bones weren't moving.

The eyebrow bones are the only bones with the "Deform" checkbox checked, though I went in and checked weights for everything anyway and didn't notice anything wrong.

The rig in edit mode: The rig in edit mode

The rig in pose mode: The rig in pose mode

The unwanted deformation: The unwanted deformation

The deformation happening even with the central movement bone: enter image description here

What have I done wrong, and how do I fix it?

The .blend file:

$\endgroup$
2
  • 1
    $\begingroup$ Your head object is parented to the head bone, so your armature modifier isn't being evaluated in the same space as the armature. Either use bone parenting or an armature modifier, not both. Unparent your head object with keep transform, then parent it to the armature with armature deform. Then, enable "deform" on head bone. $\endgroup$
    – Nathan
    Dec 14, 2021 at 19:28
  • $\begingroup$ Ah, thank you so much, @Nathan , that's fixed it! I really appreciate that :) I didn't realise I was using the armature modifier incorrectly, thanks again :) Would you be able to post that as an answer so I can mark it as the solution? :) $\endgroup$
    – Lizard
    Dec 14, 2021 at 19:46

1 Answer 1

1
$\begingroup$

Your head is parented to the head bone with a simple parentage, so when you move the head bone, it moves the head vertices. Among these vertices there are the eyebrows, and you've assigned these eyebrows to the vertex group that are controlled by two bones. So these particular vertices are affected by both the head bone and their own bone, which is not good. You need to change your method, for example select all the head vertices except eyebrows vertices and assign them to a vertex group that has the name of the head bone , and enable the head bone deform option. That way the head bone will move the whole except the eyebrows, and the eyebrows will be moved by their own bones.

Edit: Select the head object and in the Object panel > Relations, remove the parent, now it's the Deform option that will act (through the Armature modifier). Also remove the eyebrows vertices from all groups (select them and on the right of the vertex groups list, click on the down arrow button and Remove from All Groups) and assign them to the eyebrows bones vertex groups.

$\endgroup$
3
  • $\begingroup$ Thanks so much, that looks like what I'm looking for! Just one other question, now that I have the head bone's "Deform" option checked, it doesn't follow along with the head mesh precisely, and as such the eyebrow bones also don't follow the head. Since the eyebrows are parented to the head bone, this causes the head mesh to deform as the vertices stick to the eyebrow bones. Is there anyway to solve this? GIF showing what I'm talking about: i.imgur.com/enKH5C2.gif Thanks again for taking the time to answer :) Edit - Looks like Nathan's answer worked, thanks again :) $\endgroup$
    – Lizard
    Dec 14, 2021 at 19:42
  • $\begingroup$ I've edited my answer, I hope it answers? $\endgroup$
    – moonboots
    Dec 14, 2021 at 19:59
  • $\begingroup$ Yeah that's good, thanks very much! :D @moonboots $\endgroup$
    – Lizard
    Dec 14, 2021 at 20:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .