& Construction

Integrated BIM tools, including Revit, AutoCAD, and Civil 3D
& Manufacturing

Professional CAD/CAM tools built on Inventor and AutoCAD
Integrated BIM tools, including Revit, AutoCAD, and Civil 3D
Professional CAD/CAM tools built on Inventor and AutoCAD
Fix the foot and add hock functionality to keep the foot level as the leg animates.
Type:
Tutorial
Length:
5 min.
Transcript
00:03
Now let's fix the foot. So it stays level as the leg animates.
00:08
So like the foot control
00:11
and then the foot IK joint
00:13
and simply use an orient constraint.
00:18
So now the foot stays in place planted on the floor,
00:22
which looks a lot more natural
00:25
and we can control the upper leg too.
00:28
OK? Now let's add in the hock functionality.
00:33
What we're going to do with this control is
00:35
use it to reposition the calf I care handle.
00:38
So we compose the lower leg
00:41
as you can see, simply moving, it is causing the foot to move.
00:46
So ideally, we need the ICA handle to pivot around the foot joint. Instead,
00:51
this will keep the foot steady and planted on the floor.
00:55
Press control NG. To create a new group,
00:59
we want the group to match the orientation of the hock control.
01:02
So add it to the selection
01:05
first, use match transformations to move the group to the control.
01:10
We now have the correct orientation.
01:14
Let's rename the group to haw
01:15
left control offset.
01:18
We now need to move it to the foot joint.
01:21
So add the joint to the selection
01:24
and this time just match the transforms.
01:27
So we maintain that orientation
01:30
there. The group's in position now and orientated correctly too.
01:35
And we can rotate from this point. Now
01:39
move the group. So it's parented to the calf driver joint.
01:43
We now need to remove these rotation values,
01:46
but we can't freeze them as we will lose the orientation.
01:51
So instead
01:52
just move the values down to the offset parent matrix section
01:56
like this.
01:58
Now the rotations are clean, we can connect them
02:02
using the hock control to drive them.
02:05
Next, move the calf I
02:07
handle into the hook control offset group.
02:11
If we now rotate the group, the lower leg moves but the foot stays in position.
02:15
Perfect.
02:17
OK. We now need to wire up the hot control. So it rotates the group
02:21
head back into the node editor
02:24
and clear it.
02:26
Bring in the hot control,
02:29
we need its translations
02:32
and then bring in the haw control offset group.
02:35
We need the group's rotations.
02:39
What we are going to do is make the translations drive the rotations.
02:43
Let's check what axis we need.
02:46
So if I move the hock control along the X axis,
02:50
we want the group to rotate like this. So around the Z axis,
02:55
so let's connect translate X
02:58
to rotate Z.
02:60
If we move the control, now
03:02
the lower leg moves
03:04
but in the opposite direction.
03:06
So we need to invert that value,
03:09
press tab
03:10
and create a multiply divide node
03:13
and rename this to hock left multi.
03:17
What a multiply divide node will do is basically take one value
03:21
and then multiply or divide it by another
03:25
simple as that.
03:26
Rather than using individual attributes, I'm going to connect,
03:30
translate directly to input one.
03:33
So all we're doing is grouping all those attributes together.
03:37
So translate X here
03:39
will be represented as input one X here.
03:43
This means we need the output X attribute here.
03:46
So connect that to rotate Z,
03:49
we can delete this now.
03:51
So at the moment, things look the same.
03:54
But what we can do is change the input to X value to minus one instead of one.
03:60
So the translation value is now being multiplied by minus one
04:04
which will invert it.
04:06
And the control now moves the right way.
04:10
What we can also do is use the node to make the leg move closer to the control.
04:16
Let's adjust this. So it's in the right position.
04:20
So minus two seems about right.
04:24
So remember what it's doing is it's multiplying
04:26
the hook controls translation value by minus two.
04:31
OK. That's better.
04:33
Let's look at the other direction.
04:36
So it looks like we need the translate Z attribute next.
04:40
OK. Let's check. The group
04:42
looks like we need it to control the X rotation.
04:46
So we need input one Z here
04:49
because this represents the translate Z attribute
04:53
and the output of this is output Z.
04:56
So connect that to rotate X
04:60
OK. So this time the direction is correct but the leg needs to move more.
05:05
We used minus two earlier. So let's try changing input two Z to two.
05:11
Yeah, that works. Ok. Good.
05:16
We can move the upper body and the leg follows.
05:20
We can also control the hawk too.
Video transcript
00:03
Now let's fix the foot. So it stays level as the leg animates.
00:08
So like the foot control
00:11
and then the foot IK joint
00:13
and simply use an orient constraint.
00:18
So now the foot stays in place planted on the floor,
00:22
which looks a lot more natural
00:25
and we can control the upper leg too.
00:28
OK? Now let's add in the hock functionality.
00:33
What we're going to do with this control is
00:35
use it to reposition the calf I care handle.
00:38
So we compose the lower leg
00:41
as you can see, simply moving, it is causing the foot to move.
00:46
So ideally, we need the ICA handle to pivot around the foot joint. Instead,
00:51
this will keep the foot steady and planted on the floor.
00:55
Press control NG. To create a new group,
00:59
we want the group to match the orientation of the hock control.
01:02
So add it to the selection
01:05
first, use match transformations to move the group to the control.
01:10
We now have the correct orientation.
01:14
Let's rename the group to haw
01:15
left control offset.
01:18
We now need to move it to the foot joint.
01:21
So add the joint to the selection
01:24
and this time just match the transforms.
01:27
So we maintain that orientation
01:30
there. The group's in position now and orientated correctly too.
01:35
And we can rotate from this point. Now
01:39
move the group. So it's parented to the calf driver joint.
01:43
We now need to remove these rotation values,
01:46
but we can't freeze them as we will lose the orientation.
01:51
So instead
01:52
just move the values down to the offset parent matrix section
01:56
like this.
01:58
Now the rotations are clean, we can connect them
02:02
using the hock control to drive them.
02:05
Next, move the calf I
02:07
handle into the hook control offset group.
02:11
If we now rotate the group, the lower leg moves but the foot stays in position.
02:15
Perfect.
02:17
OK. We now need to wire up the hot control. So it rotates the group
02:21
head back into the node editor
02:24
and clear it.
02:26
Bring in the hot control,
02:29
we need its translations
02:32
and then bring in the haw control offset group.
02:35
We need the group's rotations.
02:39
What we are going to do is make the translations drive the rotations.
02:43
Let's check what axis we need.
02:46
So if I move the hock control along the X axis,
02:50
we want the group to rotate like this. So around the Z axis,
02:55
so let's connect translate X
02:58
to rotate Z.
02:60
If we move the control, now
03:02
the lower leg moves
03:04
but in the opposite direction.
03:06
So we need to invert that value,
03:09
press tab
03:10
and create a multiply divide node
03:13
and rename this to hock left multi.
03:17
What a multiply divide node will do is basically take one value
03:21
and then multiply or divide it by another
03:25
simple as that.
03:26
Rather than using individual attributes, I'm going to connect,
03:30
translate directly to input one.
03:33
So all we're doing is grouping all those attributes together.
03:37
So translate X here
03:39
will be represented as input one X here.
03:43
This means we need the output X attribute here.
03:46
So connect that to rotate Z,
03:49
we can delete this now.
03:51
So at the moment, things look the same.
03:54
But what we can do is change the input to X value to minus one instead of one.
03:60
So the translation value is now being multiplied by minus one
04:04
which will invert it.
04:06
And the control now moves the right way.
04:10
What we can also do is use the node to make the leg move closer to the control.
04:16
Let's adjust this. So it's in the right position.
04:20
So minus two seems about right.
04:24
So remember what it's doing is it's multiplying
04:26
the hook controls translation value by minus two.
04:31
OK. That's better.
04:33
Let's look at the other direction.
04:36
So it looks like we need the translate Z attribute next.
04:40
OK. Let's check. The group
04:42
looks like we need it to control the X rotation.
04:46
So we need input one Z here
04:49
because this represents the translate Z attribute
04:53
and the output of this is output Z.
04:56
So connect that to rotate X
04:60
OK. So this time the direction is correct but the leg needs to move more.
05:05
We used minus two earlier. So let's try changing input two Z to two.
05:11
Yeah, that works. Ok. Good.
05:16
We can move the upper body and the leg follows.
05:20
We can also control the hawk too.
Industry:
Role:
How to buy
Privacy | Do not sell or share my personal information | Cookie preferences | Report noncompliance | Terms of use | Legal | © 2025 Autodesk Inc. All rights reserved
Sign in for the best experience
Save your progress
Get access to courses
Receive personalized recommendations
May we collect and use your data?
Learn more about the Third Party Services we use and our Privacy Statement.May we collect and use your data to tailor your experience?
Explore the benefits of a customized experience by managing your privacy settings for this site or visit our Privacy Statement to learn more about your options.