CREATE THE REVERSE FOOT
One of the ways to setup legs and feet is to use what is called, a reverse foot. By animating this separate �foot,� you drive the leg at the same time�which is, in a way, what is happening in a typical walk cycle�the force of the push off of a foot driving the leg and knee to bend, etc�.
1. Set the preferred angle on the knees.
Tell the computer which way the knee should bend with the IK by setting it�s preferred angle. (Get into the habit of always setting the preferred angle when using IK.)
Select the left_knee and rotate it back in Z (the only axis in which the knee should bend).
With the left_knee still selected, RMB hold, and in the marking menu, Set Preferred Angle.

If you froze transformations and set the local rotational axis correctly zero out the Z rotation. (Or Skin > Go to Bind Pose, will reset your skeleton.)
Repeat the above steps for the right_knee.
2. Create the reverse foot.
Create a new hierarchy chain per foot, in the reverse direction�starting from the heel, to the toe, to the ball of the foot, and then ending at the ankle. This will ultimately drive the bound foot and leg.
In the side view, create a new skeleton chain by Skeleton > Joint Tool. Start by placing the heel joint directly at the point where the heel will contact the ground in a walk. The toe, ball, and ankle joints will line up with the bound toe, ball, and ankle joints respectively. Don�t worry if the joints aren�t lined up perfectly just yet�we�ll snap those to each other soon enough.
Name them: FOOT, toeControl, ballControl, and ankleControl.

3. Move the reverse foot to its correct location.
In the perspective window, translate the new hierarchy so the FOOT joint is at the heel contact point of the left foot of the model.

Step down the hierarchy (with the down arrow key) to the toeControl joint.
Turn ON Snap to points. Snap the toeControl joint to the leg�s left_toe joint.

Follow down the hierarchy by snapping the ballControl to the metatarsal and then the ankleControl to the malleolus.

4. Give the reverse foot the correct prefix name.
Select the FOOT and Modify > Prefix Hierarchy Names�, enter left_ in the name field.
5. Zero the rotation values of the reverse foot.
As with the bound skeleton, zeroing the rotation values, �cleans� the model and makes it more manageable in the animation process.
Select the left_FOOT if it�s not already, Modify > Freeze Transformations to zero the rotation values.
With the left_FOOT still selected, hit the joint �e �oj xyz �zso -ch; button.
6. Duplicate the left_FOOT and translate it over to the right side.
Select the left_FOOT and Edit > Duplicate. This should make an exact copy of the foot, if not, reset the options to default.
Turn Snap to Points OFF and translate the newly created foot to the right side. Place the heel joint at the point of contact, just as you did for the left foot.

Turn Snap to Points back ON and snap the joints to their respective bound joints (just as the left_FOOT and it�s reverse controller).

Rename the chain from heel to ankle: right_FOOT, right_toeControl, right_ballControl, and right_ankleControl, just like the left side.
7. Hide the reverse feet.
At the moment, these will just get in the way, so�.
Select both the left_FOOT and right_FOOT. Display > Hide Selection (or hotkeys CTRL h) to hide both reverse feet.
8. Add IK to the bound legs.
Skeleton > IK Handle Tool options and Reset the tool defaults so that you create an RP solver. Create an IK chain from the left_femur to the left_malleolus in the perspective window. Name it the left_ankleIKHandle.


Create an IK chain from the left_malleolus to the left_metatarsal and name it the left_ballIKHandle.
Create an IK chain from the left_metatarsal to the left_toe and name it the left_toeIKHandle.
Repeat these steps on the right leg (changing the prefixes to right_ of course). Use the picture below as reference.

9. Constrain the leg IK to the reverse feet.
The idea of using the reverse feet is that the feet drive the IK, so the IK gets constrained�not the joints.
Show the hidden feet by Display > Show Last Hidden or hotkeys: CTRL SHIFT h.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_toeControl joint. SHIFT select the left_toeIKHandle and Constrain > Point.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_ballControl joint. SHIFT select the left_ballIKHandle and Constrain > Point.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_ankleControl joint. SHIFT select the left_ankleIKHandle and Constrain > Point.
Repeat the above steps for the right_FOOT.
10. Test the constraints.
Just to be safe�test the reverse feet to make sure they drive the legs correctly. (Remember that the deformations may not be perfect yet�don�t worry, we�ll finish up the weighting soon.) To use the reverse foot setup, select the �FOOT to translate and do full rotation, use the �toeControl to rotate the foot via the toe, the �ballControl to rotate around the ball of the foot, and the �ankleControl for the rotation of the ankle. You never need to use the IK handles or the bound leg/ feet joints.

