Reverse-Foot Setup

Moderator: BenChang

Reverse-Foot Setup

Postby BenChang » Tue Feb 28, 2012 4:34 am

reversefoot1.jpeg
reversefoot1.jpeg (41.84 KiB) Viewed 4679 times


overview of the group-based reverse-foot setup technique.

A basic leg setup use IK to position the foot, usually at the ankle. However, you still need to rotate the ankle joint and the joint at the ball of the foot to get many poses; for example, lifting the heel off the ground while keeping the toes planted. This is useful for tip-toeing, of course, but also just as part of any standard walk.

There are several ways to accomplish this. The "reverse foot" is a method where you build a second foot skeleton, with the joints reversed, and use that to control the real foot skeleton. The method I'll show here is a different approach, using some additional IK chains and group nodes to control them.

Joint and IK Setup

Here's the starting point in reverseFootStart.ma:

reversefoot2.jpeg
reversefoot2.jpeg (18.67 KiB) Viewed 4679 times


1. Add a standard RP IK Solver from the Hip to the Ankle. Name it "ankleIK".
2. For this setup we'll also use two extra SC IK solvers.
3. Create an SC IK solver from Ankle to Ball. Name it "ballIK"
4. Create an SC IK solver from Ball to Toe. Name it "toeIK".

reversefoot3.jpeg
reversefoot3.jpeg (31.55 KiB) Viewed 4679 times

reversefoot4.jpeg
reversefoot4.jpeg (36.31 KiB) Viewed 4679 times


Groups

The extra IK handles will allow us to use the ball and the toe joints as pivots, sticking them to the ground and rotating around them for different movements. To get that effect of the heel peeling up off the ground, we want the heel to rotate up, with the ball of the foot as the pivot. the ballIK handle keeps the ball joint in place. Then, to make the ankle rotate up around it, we can put it under a group node and then move the rotate pivot over to the ball joint. Repeating this technique for the other handles and joints gets a full range of motions.

1. select ankleIK and create a Group (Ctrl-G or Edit->Group)
2. name the group "peelHeelGrp"
3. Snap peelHeelGrp's pivot onto the ball joint (v for point snap, d or insert to move pivot)
4. select ballIK and toeIK and group them together
5. name this group "toeTapGrp"
6. snap toeTapGrp's pivot onto the ball joint as well.

Now if you rotate peelHeelGrp on the X axis, the heel should lift up. Rotating toeTapGrp will tap the toe.

reversefoot5.jpeg
reversefoot5.jpeg (28.93 KiB) Viewed 4679 times


The next two groups will let you pivot, or twist, left and right on either the toe or the heel.

7. Select peelHeelGrp and toeTapGrp.
8. Group them together as toePivotGrp
9. Snap toePivotGrp's pivot to the Toe Joint
10. Group toePivotGrp once more as heelPivotGrp
11. Snap heelPivotGrp's pivot to the Ankle Joint

reversefoot6.jpeg
Completed group hierarchy
reversefoot6.jpeg (13.78 KiB) Viewed 4679 times


Adding attributes

To control these additional motions, we'll add custom attributes to the footControl curve and set up driven keys to link them to the group rotations.

1. Select the FootControl curve
2. Modify->Add Attribute...
3. peelHeel (min=0, max=10)
4. toeTap (min=-10, max=10)
5. toePivot (min=-10, max=10)

reversefoot7.jpeg
reversefoot7.jpeg (19.98 KiB) Viewed 4679 times

reversefoot8.jpeg
reversefoot8.jpeg (21.55 KiB) Viewed 4679 times


reversefoot9.jpeg
reversefoot9.jpeg (26.17 KiB) Viewed 4679 times


Driven Keys

1. Open the Driven Keys window: Animate->Set Driven Key->Set
2. Select FootControl and click "Load Driver"
3. Select peelHeelGrp and click "Load Driven"
4. Select "Peel Heel" as the Driver attribute and "rotateX" as the Driven attribute
5. With FootControl selected, set Peel Heel to 0
6. Select peelHeelGrp and set rotateX to 0
7. In the Driven Keys window, click "Key"
8. Select FootControl again, set Peel Heel to 10
9. Select peelHeelGrp, set rotateX to 55
10. In the Driven Keys window, click "Key"


Use Driven Keys to connect FootControl.toeTap to toeTapGrp.rotateX. (Select toeTapGrp and click "Load Driven")

toeTap: -10 rotateX: 25
toeTap: 10 rotateX: 35

Now connect FootControl.toePivot to toePivotGrp.rotateY

toePivot: -10 rotateY: -25
toePivot: 10 rotateY: 25

Finally, parent heelPivotGrp under FootControl to complete the setup.

reversefoot10.jpeg
reversefoot10.jpeg (38.43 KiB) Viewed 4679 times
Attachments
reverseFootStart.ma
(122.57 KiB) Downloaded 392 times
User avatar
BenChang
 
Posts: 176
Joined: Mon Jan 17, 2011 4:48 pm

Re: Reverse-Foot Setup

Postby BenChang » Wed Mar 18, 2015 3:37 pm

Additional resources:

1. A video tutorial of the above technique, from Lester Banks:
http://lesterbanks.com/2012/11/creating-a-simple-reverse-foot-rig-in-maya/

2. A short tutorial on the other popular reverse-foot method, which uses a secondary "reverse foot" skeleton, from Rigging101:

[url]http://www.rigging101.com/free/reversefootlock/index.htm
[/url]
User avatar
BenChang
 
Posts: 176
Joined: Mon Jan 17, 2011 4:48 pm


Return to Art and Animation

Who is online

Users browsing this forum: No registered users and 1 guest

cron