• Maya

Editing the head controls

Refine the controls for the head by connecting them to the neck, then adjust the translation, rotation, and real-world anchor.


00:04

We're going to use a similar system to the neck,

00:07

but we want to treat the translations and rotations separately.

00:11

First, let's make the head move with the neck,

00:14

select the neck control and then the head controls, offset group.

00:19

We need another parent constraint, but this time disable the rotate option

00:26

and apply that.

00:29

So what we have now is the head control moving with the neck,

00:33

but it's not inheriting its rotations. So it stays level

00:38

just like with the neck control.

00:39

We want the head to be able to either follow the neck and rotate with it

00:44

or stay level. So it remains in world space.

00:48

So what we need is a real world anchor for it to fix to

00:52

go to create locator to create a new locator,

00:57

rename it to World Space locator.

01:02

Now, we will be using this in a few areas of this rig to help us with space swapping.

01:07

And space swapping is simply allowing one control

01:10

to follow another or follow different ones.

01:15

Let's move it into the rig systems folder. So it will be hidden when we don't need it.

01:19

Plus it will move with the rest of the rig

01:23

and let's make it bigger. So we can see it

01:26

with that selected, also select the neck control

01:30

and finally the head control offset group because

01:34

this is what is going to be constrained

01:37

this time, create a parent constraint. But use the rotate option

01:42

if we select the constraint node. Now

01:46

you can see the two weights here.

01:49

If we set world space weight to zero,

01:53

the head control now rotates with the neck control.

01:57

If we do the opposite and set neck control weight to zero

02:02

and the world space weight to one,

02:05

the head still moves with the neck but it remains

02:07

level because it's matching the orientation of the locator.

02:11

Instead

02:12

actually let's connect the head control to the skinned joint.

02:15

So we can see this better

02:18

like with the rest of the bind joints,

02:20

we will just use a parent constraint so we can retain the animation information.

02:26

OK? That's better

02:28

the head now stays level.

02:30

OK. Let's wire this up to the attribute.

02:33

Open the node editor again

02:36

and bring in the head control

02:39

and open it up.

02:41

We need the orient neck attribute here.

02:45

Now bring in the parent constraint.

02:47

Yep this one

02:49

and open that.

02:52

So here we have the weight attributes,

02:54

neck

02:55

and world space,

02:57

connect orient neck to the neck control weight.

03:01

We now need to invert that value

03:04

to create a new reverse node,

03:07

call it head tilt reverse.

03:11

You should be used to working with this type of network now

03:14

connect orient neck to input X

03:18

and then output X to the world space locator weight.

03:22

There we can see the attributes are connected.

03:25

The animator can now blend between the two states with the orient neck attribute.

03:31

So with it set to zero, the head stays level.

03:36

If we blend it to one,

03:38

the head now moves to match the orientation of the neck control.

Video transcript

00:04

We're going to use a similar system to the neck,

00:07

but we want to treat the translations and rotations separately.

00:11

First, let's make the head move with the neck,

00:14

select the neck control and then the head controls, offset group.

00:19

We need another parent constraint, but this time disable the rotate option

00:26

and apply that.

00:29

So what we have now is the head control moving with the neck,

00:33

but it's not inheriting its rotations. So it stays level

00:38

just like with the neck control.

00:39

We want the head to be able to either follow the neck and rotate with it

00:44

or stay level. So it remains in world space.

00:48

So what we need is a real world anchor for it to fix to

00:52

go to create locator to create a new locator,

00:57

rename it to World Space locator.

01:02

Now, we will be using this in a few areas of this rig to help us with space swapping.

01:07

And space swapping is simply allowing one control

01:10

to follow another or follow different ones.

01:15

Let's move it into the rig systems folder. So it will be hidden when we don't need it.

01:19

Plus it will move with the rest of the rig

01:23

and let's make it bigger. So we can see it

01:26

with that selected, also select the neck control

01:30

and finally the head control offset group because

01:34

this is what is going to be constrained

01:37

this time, create a parent constraint. But use the rotate option

01:42

if we select the constraint node. Now

01:46

you can see the two weights here.

01:49

If we set world space weight to zero,

01:53

the head control now rotates with the neck control.

01:57

If we do the opposite and set neck control weight to zero

02:02

and the world space weight to one,

02:05

the head still moves with the neck but it remains

02:07

level because it's matching the orientation of the locator.

02:11

Instead

02:12

actually let's connect the head control to the skinned joint.

02:15

So we can see this better

02:18

like with the rest of the bind joints,

02:20

we will just use a parent constraint so we can retain the animation information.

02:26

OK? That's better

02:28

the head now stays level.

02:30

OK. Let's wire this up to the attribute.

02:33

Open the node editor again

02:36

and bring in the head control

02:39

and open it up.

02:41

We need the orient neck attribute here.

02:45

Now bring in the parent constraint.

02:47

Yep this one

02:49

and open that.

02:52

So here we have the weight attributes,

02:54

neck

02:55

and world space,

02:57

connect orient neck to the neck control weight.

03:01

We now need to invert that value

03:04

to create a new reverse node,

03:07

call it head tilt reverse.

03:11

You should be used to working with this type of network now

03:14

connect orient neck to input X

03:18

and then output X to the world space locator weight.

03:22

There we can see the attributes are connected.

03:25

The animator can now blend between the two states with the orient neck attribute.

03:31

So with it set to zero, the head stays level.

03:36

If we blend it to one,

03:38

the head now moves to match the orientation of the neck control.

Was this information helpful?