A11   UNLEASHING THE WALK CYCLE

Unleashing the Walk Cycle
Unleashing the Walk Cycle

THE BRIEF
Walking through a space.

Artistic Elements Covered: Timing and Choreography
Technical Elements Covered: Use of Advanced Rig


Scene file "More Walking ".   Sequence Duration 20 to 30 seconds

Import this file into your "Walk in the park" scene file and choreograph your walk to take into account the new obsticles.



To follow and implement this section you will have needed to have successfully completed the previous section A08 “The Biped Walk Cycle”.   In A08 we learned how to develop a walk cycle which cycles over 24 frames on the same spot.   Developing and testing the walk cycle on same spot is preferable to the character walking out of frame but there are other issues that make it difficult to do it any other way.   This section is about unleashing this figure and manipulating your animation curves so that he will move through space in a straight line and encounter various obstacles.   We will alter the animation curves so that the obstacles are accommodated in the animation.
This section will guide you on how to get the figure through the double doors and up the stairs just like the gif animation above. The cat and and the down stair section is up to you.   The overall pace or rhythm of this exercise will not change.   Moving and scaling keys along the time line will be the content of a future tutorial, but in this section we will alter key values and delete keys to achieve the desired result.
Make a start by loading in your finished walk cycle (built form A08 The Biped Walk Cycle).   Now import the file exercise_ walk_supplement_import.   If you track well out in the perspective window, you will discover the obstacles that our walking figure must cope with.

First we must make all the animation curves cycle in pre & post Infinity so that they will continue moving our figure beyond their normal range.   (Most of your curves should have been keyed between frame 0 and 24 but all should be of the same length).   Go to the outliner window and from the menu bar select Display and un-tick DAG Objects Only.   Scroll down to the animation curves and select them all using the shift key.   Open the Graph Editor window and from the menu bar select Curves/Pre Infinity/Cycle.   Again from the menu bar select Curves/Post Infinity/Cycle.   Check that cycle still operates out of normal range (between 1 and 200 frames).   If the walk cycle is stable then go to the next stage “Walk Cycle Stable”.   If not then read the next bit.

Walk cycle goes weird when played out of normal range

Check each of your animation curves.
They should all be exactly 24 frames in length with the first key at 0 and the last at 24 although you will have other curves up and down the time line you will have curves keyed at 12 to 36 or 2 to 26 or -3 to 22.
They MUST BE EXACTLY 24 frames in length.
Next, the first key frame value should be EXACTLY the same is the last key frame value.
If the cycle still miss behaves then check all pre and post infinity treatments individually, you may have left one on “constant”.


Walk Cycle is Stable
Moving Forward & Modifying the Z Axis Channels

We will modify just three Z channels to enable the male figure to cycle forward through space.
Select control_leg_IK_L and look at the curves in the graph editor, they should look like the ones below.

The Left Leg Curves


Edit the values of translate Z curve as follows:-
The second key value should be changed from -3.0 to +3.0
The last key value should be changed from 3.0 to 15.00
Change the pre infinity and post infinity to “Cycle with offset”
The translate Z curve should now look like the one below.

The Left Leg Translate Z


Select control_leg_IK_R and look at the curves in the graph editor, they should look like the ones below.

The Right Leg Translate Z


Edit the values of translate Z curve as follows:-
The second key value should be changed from 3.0 to 9.0
The last key value should be changed from -3.0 to 9.00
Change the pre infinity and post infinity to “Cycle with offset”
The translate Z curve should now look like the one below.

The Right Leg Translate Z


Select control_root and look at the curves in the graph editor.
Edit the values of translate Z curve as follows:-
The second (last) key value should be changed from 0.702 to 12.702
Change the pre infinity and post infinity to “Cycle with offset”
The translate Z curve should now look like the one below.

The Root Z


Select the move_ALL control and key frame the translate Z at value 0.0 at frame zero and at value -12.0 at frame 24.
Change the pre infinity and post infinity to “Cycle with offset”
The translate Z curve should now look like the one below.

The move_ALL Z


Check that cycle still operates out of normal range (between 1 and 200 frames).
If it is not stable then check that your values are correct and that all four modified translate Z curves are pre and post infinity set to “cycle with offset”


Baking the Keys along the Time-line
Go to the outliner window and from the menu bar select Display and make sure that DAG Objects Only is still un-ticked.   Scroll down to the animation curves and select them all using the shift key.   Open the Graph Editor window and from the menu bar select Curves from the left hand field of the editor.   You probably have scroll down to select them all. (For some reason in my version of Maya, it doesn’t work if I select the curves themselves in the right hand graph field)
Selecting All curves


