Reverse Foot

Reverse Foot is an external set of joints, that drive the foot of the character. The name "reverse foot" is because it is constructed going backwards from the heel and up the foot to the ankle.

The advantage of having this setup is that you have a external object that can be used like foot sprints & can be easily animated and locked to the floor.

Joints
Start with the joints/bones for the leg.
The normal setup would be: Hip>Knee>Ankle>Ball>Toe

 

 

 

ikRPsolver
Add a Null or Cube in front of the knee where will be the controller for the Pole Vector for the knee direction.
Add an ikRPsolver from the Hip to the Ankle.
Name it: ikHandle_Ankle
Connect the cube or Null to ikHandle_Ankle with Pole Vector..

 

ikSCsolver A
Add an ikSCsolver from the Ankle to the Ball.
Name: ikHandle_Ball

 

 

ikSCsolver B
Add an ikSCsolver from the Ball to the Toe.
Name: ikHandle_Toe.

 

 

 

 

Reverse Foot
Create the Reverse Foot with joints starting on the Heel of the foot and going to the Toe then the Ball and finally the Ankle; Hence 'Reverse' since it's going backwards through the foot.
It should look something like:
ReverseFoot>RF_Toe>RF_Ball>RF_Ankle

Reverse Foot Connectors
Parent (constrain) the ikHandle_Ankle to the RF_Ankle, the ikHandle_Ball to the RF_Ball and the ikHandle_Toe to the RF_Toe

That's it. Now you can control the whole foot with the ReverseFoot.

 

 

Final Control Foot
Parent "p" the RF_Ankle to the control foot.