11. Create locators to control the knees.
The twist of the leg will be constrained to these locators so you can use them as �pointers� for which direction the knees will face.
Create > Locator and name it leftLeg_IKpoleVector. Turn Snap to points on, and translate the new locator to the left_femur.
Again, Create > Locator and name this one rightLeg_IKpoleVector. With Snap to points still ON, and translate the new locator to the right_femur.
Turn OFF Snap to points.
Select both �_IKpoleVector locators and translate them straight forward in space.

Select the leftLeg_IKpoleVector locator and SHIFT select the left_ankleIKHandle. Constrain > Pole Vector.
Repeat for the right knee by selecting the rightLeg_IKpoleVector locator and SHIFT selecting the right_ankleIKHandle. Constrain > Pole Vector.
12. Create the FkIkControls layer and assign the reverse feet to it.
Just to keep everything organized and easily obtainable�.
Create a new layer in the Layer Editor and name it FkIkControls.
Select and assign both reverse foot control hierarchies to this layer. Turn the layer Invisible.
13. Create the unNeededSkeleton layer and assign the bound feet and IK to it.
Since you won�t ever need to animate these nodes, it�s best to assign them to another layer and keep them hidden. This way, if you do need them, it�s easy enough to make them visible and edit them.
Select the right� and left_malleolus, and all six IK handles.
Create and assign them to the layer: unNeededSkeleton.
Make the layer a Reference layer and turn it Invisible.
One of the ways to setup legs and feet is to use what is called, a reverse foot. By animating this separate �foot,� you drive the leg at the same time�which is, in a way, what is happening in a typical walk cycle�the force of the push off of a foot driving the leg and knee to bend, etc�.
1. Set the preferred angle on the knees.
Tell the computer which way the knee should bend with the IK by setting it�s preferred angle. (Get into the habit of always setting the preferred angle when using IK.)
Select the left_knee and rotate it back in Z (the only axis in which the knee should bend).
With the left_knee still selected, RMB hold, and in the marking menu, Set Preferred Angle.

If you froze transformations and set the local rotational axis correctly zero out the Z rotation. (Or Skin > Go to Bind Pose, will reset your skeleton.)
Repeat the above steps for the right_knee.
2. Create the reverse foot.
Create a new hierarchy chain per foot, in the reverse direction�starting from the heel, to the toe, to the ball of the foot, and then ending at the ankle. This will ultimately drive the bound foot and leg.
In the side view, create a new skeleton chain by Skeleton > Joint Tool. Start by placing the heel joint directly at the point where the heel will contact the ground in a walk. The toe, ball, and ankle joints will line up with the bound toe, ball, and ankle joints respectively. Don�t worry if the joints aren�t lined up perfectly just yet�we�ll snap those to each other soon enough.
Name them: FOOT, toeControl, ballControl, and ankleControl.

3. Move the reverse foot to its correct location.
In the perspective window, translate the new hierarchy so the FOOT joint is at the heel contact point of the left foot of the model.

Step down the hierarchy (with the down arrow key) to the toeControl joint.
Turn ON Snap to points. Snap the toeControl joint to the leg�s left_toe joint.

Follow down the hierarchy by snapping the ballControl to the metatarsal and then the ankleControl to the malleolus.

4. Give the reverse foot the correct prefix name.
Select the FOOT and Modify > Prefix Hierarchy Names�, enter left_ in the name field.
5. Zero the rotation values of the reverse foot.
As with the bound skeleton, zeroing the rotation values, �cleans� the model and makes it more manageable in the animation process.
Select the left_FOOT if it�s not already, Modify > Freeze Transformations to zero the rotation values.
With the left_FOOT still selected, hit the joint �e �oj xyz �zso -ch; button.
6. Duplicate the left_FOOT and translate it over to the right side.
Select the left_FOOT and Edit > Duplicate. This should make an exact copy of the foot, if not, reset the options to default.
Turn Snap to Points OFF and translate the newly created foot to the right side. Place the heel joint at the point of contact, just as you did for the left foot.

