Rigged character for Assignment 3

To do the assignment, use character.mb (http://atec.utdallas.edu/midori/Maya/Animation). Follow the instructions below *very carefully*. (I *mean* it.).


How to animate the character - by body part

Hips and spine:

·         To move or rotate the character GLOBALLY (e.g., move the character across a room), move or rotate global_control. The entire body moves but the feet and hands are left behind if IKs are on.

·         To move or rotate the character LOCALLY (e.g., move the hips from side to side to keep the center of mass over the support limb), move or rotate local_control. Note: Use local_control for repetitive movenents that occur for each step.

·         To pose the spine, select "1" (backControl_1) and "2" (backControl_2) move them, and select "h" (HipControl) and rotate it.

·         To twist the spine, select local_control and change Back Twist.


Arms and legs:

To select the following right arm's and leg's controls, rightControls layer needs to be visible and non-referenced.  (That’s how it is when you open the file.)

Right arm:

·         To move the right arm, move right_armControl.

·         To move the right elbow, move R_elbow_PV.

·         To rotate the right hand, select right_handControl and change wristTwist, wristSide, and wristUpDown.

·         To close the right hand, select right_handControl and change curl.

·         To move the right shoulder, rotate right_clavicle_control.

Right leg:

·         To move the right leg, move rightFootControl.

·         To rotate the right foot around the ankle, rotate rightFootControl.

·         To rotate the right foot around the heel, select rightFootControl and change HeelRotX, HeelRotY, and HeelRotZ.

·         To rotate the right foot around the toe, select rightFootControl and change ToeRotX, ToeRotY, and ToeRotZ.

·         To roll the right foot, select rightFootControl and change BallRot.

·         To move the right knee, select rightFootControl and rotate around the y-axis.


To select the left arm's and leg's controls, leftControls layer needs to be visible and non-referenced. (That’s how it is when you open the file.)  The controls for the left limbs are identical to the right side explained above. When you are animating the legs and arms with IK, key FootControls and armControls respectively but not the IK handles directly.


Neck, shoulders and elbows:

To select the following joints, make joints layer visible and non-referenced. To use FK on arms (i.e., to animate arms by keying the rotation angles of shoulder and elbow joints), turn off IK. See "Switching between FK/IK" below.

·         To rotate the head, rotate back_neckJoint.

·         To rotate the right arm with forward kinematics, rotate right_shoulder joint.

·         To rotate the right forearm with forward kinematics, rotate right_elbow joint.


How to make the character' walk along the z-axis:ce.

·         To move the character in space, key Translate Z in globalControl.

·         To move legs, always use IK and key Translate Y and Translate Z in FootControls. (See "How to prevent feet from sliding" below. )

·         To animate arms, choose between IK and FK. See "Switching between FK/IK below:
With IK, key the translations of handControls, right_elbow_PV, and left_elbow_PV.
With FK, key the rotations of right_shoulder, left_shoulder, right_elbow, and left_elbow joints.

·         To animate a foot taking off by pushing the ground with toes (plantarflexion of foot, i.e., shifting from a support phase to a swing phase), key ToeRotX and BallRot in FootControls.

·         To animate a foot catching the falling body (dorsiflexion of foot, i.e., shifting from a swing phase to a support phase), key HeelRotX in FootControls.

·         To animate hips, key Translate X (lateral displacement of pelvis), Translate Y (vertical displacement of pelvis), Rotate Y (pelvic rotation), and Rotate Z (pelvic tilt) in localControl.

·         To twist the torso (i.e. rotate the shoulders) in the opposite direction from the hips, key BackTwist in localControl.

·         To keep the face facing forward (countering the torso's twisting), key Rotate X in back_neckJoint. (This is FK. There is no IK set up for the neck.)

·         To animate the spine, key Translate X (lateral flexion of trunk) and Translate Z (antero-posterior flexion of trunk) in spineControl1 and spineControl 2.


How to animate the nine factors influencing walking: (See the handout for the nine factors.)

1.   Pelvic Rotation - Rotate Y in LocalControl

2.   Pelvic Tilt - Rotate Z in LocalControl

3.   Lateral Displacement of Pelvis - Translate X in LocalControl

4.   Bending of the knees - Translate Y and Translate Z in FootControls

5.   Lateral Flexion of Trunk - Translate X in spineControl1 and spineControl2

6.   Antero-posterior Flexion of Trunk -  Translate Z in spineControl1 and spineControl2

7.   Dorsiflexion of Foot - HeelRotX in FootControls

8.   Plantarflexion of Foot - ToeRotX and BallRot in FootControls

9.     Compliance of Foot - ToeRotX and BallRot in FootControls

 

·         Vertical displacement of pelvis (caused by the “inverted pendulum” motion of legs) – Translate Y in LocalControls


How to prevent feet from sliding:ce, k

When a foot is in a support phase, the location of the foot should not be changing. If a character is walking along the z-axis and if the character's right foot is in a support phase, the curve of the z-translation of the rightFootControl should be completely flat.

When a foot is in a swing phase, the location of the foot should be changing. If a character is walking along the positive z-axis and if the character's right foot is in a swing phase, the curve of the z-translation of the rightFootControl should increase with ease-in and ease out.

Pay attention to the tangents in the screen capture above. They are flat. They allow the curve in the support phases to be flat and give ease-in and ease-out to the swing phases. The durations of support phases and swing phases should be approcimately equal throughout a neutral walk animation. When one foot is in a swing phase the other should be in a support phase. See the screen capture below. It shows the z-translations of the right and left footControls together.


Important & helpful notes:


·         Ground. Create a plane to indicate the position of the ground and make sure that the feet do not slide or go below the ground surface.

 

·         Start with legs. Start animating from the legs, i.e., start with keying the z-translation of global_control, rightFootControl, and leftFootControl.

 

·         Switching between FK/IK. The arms can be animated with IK or FK. FK is more appropriate for swinging arms; IK is more appropriate for reaching a certain object. To switch from IK to FK, make untouchables layer visible, select right_arm_IK and left_arm_IK handles, set IK Blend to 0, and make the untouchables layer invisible again. To witch from FK to IK, set IK Blend to 1. IK Blend can be interpolated to blend between FK animation and IK animation.

 

·         Layer. To hide a layer, go to Layer Editor under Channel Box and click the box with V in it. (V stands for visibility.) Clicking the empty box again will display the layer again. T in the box between the layer visibility and the layer color stands for "template" and R for "reference." The layer is “non-referenced” when it is neither T or R.

 

·         Character set. A character set named "character" and sub-character sets named "arms", "legs, and "spine" have been created. If you click "character", "arms", "legs", or "spine" under INPUTS in Channel Box, you can see other keyable attributes in the character set.

 

·         Lock and Hide. The attributes that you don't need to key have been locked and hidden. In order to unlock a locked attribute, click on Channels in Channel Box with LMB, select Channel Control..., moved the attribute from Locked to Non Locked, and from Non Keyable to Keyable. In order to lock and hide an attribute you don't want to key, select the attribute in Channel Box, click on Channels with LMB, select "Lock and Hide Selected."

 

·         Infinite cycle. When you have finished creating one cycle, open Graph Editor, select Infinity under View in Graph Editor. Selecting Curves -> Post Infinity -> Cycle with Offset repeats the cycle an infinite number of times. The resulting walk tends to look mechanical since the exact motion is repeated, but this is a quick way to see how your walk cycle looks.

 

·         Copying and editing cycles. We are not a robot and there is some randomness even in our seemingly neutral constant walks. To give a variation to each step (e.g., give some natural randomness to a walk), you need to key multiple steps, instead of cycling (looping) a pair of steps using Cycle with Offset (mentioned above). If you want to copy the two first steps that you have keyed, in Graph Editor select the first step's curves and select Edit -> Copy. Open the Paste Key Options. In the Paste Key Options window, select Edit -> Reset Settings. Select the number of the copies that you want. Go to the frame number where pasted copies should start and click on Apply. Edit the copied curves so that they won't be identical to the originals.