From the the Graph Editor menu/ bar select Curves/Bake Channel and go to the option box.
When the option box opens the select the following:-
Tick the Start/end button
Start Time = 0
End Time = 500
Sample by = 1
Keep Unbaked Keys = Ticked
Sparse Curve Bake = Ticked
Press the Bake button. Your Graph Editor should now look something like this when you track out a little.

The curves baked


Release the figure from the origin

Select the move_ALL control and delete the translate Z curve from the channel box.   Zero the translate Z channel. When you now run your animation the figure should walk out of frame.

Release the figure from the origin


Getting through the Doors
The first thing the character will encounter are the double doors.   These doors are equipped with user friendly IK operated handles and all you have to do is push them forward along the Z and side ways along the X as you would do with real doors.   The curves that I used, start at frame 50 and an open wide key at 62, then a close key at around frame 90.   Notice that I don't bother with the translate X channels after 90 because their only use is to widen the door opening.   The dressing after the door closer is, as you can seen, on the translate Z channels and they are not in synchronisation, which adds interest.

Door Animation


Modifying the Arm Channels

Select control_FK_shoulder_L and doctor the rotate Y and rotate Z keys after frame 50 so the arm rises to push the door.   You will probably have to key the rotate X channel to achieve the proper orientation.   This is what my control_FK_shoulder_L channels looked liked after my session.

Left Shoulder Curve


Sort out the left wrist by selecting control_FK_wrist_L and keying these starting around frame 43.
This is what my control_FK_wrist_L channels looked liked after my session.

Left Wrist Curve


Do the other arm by selecting control_FK_shoulder_R and doctoring the keys after or around frame 50.   This is what my control_FK_shoulder_R channels looked liked after my session.

Right Shoulder Curve


Sort out the right wrist by selecting control_FK_wrist_R and keying these starting around frame 45.   This is what my control_FK_wrist_R channels looked liked after my session..

Right Wrist Curves


The Stair Ascent

Modifying the Z & Y translate Channels
Left Scroll through the time line to frame 96 and switch to a side geometry window.   This is what my figure looks like at frame 96.

Frame 96

We need to to adjust the leg controls both in translate Y and Z and the root in both translate Y and Z.   Select the control_leg_IK_L and select the translate Z channel from the left hand panel of the graph editor.   Select all keys from and including frame 96 and carefully move them down in the graph editor so that the left foot slips slowly back to the centre of step one.   This can be tricky because you need to track in to the graph editor right hand panel to achieve more accuracy but you need to keep your eye on the side geometry window to measure the result.

Left Foot translate Z Channel


Now select the translate Y channel from the left hand panel of the graph editor and move key frame 96 up to increase it's value and stop when the foot reaches the top surface of step one.

Left Foot translate Y Channel


This is how my figure looked after I had made the adjustments to the translate Y and Z channels

Frame 96


Below is the finished control_leg_IK_L translate Y channel.

Left Foot translate Y Channel


Below is the finished control_leg_IK_R translate Y channel.

Right Foot translate Y Channel


The finished control_root translate Y channel.

The Root translate Y Channel


I didn't, of course, edit these curves in this order because you can only really do this one step at time.   I start with one foot, then adjust the root, then the other foot, then back to the root etc.
This is how my figure looked at frame 108 after I had made the adjustments to the translate Y and Z channels of the right foot and the root.


Frame 108


We finish this tutorial by doctoring the Heel Roll X of each foot as the figure climbs the stairs.   Going up stairs starting on just the heels looks very odd and probably is not practical.
Select control_leg_IK_L select the Heel Roll X channel from the left hand pane of the graph editor.   Delete the keys or zero their values as I have done for step ascent part of the animation.   The curve for this channel should look like the one below when you have finished.

Changing the Left Heel Roll X


Do the same for the other leg and control_leg_IK_R Heel Roll X channel.

Changing the Right Heel Roll X


You can now continue on and decide what you are going to do with the cat and tackle the descent at the other end of the platform.

This site and all the learning materials are the copyright of Henry Lutman.   The sole purpose of the site and downloads are to aid the teaching of 3D Computer Animation and related topics.   Please do not reproduce any of the content of this site, or any of the downloads for purposes other than to use as a guide to learning, without the written permission of Henry Lutman.
Web Site Author: Henry Lutman.     Web Site Editor: Martin Capey
Lutman Animation Copyright Henry Lutman