Turn Snap to Points back ON and snap the joints to their respective bound joints (just as the left_FOOT and it�s reverse controller).

Rename the chain from heel to ankle: right_FOOT, right_toeControl, right_ballControl, and right_ankleControl, just like the left side.
7. Hide the reverse feet.
At the moment, these will just get in the way, so�.
Select both the left_FOOT and right_FOOT. Display > Hide Selection (or hotkeys CTRL h) to hide both reverse feet.
8. Add IK to the bound legs.
Skeleton > IK Handle Tool options and Reset the tool defaults so that you create an RP solver. Create an IK chain from the left_femur to the left_malleolus in the perspective window. Name it the left_ankleIKHandle.


Create an IK chain from the left_malleolus to the left_metatarsal and name it the left_ballIKHandle.
Create an IK chain from the left_metatarsal to the left_toe and name it the left_toeIKHandle.
Repeat these steps on the right leg (changing the prefixes to right_ of course). Use the picture below as reference.

9. Constrain the leg IK to the reverse feet.
The idea of using the reverse feet is that the feet drive the IK, so the IK gets constrained�not the joints.
Show the hidden feet by Display > Show Last Hidden or hotkeys: CTRL SHIFT h.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_toeControl joint. SHIFT select the left_toeIKHandle and Constrain > Point.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_ballControl joint. SHIFT select the left_ballIKHandle and Constrain > Point.
Select the left_FOOT node and pick walk (use the arrow keys of the keyboard), and move down the hierarchy to the left_ankleControl joint. SHIFT select the left_ankleIKHandle and Constrain > Point.
Repeat the above steps for the right_FOOT.
10. Test the constraints.
Just to be safe�test the reverse feet to make sure they drive the legs correctly. (Remember that the deformations may not be perfect yet�don�t worry, we�ll finish up the weighting soon.) To use the reverse foot setup, select the �FOOT to translate and do full rotation, use the �toeControl to rotate the foot via the toe, the �ballControl to rotate around the ball of the foot, and the �ankleControl for the rotation of the ankle. You never need to use the IK handles or the bound leg/ feet joints.

11. Create locators to control the knees.
The twist of the leg will be constrained to these locators so you can use them as �pointers� for which direction the knees will face.
Create > Locator and name it leftLeg_IKpoleVector. Turn Snap to points on, and translate the new locator to the left_femur.
Again, Create > Locator and name this one rightLeg_IKpoleVector. With Snap to points still ON, and translate the new locator to the right_femur.
Turn OFF Snap to points.
Select both �_IKpoleVector locators and translate them straight forward in space.

Select the leftLeg_IKpoleVector locator and SHIFT select the left_ankleIKHandle. Constrain > Pole Vector.
Repeat for the right knee by selecting the rightLeg_IKpoleVector locator and SHIFT selecting the right_ankleIKHandle. Constrain > Pole Vector.
12. Create the FkIkControls layer and assign the reverse feet to it.
Just to keep everything organized and easily obtainable�.
Create a new layer in the Layer Editor and name it FkIkControls.
Select and assign both reverse foot control hierarchies to this layer. Turn the layer Invisible.
13. Create the unNeededSkeleton layer and assign the bound feet and IK to it.
Since you won�t ever need to animate these nodes, it�s best to assign them to another layer and keep them hidden. This way, if you do need them, it�s easy enough to make them visible and edit them.
Select the right� and left_malleolus, and all six IK handles.
Create and assign them to the layer: unNeededSkeleton.
Make the layer a Reference layer and turn it Invisible.
Author: sdb1987
Submitted: 2005-10-04 11:27:48 UTC
Tags:
Software: Maya
Views: 65,090
Related Items
-
Character Bundle 3D Model
$155.00 (USD) -
Willson Rig with advanced facial controls for Maya 0.1.0
$20.00 (USD) -
Sarah woman Character Rig 0.0.1 for Maya
$30.00 (USD) -
Alex character rig 0.0.2 for Maya
$25.00 (USD) -
Zombie Character Rig 0.0.2 for Maya
$45.00 (USD) -
fantasy character mamiya 3D Model
$80.00 (USD) -
Circulatory System Anatomy in a Human Body 3D Model
$49.99 (USD) -
blonde female flight attendant AWoman0002-CS / RIGGED for 3D Max + Character Studio 3D Model
$49.00 (USD) -
Toon Character 3D Model
$50.00 (USD)