maya tutorial - character animation

180
Character Animation

Upload: ramjee-vinesh

Post on 29-Jun-2015

659 views

Category:

Documents


15 download

TRANSCRIPT

Page 1: Maya Tutorial - Character Animation

CharacterAnimation

Page 2: Maya Tutorial - Character Animation
Page 3: Maya Tutorial - Character Animation

Using Maya: Animation 3

Contents

Character Animation

10 Understanding Character Animation 167Modeling the character 168

Building, posing, and animating the skeleton 170

Skinning the skeleton 178

Using flexors 181

Animating the character 183

Workflow summary 184

11 Building Skeletons 187Understanding skeletons 188

Joints 188

Joint chains 189

Limbs 190

IK handles and IK solvers 191

Page 4: Maya Tutorial - Character Animation

4 Using Maya: Animation

Contents

Creating a joint chain or limb 192

Viewing a skeleton’s hierarchy 195

Resizing joint display 195

Positioning joints 196

Inserting joints 197

Removing joints 198

Mirroring limbs or skeletons 199

Connecting skeletons 202

Disconnecting a joint to make two skeletons 204

Rerooting the skeleton 205

Setting joint creation options 206

Viewing joint creation options 207

Setting degrees of freedom 208

Setting automatic joint orientation 208

Setting scale compensation 210

Setting automatic joint limits 210

Setting automatic creation of IK handles 211

Setting IK handle options automatically 211

Editing joint attributes 211

Viewing editable joint attributes 212

Renaming a joint 214

Editing degrees of freedom 216

Editing a joint’s preferred angle 217

Editing stiffness 217

Editing joint orientation 219

Editing scale compensation 220

Editing joint limits 220

Dampening rotation near joint limits 223

Page 5: Maya Tutorial - Character Animation

Using Maya: Animation 5

Contents

12 Posing and Animating Skeletons 225Understanding posing and animating skeletons 226

Forward kinematics 226

Posing and animating with forward kinematics 228

Inverse kinematics (IK) 229

Posing and animating with inverse kinematics (IK) 230

IK handles and IK chains 230

IK solvers 231

Single chain (SC) solver 231

Rotate plane (RP) solver 233

Spline solver 237

Multi-chain (MC) solver 237

Creating IK handles 238

Adding an IK handle 238

Creating an IK chain 239

Displaying IK handle’s end effector 240

Displaying IK handle’s goal and goal’s axis 240

Displaying IK handle’s twist disc and pole vector’s axis 240

Setting IK handle creation options 241

Viewing IK handle creation options 241

Setting the current solver 242

Activating the multi-chain (MC) solver 243

Setting autopriority 243

Setting solver enable 244

Setting snap enable 244

Setting sticky 244

Setting priority 245

Setting weight 245

Setting position vs. orientation (PO) weight 246

Editing IK handle attributes 246

Viewing editable IK handle attributes 247

Page 6: Maya Tutorial - Character Animation

6 Using Maya: Animation

Contents

Renaming an IK handle 249

Editing transform attributes 249

Editing skeleton info 250

Editing IK handle attributes 250

Editing IK solver attributes and choosing an IK solver 251

Editing pivots 251

Editing limit information 252

Editing display 252

Editing node behavior 253

Editing IK solvers 253

Editing IK solver attributes 253

Editing node behavior 254

Using IK systems 254

Creating an IK system 254

Accessing an IK system 255

Renaming an IK system 255

Viewing an IK system’s IK solvers 255

Editing global snap and global solve 255

Editing node behavior 256

Posing IK chains 256

Posing with single chain (SC) solver IK handles 256

Positioning with rotate plane (RP) solver IK handles 257

Twisting with rotate plane (RP) solver IK handles 257

Eliminating flip in rotate plane (RP) solver IK handles 257

Sticky posing 258

Using IK spline handles 259

Creating IK spline handles 259

Animating the joint chain 261

Setting options before creating the IK spline handle 265

Setting attributes after creating the IK spline handle 271

Preventing unwanted start joint flipping 272

Page 7: Maya Tutorial - Character Animation

Using Maya: Animation 7

Contents

Working with soft body curves 274

Tips for working with IK spline handles 274

Working with human skeletons 276

Working with animal skeletons 277

Working with sinuous motion on skeletons 278

Animating IK chains 280

Keyframing 280

Motion capture 281

13 Skinning Skeletons 283Understanding skinning 284

Closest point skinning 284

Partition set skinning 285

Skin point set colors 285

Bind pose 285

Skin detachment and reattachment 285

Binding by closest point 285

Binding by partition set 287

Binding multiple objects as skin 288

Returning to bind pose 289

Displaying skin point set colors 290

Editing skin point sets 290

Detaching and reattaching skin 290

Detaching skin without preserving skin groups and percentages 291

Detaching skin while preserving skin groups and percentages 292

Reattaching skin while preserving skin groups and percentages 292

Page 8: Maya Tutorial - Character Animation

8 Using Maya: Animation

Contents

Animating with skin and skeleton groups 292

14 Using Flexors 295Understanding flexors 296

Lattice flexors 296

Sculpt flexors 298

Cluster flexors 299

Creating lattice flexors 301

Positioning lattice flexors after creation 302

Editing joint lattice flexor attributes 302

Viewing joint lattice flexor attributes 303

Renaming joint lattice flexors 303

Editing creasing 303

Editing rounding 305

Editing length in 306

Editing length out 308

Editing width left 310

Editing width right 311

Editing bone lattice flexor attributes 313

Viewing bone lattice flexor attributes 313

Renaming bone lattice flexors 314

Editing length in 314

Editing length out 316

Editing width left 318

Editing width right 319

Editing bicep 321

Editing tricep 322

Page 9: Maya Tutorial - Character Animation

Using Maya: Animation 9

Contents

Creating sculpt flexors 324

Editing sculpt flexor attributes 325

Joint-driven sculpting 325

Creating cluster flexors 326

Editing cluster flexor attributes 328

Editing with cluster flexor manipulators 328

Page 10: Maya Tutorial - Character Animation

10 Using Maya: Animation

Contents

Page 11: Maya Tutorial - Character Animation

Using Maya: Animation 167

Ch

ara

cte

rA

nim

atio

n

10 Understanding CharacterAnimation

As a character animator using Maya, you can create the illusion of life. Youcan animate virtually any character imaginable, no matter how realistic,abstract, or surreal. The essence of character animation is timing and motion.Maya offers the most sophisticated tools available for defining the timingand motion of characters. Using Maya: Animation, Character Animation,describes how to use Maya’s skeleton-based shape deformation tools toanimate articulated, hierarchical 3D characters with forward or inversekinematics techniques.

This chapter presents an overview of animating an articulated, hierarchical3D character in Maya. Animating a character includes the following:

• “Modeling the character” on page 168

• “Building, posing, and animating the skeleton” on page 170

• “Skinning the skeleton” on page 178

• “Using flexors” on page 181

• “Animating the character” on page 183

This chapter concludes with a summary of Maya’s workflow for skeletalcharacter animation: “Workflow summary” on page 184.

Page 12: Maya Tutorial - Character Animation

168 Using Maya: Animation

Understanding Character AnimationModeling the character

Modeling the characterModeling is the process of creating a geometry for the character. Modeling isthe first step in animating a character.

For best results, create the geometry with limbs outstretched. This will makebuilding a skeleton much easier.

A geometry can be a non-uniform rational B-spline (NURBS) geometry or apolygonal geometry. A geometry defines the shape of the character’s surface.

Page 13: Maya Tutorial - Character Animation

Using Maya: Animation 169

Understanding Character AnimationModeling the character

Ch

ara

cte

rA

nim

atio

n

To create a geometry for a character, use the modeling tools in Maya’sModel menu. When you create the geometry, you should also define howthe character will look when rendered. For rendering, use the tools inMaya’s Render menu. Note that you can also use Maya’s particle system todefine the character’s features. To use the particle system, use the tools inMaya’s Dynamics menu.

The next step in animating a character is to create a skeleton so you cancontrol a character’s actions. First you build a skeleton for the character’sgeometry, and then you bind the geometry to the skeleton. This lets youcontrol the geometry’s shape and actions.

Note

To use the animation tools this document describes, be sure you haveMaya’s Animation menu selected.

Page 14: Maya Tutorial - Character Animation

170 Using Maya: Animation

Understanding Character AnimationBuilding, posing, and animating the skeleton

Building, posing, and animating the skeletonA skeleton is a structure for animating a character’s articulated, hierarchicalactions.

The skeleton you build for a character need not exactly resemble what thecharacter’s skeleton would be like in real life. You might create a skeleton fora character that would lack one in real life. Depending on the effect youwant to create, you might even have the skeleton influence the geometryfrom a location outside of the geometry.

A skeleton consists of joints connected by the bones of the joints.Additionally, a skeleton can consist of special tools called inverse kinematics(IK) handles. IK handles enable you to pose the character easily, and theyfacilitate animation.

You could begin building a skeleton for a human character by creating somelegs.

Page 15: Maya Tutorial - Character Animation

Using Maya: Animation 171

Understanding Character AnimationBuilding, posing, and animating the skeleton

Ch

ara

cte

rA

nim

atio

n

In this example, each leg consists of a simple series of joints connected bybones. For clarity, these legs are shown without a geometry in the scene.When you create a skeleton, you should have the geometry in your currentscene so you can be sure the skeleton fits the model properly.

When we think of a real skeleton, we tend to think first of the bones andthen of the joints that enable movement. When it comes to animatingmovement, however, we must first focus on the joints and their hierarchicalrelationships.

In Maya, the joints of a skeleton always exist in a hierarchy that defines howthey can move in relation to each other. Any two connected joints have ahierarchical relationship for defining articulated actions. This relationship isindicated by the bone that connects the two joints.

Page 16: Maya Tutorial - Character Animation

172 Using Maya: Animation

Understanding Character AnimationBuilding, posing, and animating the skeleton

Note that the bone has a wedge shape. The joint at the thicker end of thewedge is higher in the hierarchy than the joint at the thinner end. Wheneverthe joint at the thicker end rotates, the bone and the joint at the thinner endwill have to move in an arc. But when the joint at the thinner end rotates, thejoint at the thicker end will not have to move. This is just like how a realskeleton moves.

The joint at the thicker end is called the parent joint in relation to the joint atthe thinner end, which is called the child joint. We can think of the parentjoint as being “above” the child joint and the child “below” the parent.

As far as hierarchical movement is concerned, the bone that connects the twojoints is really part of the parent joint. A bone belongs to a parent joint,which completely controls the bone’s movements.

Note that a joint can have more than one bone, each bone connecting theparent joint to a different child joint.

Joint

BoneJoint

Parent joint

Child joint

Parent joint’sbone

Page 17: Maya Tutorial - Character Animation

Using Maya: Animation 173

Understanding Character AnimationBuilding, posing, and animating the skeleton

Ch

ara

cte

rA

nim

atio

n

Any simple series of joints connected together by bones is called a joint chain.The highest joint in the joint chain’s action hierarchy is called the parent jointof the joint chain. The action of a joint chain’s parent joint affects everythingbelow it in the chain.

You can create very elaborate skeletons consisting of multiple joint chainsorganized into a complex hierarchy.

A limb consists of one or more joint chains that branch off from one anotherin a tree-like structure.

Parent joint ofjoint chain

Page 18: Maya Tutorial - Character Animation

174 Using Maya: Animation

Understanding Character AnimationBuilding, posing, and animating the skeleton

The highest joint in a skeleton’s hierarchy is called the root joint; when theroot joint moves or rotates, everything must move or rotate with it.

The order in which you create joints and their bones defines their actionhierarchy for rotation and movement. In the leg, the hip joint is the highestjoint in the action hierarchy. The hip joint was created first, then the kneejoint, and so on.

Page 19: Maya Tutorial - Character Animation

Using Maya: Animation 175

Understanding Character AnimationBuilding, posing, and animating the skeleton

Ch

ara

cte

rA

nim

atio

n

You can limit how joints rotate so that you can easily put the character inrealistic poses. For example, you can limit how a knee joint can rotate so itcan’t bend from side to side but only forward and back.

Page 20: Maya Tutorial - Character Animation

176 Using Maya: Animation

Understanding Character AnimationBuilding, posing, and animating the skeleton

Setting and editing the characteristics of the knee joints will make theanimation of a walk cycle much easier. You can set each joint’scharacteristics as you create a skeleton and later tweak them as you pose andanimate the character.

Chapter 11, “Building Skeletons”describes creating and editing joints andbones. After you’ve created all the joints and bones that make up a skeletonfor your character, you’ll want to move the skeleton around and put it invarious poses.

In Maya, there are two basic ways to pose a joint chain: forward kinematicsand inverse kinematics.

With forward kinematics, when you pose a joint chain you have to specifythe rotations of each joint individually, starting from the parent joint ondown to all the joints below. This approach is excellent for creating detailedarc motions.

With inverse kinematics, when you pose a joint chain all you have to do istell the lowest joint in the joint chain’s hierarchy where you want it to be,and all the joints above it will rotate automatically. Inverse kinematics offersa very intuitive way to pose a joint chain because it enables goal-directedposing. When you reach for an object, you don’t think about how you aregoing to rotate your shoulder, your elbow, and so on. You just think aboutwhere the object is that you want to reach, and your body automaticallydoes the rest. That’s how inverse kinematics works, too.

To pose a joint chain with inverse kinematics, you need to add some specialtools to a skeleton. These tools are called inverse kinematics (IK) handles. An IKhandle enables you to pose a joint chain intuitively.

An IK handle begins at a joint chain’s parent joint and can end at any jointbelow the parent joint. For example, for each leg you could create an IKhandle that controls the joint chain beginning at the hip joint and ending atthe ankle joint.

Page 21: Maya Tutorial - Character Animation

Using Maya: Animation 177

Understanding Character AnimationBuilding, posing, and animating the skeleton

Ch

ara

cte

rA

nim

atio

n

You can select the IK handle where it ends at the ankle joint and move thechain with it in the same way that you would think about moving your ownankle.

In addition to posing a skeleton, IK handles also play an important role inthe animation of the skeleton. The movement of a chain between thekeyframes of an animation is also automatically solved by the chain’s IKhandles.

IK handles figure out how to rotate and move all the joints in the chain foryou by using an inverse kinematics (IK) solver. An IK solver is the motorintelligence behind an IK handle. Maya offers several different types of IKsolvers for different types of movement effects. For further control, you canalso specify the characteristics of the IK solvers themselves.

You’ll want to create IK handles for all of a skeleton’s joint chains that youwant to pose. Chapter 12, “Posing and Animating Skeletons” describes howto use IK handles and IK solvers.

You can pose and animate a skeleton, but such an animation would showonly the timing and motion of a character lacking form and shape. The nextstep is to bind the character’s model to the character’s skeleton so that theskeleton can control the model’s actions.

Page 22: Maya Tutorial - Character Animation

178 Using Maya: Animation

Understanding Character AnimationSkinning the skeleton

Skinning the skeletonAfter you’ve created the character’s geometry and the character’s skeleton,the next step is to bind the two together. When a geometry is bound to askeleton, the geometry can be referred to as the skeleton’s skin. When youpose the skeleton, the skin moves with the skeleton automatically.

The process of binding a geometry to a skeleton is called skinning.

NURBS geometries are shaped by points called control vertices (CVs), andpolygonal geometries are shaped by points called vertices. In both cases,Maya can control shape by means of points. After a geometry has beenbound to a skeleton, these points are called skin points.

To bind a geometry to a skeleton, Maya first divides the geometry’s pointsinto sets according to each point’s proximity to a joint. The newly formedskin point sets are identified by various colors. (Note that some expert userscall skin point sets partitions because any given point can be in only one set.)Next, Maya binds each skin point set to the nearest joint so the skin points ineach skin point set will move with the nearest joint.

Page 23: Maya Tutorial - Character Animation

Using Maya: Animation 179

Understanding Character AnimationSkinning the skeleton

Ch

ara

cte

rA

nim

atio

n

Note that because skin points are bound to joints by means of deformationtools called joint clusters, expert users sometimes call skin points joint clusterpoints.

Once the skin is bound to the skeleton, exercise the character by putting itinto various poses. It’s important to do this because you need to observehow the skin acts in response to the skeleton’s actions.

Depending on the pose of the geometry and skeleton during binding, a fewof the skin points could join an inappropriate skin point set.

Page 24: Maya Tutorial - Character Animation

180 Using Maya: Animation

Understanding Character AnimationSkinning the skeleton

If so, you can easily move those skin points from one skin point set toanother.

Chapter 13, “Skinning Skeletons”describes skinning in more detail.

Page 25: Maya Tutorial - Character Animation

Using Maya: Animation 181

Understanding Character AnimationUsing flexors

Ch

ara

cte

rA

nim

atio

n

Using flexorsYou can animate skin deformation effects by using special deformation toolscalled flexors. Flexors are high-level deformeration tools for use with skinsand skeletons. The effects of flexors can be driven by how you pose andanimate a skeleton.

Maya offers three types of flexors: lattice flexors, sculpt flexors, and clusterflexors.

A lattice flexor influences skin around joints or the bones of joints. It cansmooth or wrinkle skin around joints, and provide muscle definition aroundbones.

A sculpt flexor provides anatomically based deformations such as musclebulges, knee caps, and elbow caps. A sculpt flexor can influence skin aroundjoints or the bones of joints.

A cluster flexor controls the points in a skin point set around a joint withvarying percentages of influence. It can provide very realistic smoothingeffects.

Let’s look at a lattice flexor attached to a joint. With a lattice flexor, a jointcan directly influence skin points, changing the shape of the character’s skin.You can create a lattice flexor that will deform skin when the joint it isattached to rotates. For example, you can create a flexor that wrinkles theskin around an elbow as you bend a character’s arm.

Page 26: Maya Tutorial - Character Animation

182 Using Maya: Animation

Understanding Character AnimationUsing flexors

Similarly, a lattice flexor attached to a bone can influence the skin around abone. You can use lattice flexors attached to bones for animating muscledefinition.

Page 27: Maya Tutorial - Character Animation

Using Maya: Animation 183

Understanding Character AnimationAnimating the character

Ch

ara

cte

rA

nim

atio

n

Chapter 14, “Using Flexors” describes using flexors for skin deformation inmore detail.

Using Maya: Animation, Basic Deformers provides further information onMaya’s free form deformation tools. Unlike flexors, these deformation toolsneed not work in conjunction with a skeleton. These tools include sculptdeformers, wire deformers, lattice deformers, cluster deformers, and blendshape deformers. Blend shape deformers, for example, are excellent tools forfacial animation.

The time you put into building a skeleton, binding the geometry, andcreating flexors is time well spent. The effort you put into these steps willpay off when you animate the character.

Animating the characterThe more carefully you design and construct the character, the easieranimating the character will be. You can animate the character bykeyframing or by using motion capture data. For general information onkeyframing animations in Maya, refer to Using Maya: Animation,Keyframe.For information on motion capture, see Using Maya, Animation,MotionCapture.

In keyframing, you pose a character in key postures and set these posturesas keys. Maya then interpolates the actions between the keys for you,playing the animation. For example, here is a frame from a walk cycle.

Page 28: Maya Tutorial - Character Animation

184 Using Maya: Animation

Understanding Character AnimationWorkflow summary

When Maya interpolates the actions between keyframes, it uses the IKhandles, the IK solvers, the lattice flexors, sculpt flexors, cluster flexors, andall the other attributes of the character that you have defined to produce theanimation. Chapter 12, “Posing and Animating Skeletons” describes how topose and animate skeletons; note that the information there also applies toskeletons with skins. Chapter 13, “Skinning Skeletons” explains how to bindgeometries to skeletons for posing and animating characters. Finally,Chapter 14, “Using Flexors” describes posing and animating skindeformations with flexors.

Workflow summaryAnimating an articulated, hierarchical 3D character in Maya involves usingMaya’s skeletal deformation tools: skeletons and flexors. After you create ageometry for the character with Maya’s modeling tools, you can build askeleton for the geometry and then bind the geometry to the skeleton. Thisbinding process is called skinning. Skinning the geometry to the skeletonbinds the model’s shape to the skeleton’s movement. The geometry hasbecome the skeleton’s skin, and the skin’s shape will deform as appropriatewhen you pose and animate the skeleton. Skeletons can be posed andanimated with Maya’s forward or inverse kinematics tools. Special inversekinematics tools include IK handles and IK solvers.

Page 29: Maya Tutorial - Character Animation

Using Maya: Animation 185

Understanding Character AnimationWorkflow summary

Ch

ara

cte

rA

nim

atio

n

In addition to using a skeleton to create skin deformation effects, you canalso use special deformation tools called flexors. Flexors provide a way foryou to pose and animate skin deformation effects that complement thedeformations being provided by the skeleton alone. Flexors are skin shapedeformation tools whose effects can be driven by the actions of a skeleton.For example, the rotation of a joint can drive the bulging of some skin,indicating muscle.

The next chapters cover the following topics:

• Chapter 11, “Building Skeletons”

• Chapter 12, “Posing and Animating Skeletons”

• Chapter 13, “Skinning Skeletons”

• Chapter 14, “Using Flexors”

Page 30: Maya Tutorial - Character Animation

186 Using Maya: Animation

Understanding Character AnimationWorkflow summary

Page 31: Maya Tutorial - Character Animation

Using Maya: Animation 187

Ch

ara

cte

rA

nim

atio

n

11 Building Skeletons

After you’ve created a geometry for your character, the next step is to builda skeleton for the geometry. In general, you’ll want to have the geometry inthe scene as you create the skeleton so can be sure the skeleton fits thegeometry. You could create a character’s skeleton before you create thegeometry, but you may have to scale the geometry and adjust the skeletonbefore you bind them together.

This chapter describes how to build skeletons. Building skeletons includesthe following:

• “Understanding skeletons” on page 188

• “Creating a joint chain or limb” on page 192

• “Resizing joint display” on page 195

• “Positioning joints” on page 196

• “Inserting joints” on page 197

• “Removing joints” on page 198

Page 32: Maya Tutorial - Character Animation

188 Using Maya: Animation

Building SkeletonsUnderstanding skeletons

• “Mirroring limbs or skeletons” on page 199

• “Connecting skeletons” on page 202

• “Disconnecting a joint to make two skeletons” on page 204

• “Rerooting the skeleton” on page 205

• “Setting joint creation options” on page 206

• “Editing joint attributes” on page 211

Note that adding inverse kinematics (IK) handles and using IK solvers areimportant when animating a skeleton. For information about IK handle andIK solvers, see Chapter 12, “Posing and Animating Skeletons.”

Understanding skeletonsSkeletons are hierarchical, articulated structures for animating geometries.Skeletons provide a basis for animating hierarchical actions in much thesame way that a human skeleton determines how the human body canmove.

When you build a skeleton, the grid can be quite useful for judging the sizeand shape of the skeleton. You can position and rescale the grid to suit yourwork. Also, use multiple camera views when building a skeleton to makesure that your skeleton fits the model appropriately in all three dimensions.

JointsJoints are the building blocks of skeletons. Each joint can have one or morebones attached to it. The action of a bone attached to a joint is controlled bythe joint’s rotation and movement. Various joint attributes specify how thejoint can act. For example, you can specify limitations on how far a joint canrotate.

A root joint is the highest joint in a skeleton’s hierarchy. A skeleton can haveonly one root joint.

Note

To use the tools for building skeletons, be sure you have Maya’sAnimation menu selected.

Page 33: Maya Tutorial - Character Animation

Using Maya: Animation 189

Building SkeletonsUnderstanding skeletons

Ch

ara

cte

rA

nim

atio

n

A parent joint is any joint higher in a skeleton’s action hierarchy than any ofthe other joints that are influenced by that joint’s action. Joints below a givenparent joint in the action hierarchy are called child joints.

Sample skeleton

Joint chainsA joint chain is any group of joints and their bones connected in a series. Thejoints are connected linearly; you could draw a line through a joint chain’sseries of joints and their bones without having to retrace your path. A givenjoint chain begins at the highest joint in the joint chain’s action hierarchy.This joint is the joint chain’s parent joint.

Root joint(selected)

Parent jointof joint “A”

Joint “A”

Bone ofjoint “A”

Child joint ofjoint “A”

Page 34: Maya Tutorial - Character Animation

190 Using Maya: Animation

Building SkeletonsUnderstanding skeletons

Joint chains

LimbsA limb is any group of one or more connected joint chains. The chains maybranch off from one another, forming a tree-like structure. Unlike a jointchain, a limb’s joints may not be connected linearly; you may not be able todraw a line through all of a limb’s joints and their bones without doublingback. A given limb begins at the highest joint in the limb’s action hierarchy.This joint is the limb’s parent joint.

When you begin building a skeleton that will have many symmetrical limbs,start in the center of the workspace near the scene’s world origin. Startingnear the center will make it easier for you to create skeletons with manysymmetrical parts.

Joint chain

Joint chain

Joint chainJoint chain

Page 35: Maya Tutorial - Character Animation

Using Maya: Animation 191

Building SkeletonsUnderstanding skeletons

Ch

ara

cte

rA

nim

atio

n

Limbs

IK handles and IK solversIK handles are special tools for posing and animating joint chains. On anygiven chain, the joint where the IK handle begins is called the start joint andthe joint the where IK handle ends is called the end joint. Note thatexperienced users sometimes refer to joint chains that have IK handles as IKchains.

IK solvers provide the motor intelligence of IK handles.

IK handles and IK solvers are described in Chapter 12, “Posing andAnimating Skeletons.”

When you create joint chains and limbs for your character, think about howyou are going to use IK handles to pose the joint chains. Joint chains thatconsist of four or fewer joints are much easier to pose with IK handles thanthose that have many more joints.

Limb

Limb

Page 36: Maya Tutorial - Character Animation

192 Using Maya: Animation

Building SkeletonsCreating a joint chain or limb

Expert users have found that if a skeleton lies entirely in one plane beforeyou bind the geometry to the skeleton, posing the character with IK handlescan be somewhat awkward in extreme cases. Having some of the jointsrotated slightly at various appropriate angles will make the character easierto pose later on.

Creating a joint chain or limbYou begin building a skeleton by creating a joint chain, which is a series ofjoints and their bones. You can then add to the joint chain by continuing thatjoint chain or by creating new joint chains starting from any of the jointchain’s joints. In this way you can create a complex structure of various jointchains and limbs. These joint chains and limbs define a skeleton’s actionhierarchy. Finally, you can view an outline of a skeleton’s hierarchy. Thisoutline view is useful for getting a clear picture of how your skeleton isstructured, and for selecting various parts of the skeleton.

To create a joint chain:

1 Select Skeletons→Joint Tool.

2 Click in the workspace at the position of the first joint.

The joint is created.

You can set a joint’s attributes while you create the joint or anytime after youhave created it. To set a joint’s attributes while you create it, see “Settingjoint creation options” on page 206. To modify a joint’s attributes after youhave created it, see “Editing joint attributes” on page 211.

3 Move the pointer to where you want the second joint, and then click.

The two joints are connected with a bone that indicates the direction of thejoint chain’s hierarchy: the thinner end of the bone’s triangle points to thechild joint.

4 Move the pointer to where you want the next joint, and then click. Continuemoving the pointer and clicking until you’re done creating the joint chainyou want.

5 To indicate you’ve finished creating the joint chain, press the Enter key orselect another tool.

If you want to change the positions of the joints, see “Positioning joints” onpage 196.

Page 37: Maya Tutorial - Character Animation

Using Maya: Animation 193

Building SkeletonsCreating a joint chain or limb

Ch

ara

cte

rA

nim

atio

n

Creating a joint chain

To add to a joint chain:

1 Select Skeletons→Joint Tool.

2 Click on a joint in the joint chain.

To continue a joint chain, click on the last joint in the joint chain. (The lastjoint is the lowest joint in the joint chain’s hierarchy.)

To create a new joint chain that branches out from an existing chain, click onany joint other than the last joint in an existing chain. A group of one ormore connected joint chains is called a limb.

3 Click where you want to create a new joint.

4 When you finish creating all the joints in the joint chain, press the Enter keyor select another tool.

Page 38: Maya Tutorial - Character Animation

194 Using Maya: Animation

Building SkeletonsCreating a joint chain or limb

Adding to a joint chain

1. Click here tocontinue thejoint chain

2. Click tocreate morejoints

1. Click hereto continuethe joint chain 2. Click to

create morejoints

Continuing a joint chain

Creating a new joint chain from an existing joint chain

or

Page 39: Maya Tutorial - Character Animation

Using Maya: Animation 195

Building SkeletonsViewing a skeleton’s hierarchy

Ch

ara

cte

rA

nim

atio

n

You can rapidly build a skeleton for animating a character by continuingjoint chains and creating new joint chains that branch out from existing jointchains.

Viewing a skeleton’s hierarchyTo view an outline of a skeleton’s hierarchy

Select Window→Outliner to view an outline of a skeleton’s hierarchy.

Use the Outliner to see the structure of the skeleton, to select parts of theskeleton, and to see the names of the parts of the skeleton.

Resizing joint displayYou can resize the display of a skeleton’s joints. Increasing the display sizecan make the joints and their bones easier to pick. Decreasing the displaysize can make other objects such as flexors easier to pick.

Here is a skeleton displayed at normal size:

Skeleton at normal size

Here is the same skeleton displayed at 25% of normal size:

Page 40: Maya Tutorial - Character Animation

196 Using Maya: Animation

Building SkeletonsPositioning joints

Skeleton at 25% normal size

To resize joint display:

1 Select Display→Joint Size.

2 Move the pointer to the arrow at the end of the Joint Size line.

3 Choose from the percentages listed to resize the joints, or choose Custom toset your own percentage.

Percentages are relative to the default setting, which is always 100% or 1.00.

Positioning jointsWhile you are creating a joint chain, you can edit the positioning of any jointwithout affecting the joints below it in the joint chain’s action hierarchy.

Note

To edit the position of a joint after the skeleton is created and accepted,toggle on (the Select by Component Type icon) and (the Pivot

icon), then use the right mouse button on the Pivot button to turn on JointPivots in the Pivot pick mask.

Page 41: Maya Tutorial - Character Animation

Using Maya: Animation 197

Building SkeletonsInserting joints

Ch

ara

cte

rA

nim

atio

n

To position a joint as you create it:

1 Hold down the left mouse button to create a joint and drag it to a newposition.

2 Release the mouse button when you’ve positioned the joint at the desiredlocation.

To position the most recently created joint while creating the jointchain:

While in create mode, you can use the middle mouse button to modify themost recent joint (the one currently selected).

The transform manipulator appears and you can move the joint in anydirection.

To position any joint in the hierarchy while creating a joint chain:

1 Press Insert on the keyboard.

The transform manipulator appears at the end joint.

2 Move any joint in the skeleton by selecting and dragging it with the leftmouse button.

3 Press Insert to toggle back to creating more joints for the skeleton. This willreturn you to the last created joint in the chain.

Inserting jointsYou can insert a joint anywhere in a skeleton’s action hierarchy below theroot joint.

To insert a joint in a created skeleton:

1 Select Skeletons→Insert Joint Tool.

2 To position the new joint, use the left mouse button to drag from the jointyou want as the new joint’s parent.Until you press Enter or select anothertool, you can insert more joints.

3 When you have finished inserting joints, press Enter or select another tool.

Page 42: Maya Tutorial - Character Animation

198 Using Maya: Animation

Building SkeletonsRemoving joints

Inserting a joint

Removing jointsYou can remove any joint from a skeleton except the root joint. The root jointis the highest joint in a skeleton’s action hierarchy, and deleting the root jointwould delete the entire skeleton.

To remove a joint:

1 Select the joint you want to remove.

Note that you can only remove one joint at a time.

2 Select Skeletons→Remove Joint.

The joint is removed. The bone of the joint above the removed joint isextended to the joint below the removed joint.

1. Click toadd a jointbelow this one

2. Drag toposition thenew joint

Page 43: Maya Tutorial - Character Animation

Using Maya: Animation 199

Building SkeletonsMirroring limbs or skeletons

Ch

ara

cte

rA

nim

atio

n

Removing a joint

Mirroring limbs or skeletonsA group of one or more connected joint chains is called a limb. You canduplicate or make mirror copies of limbs. A mirror copy is a copy that issymmetrical about a selected plane; in effect, the reflection of the original inthe plane is turned into a real copy of the original, but with all the aspects ofthe limb mirrored accordingly. The origin of the plane is at the parent jointof the limb. Joint attributes and IK handles are mirrored as well as the jointsand their bones.

Mirroring is extremely useful when you are creating the limbs for acharacter. For example, you can build a right arm and hand, and then createa mirrored copy of it for the left arm and hand. Mirroring affects all aspectsof the creation of the left arm, including the joint limits. You don’t have toreset the joint limits so that the left arm’s joint limits will be symmetrical tothe right arm’s joint limits; Maya will do it for you.

You can also make a mirror copy of an entire skeleton. The procedure is thesame as for creating mirror copies of limbs, except that the skeleton will bemirrored about the scene’s world origin.

Click todelete the joint

Bone isresized

Page 44: Maya Tutorial - Character Animation

200 Using Maya: Animation

Building SkeletonsMirroring limbs or skeletons

Mirroring a limb

1. Click here tomirror this limb

2. A mirror copyof the limb iscreated

Page 45: Maya Tutorial - Character Animation

Using Maya: Animation 201

Building SkeletonsMirroring limbs or skeletons

Ch

ara

cte

rA

nim

atio

n

Mirroring a skeleton

To mirror a limb or skeleton:

1 Select the parent joint of the limb you want to duplicate, or select the rootjoint if you want to mirror an entire skeleton.

2 To choose the plane for mirroring, first select Skeletons→Mirror Joint-❐ toopen the Mirror Joint Options window. Next, click the desired MirrorAcross option to choose the plane in which you want the joint chainmirrored.

The default is XY. If you are mirroring a limb, this indicates the XY planewhose origin is at the limb’s parent joint. If you are mirroring a skeleton, thisindicates the XY plane whose origin is the scene’s world origin.

3 Click Mirror in the Mirror Joint Options window, or selectSkeletons→Mirror Joint.

If you are mirroring a limb, the limb is mirrored across the selected planewhose origin is at the limb’s parent joint.

If you are mirroring a skeleton, the skeleton is mirrored across the selectedplane whose origin is the scene’s world origin.

Click the rootto mirror thewhole skeleton

Skeleton ismirrored about theworld origin

Page 46: Maya Tutorial - Character Animation

202 Using Maya: Animation

Building SkeletonsConnecting skeletons

Connecting skeletonsYou can connect two skeletons in two ways: by combining joints and byconnecting joints with a bone.

First, you can connect two skeletons by combining the root joint of oneskeleton with any joint of another skeleton except that skeleton’s root joint.The skeleton that becomes a limb of the other skeleton will change itsposition in the scene so that it is directly connected to the other skeleton’sjoint.

Second, you can connect the root joint of one skeleton to any joint of anotherskeleton by extending a bone to the root joint from the joint of the otherskeleton. The skeleton that becomes a limb of the other skeleton will nothave to move.

To connect skeletons by combining joints:

1 Select the root joint of the skeleton you want to be a limb of anotherskeleton.

2 On the other skeleton, select any joint other than the skeleton’s root joint.

3 Select Skeletons→Connect Joint-❐.

The Connect Joint Options window is displayed.

4 In the Connect Joint Options window, turn on the Connect Joint mode.

The skeleton that will become the limb moves so that its root is in the sameplace as the selected joint of the other skeleton.

5 In the Connect Joint Options window, click Connect. (Alternatively, selectSkeletons→Connect Joint.)

The two skeletons are connected.

Page 47: Maya Tutorial - Character Animation

Using Maya: Animation 203

Building SkeletonsConnecting skeletons

Ch

ara

cte

rA

nim

atio

n

Connecting skeletons by combining joints

To connect skeletons by connecting joints with a bone:

1 Click the root of the skeleton you want to be a limb of another skeleton.

2 On the other skeleton, select any joint other than the skeleton’s root joint.

You can connect only to a non-root joint of the parent skeleton.

3 Select Skeletons→Connect Joint-❐.

The Connect Joint Options window is displayed.

4 In the Connect Joint Options window, turn on the Parent Joint mode.

Parent Joint mode connects the skeletons by creating a new bone betweenthe selected root joint and the joint you’re connecting it to. The two skeletonsdo not move.

5 In the Connect Joint Options window, click Connect. (Alternatively, selectSkeletons→Connect Joint.)

Maya connects the skeletons with a bone.

Note that connecting skeletons using Parent Joint mode is identical to theresult you get by selecting Edit→Parent.

Two joints arecombined

Page 48: Maya Tutorial - Character Animation

204 Using Maya: Animation

Building SkeletonsDisconnecting a joint to make two skeletons

Connecting two skeletons by connecting joints with a bone

Disconnecting a joint to make two skeletonsYou can break up a skeleton into two skeletons by disconnecting any jointother than the root joint. The disconnected joint will become the root joint ofthe new skeleton.

Note that if you disconnect a joint in a joint chain that has an IK handle, thatIK handle will be deleted. For information about IK handles, see Chapter 12,“Posing and Animating Skeletons.”

Bone createdto connect thetwo skeletons

Page 49: Maya Tutorial - Character Animation

Using Maya: Animation 205

Building SkeletonsRerooting the skeleton

Ch

ara

cte

rA

nim

atio

n

Disconnecting a joint

To disconnect a joint to make two skeletons:

1 Select the joint you want to disconnect. This joint will become the root jointof the new skeleton.

2 Select Skeletons→Disconnect Joint.

The joint is disconnected. The disconnected joint is now the root joint of thenew skeleton.

Rerooting the skeletonYou can change the hierarchical organization of a skeleton by changingwhich joint is the root joint. This process is called rerooting.

Note that any IK handles that pass through the joint selected to be the newroot joint will be deleted. Also, any animation of the skeleton’s root joint willbe affected when you reroot.

Select joint youwant todisconnect

Page 50: Maya Tutorial - Character Animation

206 Using Maya: Animation

Building SkeletonsSetting joint creation options

Rerooting a skeleton

To reroot a skeleton:

1 Click the joint where you want the new root.

If you select the child of the entire joint chain, the hierarchy will reverse.

If you select a joint in the middle of the skeleton to become the new root, youwill have two child joints with separate hierarchies below the root joint.

2 Select Skeletons→Reroot Skeleton.

Setting joint creation optionsA joint’s various options and attributes define how a joint can be posed andanimated. Specifying these is an important part of building a skeleton. Youcan set joint creation options before you create individual joints, or you canedit a joint’s attributes at any time after you have created it.

This section describes how to set joint attributes automatically by setting theJoint Tool’s Tool Settings. To find out how to edit joint attributes, see“Editing joint attributes” on page 211.

Setting joint attributes during joint creation includes:

Current rootjoint

Click tocreate newroot joint

Page 51: Maya Tutorial - Character Animation

Using Maya: Animation 207

Building SkeletonsSetting joint creation options

Ch

ara

cte

rA

nim

atio

n

• Viewing joint creation options

• Setting degrees of freedom

• Setting automatic joint orientation

• Setting scale compensation

• Setting automatic joint limits

• Setting automatic creation of IK handles

• Setting IK handle options automatically

Viewing joint creation optionsWhen you create a joint, you use the Joint Tool. You can set the Joint Tool’soptions so that certain joint options and attributes will be set automatically.The Joint Tool’s options are displayed in the Joint Tool’s Tool Settingswindow.

Tool Settings window

To view joint creation options:

Select Skeletons→Joint Tool-❐.

The Joint Tool’s Tool Settings window is displayed.

Page 52: Maya Tutorial - Character Animation

208 Using Maya: Animation

Building SkeletonsSetting joint creation options

Setting degrees of freedomEach joint has a local axis whose origin is at the center of the joint. The X-axisof the local axis is red, the Y-axis is green, and the Z-axis is blue. How a jointcan rotate is defined in terms of this local axis.

A joint’s degrees of freedom specifies which of its local axes it can rotateabout during IK posing and animation.During IK, a joint is rotated by an IKhandle, and how the IK handle performs depends on the type of IK solverthe IK handle is using.

A joint can have at most three degrees of freedom: the freedom to rotateabout its X-axis, Y-axis, and Z-axis during IK. Expert users often call a jointwith three degrees of freedom a ball joint because it can rotate about all threeof its axes like a ball.

Note that two types of IK solvers, the single chain solver and the planesolver, require that their start joints be ball joints that have no limitations onthe extent they can rotate about each axis.

You can limit a joint so that it has only two degrees of freedom or only onedegree of freedom. A joint with two degrees of freedom can only rotateabout any two of its local axes during IK. A human wrist would be a goodexample of a joint with two degrees of freedom, though the joint haslimitations on the extent it can rotate about its axes. A joint with only onedegree of freedom can rotate only about its local X-axis, or Y-axis, or Z-axisduring IK. Expert users often call a joint with only one degree of freedom ahinge joint. A human knee would be a good example of a hinge joint.

To set degrees of freedom:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, click the X, Y, and Z, Degrees of Freedomcheck boxes to select the joint’s degrees of freedom.

Setting automatic joint orientationMaya can set the orientation of a joint’s local axis automatically. You canhave the joint’s local axis oriented relative to the joint’s first child joint, oryou can have the joint’s local axis oriented relative to the scene’s world axis.The orientation of a joint’s local axis is largely a matter of personal

Page 53: Maya Tutorial - Character Animation

Using Maya: Animation 209

Building SkeletonsSetting joint creation options

Ch

ara

cte

rA

nim

atio

n

preference. Some expert users like to have the local axis of jointsautomatically orient towards first child joints, and other expert users preferto have the local axis initially oriented the same as the scene’s world axis.

By default, the orientation of a joint’s local axis is xyz. In this orientation, thepositive X-axis points in the same direction as the joint’s wedge-shapedbone. That is, the X-axis points towards the center of the joint’s child joint. Ifthe joint has more than one child joint, the X-axis points at the child joint thatwas created first. The Z-axis points sideways from the joint and its boneconnecting the child joint, and the Y-axis points at right angles to the X-axisand Z-axis. All three axes are aligned according to the right hand rule.

For example, in a human skeleton the elbow joint’s X-axis would be pointingtowards the wrist joint. With the arm lying flat, the elbow joint could twistabout most of the X-axis, turning the rest of the arm. The elbow joint couldpartially swing up and down about the Z-axis, but it would not be able topivot about the Y-axis.

You can select various combinations of the X-, Y-, and Z-axes to specify theorientation of a joint’s local axis. The first axis in the combination is the axisthat points at the joint’s first child joint. The third axis points sideways fromthe joint and its bone connecting the child joint, and the second axis points atright angles to the first axis and third axis. All three axes are alignedaccording to the right hand rule. In terms of yaw, pitch, and roll, rotationabout the first axis produces roll, rotation about the second axis producesyaw, and rotation about the third axis produces pitch.

Instead of orienting the joint’s local axis relative to the first child joint, youcan set the local axis to have the same orientation as the scene’s world axis.In this case, the orientation would be set to “none.”

To set automatic joint orientation:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, select one of the Auto Joint Orient options.

Note that None orients the joint to the scene’s world axis.

Page 54: Maya Tutorial - Character Animation

210 Using Maya: Animation

Building SkeletonsSetting joint creation options

Setting scale compensationWhen you scale the size of a joint, you can either scale the child joints also orprevent the scaling of the child joints. For example, if you increase the lengthof a lower arm bone by scaling the elbow joint, the wrist joint and its bonescan either increase in size also or stay the same size. Either you can scale thehand as well as the lower arm or you can just scale the lower arm.

Normally, when you scale a joint Maya will scale everything below it in theskeleton’s action hierarchy. However, by setting a joint’s Scale Compensateoption on, you can prevent that joint and everything below it in the actionhierarchy from being scaled when the joint’s parent joint is scaled.

Additionally, expert users like to have Scale Compensate on to preventinappropriate shearing deformation effects on a character’s skin. Shearingcan occur when a given joint is scaled only along one or two of its axes.

To set scale compensation:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, click the Scale Compensate check box on oroff.

Setting automatic joint limitsYou can have Maya automatically limit the extent a joint can rotate about itsaxes according to the angles at which you build the skeleton’s joints. WithAuto Joint Limits on, the smaller inner angle of a joint rounded off to 180degrees is set as the allowable range of rotation. For example, when you arecreating a knee joint, if you create the joint slightly bent back, the joint willautomatically not be able to swing the lower leg bone forward of the upperleg bone, nor will it be able to wobble from side to side. The joint will not beable to rotate in any other way except through the inner angle rounded off to180 degrees. However, note that this limitation does not change the joint’sDegrees of Freedom setting.

To set automatic joint limits:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, click the Auto Joint Limits check box on or off.

Page 55: Maya Tutorial - Character Animation

Using Maya: Animation 211

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Setting automatic creation of IK handlesMaya can automatically create an IK handle for you when you finishcreating a joint chain. The joint chain’s parent joint will become the IKhandle’s start joint, and the last joint in the joint chain will become the IKhandle’s end joint.

To set automatic creation of IK handles:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, click the Create IK Handle check box on or off.

Setting IK handle options automaticallySee Chapter 12, “Posing and Animating Skeletons,” for descriptions of the IKhandle options you can set when you create IK handles.

To set joint attributes:

1 Select Skeletons→Joint Tool-❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, select IK Handle Options.

Editing joint attributesA joint’s attributes can be set automatically when you create the joint, or youcan edit a joint’s attributes at any time. This section describes how to editjoint attributes with the Attribute Editor. For more information on using theAttribute Editor, please see Using Maya: Maya Basics, Building Objects andScenes, Chapter 5, “Working with General Editors.”

To find out how to set joint attributes automatically, see “Setting jointcreation options” on page 206.

Editing a joint includes:

• Viewing editable joint attributes

• Renaming a joint

• Editing degrees of freedom

Page 56: Maya Tutorial - Character Animation

212 Using Maya: Animation

Building SkeletonsEditing joint attributes

• Editing stiffness

• Editing a joint’s preferred angle

• Editing joint orientation

• Editing scale compensation

• Editing joint limits

• Dampening rotation near joint limits

You can access settings for a joint’s attributes, and also the Attribute Editor,by pressing the right mouse button while the cursor is on the joint you wantto edit.

Viewing editable joint attributesTo view or edit a joint’s attributes, use the Attribute Editor.

Page 57: Maya Tutorial - Character Animation

Using Maya: Animation 213

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Attribute Editor for joints

Page 58: Maya Tutorial - Character Animation

214 Using Maya: Animation

Building SkeletonsEditing joint attributes

To view editable joint attributes:

Choose Window→Attribute Editor to open the Attribute Editor.

The Attribute Editor is displayed.

Renaming a jointMaya names joints for you when you create them. By default, joints arenumbered consecutively as you create them. However, you can rename thejoints to better reflect their purpose in your character’s skeleton. It’s a goodidea to give joints meaningful names so they are easier to select when youare working with Maya’s editors, using the Hypergraph, or using theOutliner.

To rename a joint:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Enter the new name in the joint: field.

The new name takes effect immediately.

Page 59: Maya Tutorial - Character Animation

Using Maya: Animation 215

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Examples of meaningful joint names in the Outliner

Page 60: Maya Tutorial - Character Animation

216 Using Maya: Animation

Building SkeletonsEditing joint attributes

Editing degrees of freedomEach joint has a local axis whose origin is at the center of the joint. The X-axisof the local axis is red, the Y-axis is green, and the Z-axis is blue. How a jointcan rotate is defined in terms of this local axis.

A joint’s degrees of freedom specifies which of its local axes it can rotateabout during inverse kinematics (IK) posing and animation. During IK, ajoint is rotated by an IK handle, and how the IK handle performs dependson the type of IK solver the IK handle is using.

A joint can have at most three degrees of freedom: the freedom to rotateabout its X-axis, Y-axis, and Z-axis during IK. Expert users often call a jointwith three degrees of freedom a ball joint because it can rotate about all threeof its axes like a ball.

Note that two types of IK solvers, the single chain solver and the planesolver, require that their start joints be ball joints that have no limitations onthe extent they can rotate about each axis.

You can limit a joint so that it has only two degrees of freedom, or only onedegree of freedom. A joint with two degrees of freedom can only rotateabout any two of its local axes during IK. A human wrist would be a goodexample of a joint with two degrees of freedom, though the joint haslimitations on the extent it can rotate about its axes. A joint with only onedegree of freedom can rotate only about its local X-axis, or Y-axis, or Z-axisduring IK. Expert users often call a joint with only one degree of freedom ahinge joint. A human knee would be a good example of a hinge joint.

Note that you can have a joint’s degrees of freedom set automatically whenyou create the joint. To find out how to set a joint’s degrees of freedomautomatically, see “Setting degrees of freedom” on page 208.

To edit a joint’s degrees of freedom:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 In the Attribute Editor, click the X, Y, and Z Degrees of Freedom checkboxes to select the joint’s degrees of freedom.

Page 61: Maya Tutorial - Character Animation

Using Maya: Animation 217

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Editing a joint’s preferred angleThis attribute influences how an IK handle will prefer to rotate a joint duringinverse kinematics. If you are not familiar with inverse kinematics (IK), IKhandles, and IK solvers, see Chapter 12, “Posing and Animating Skeletons.”

The IK solver often can rotate a joint in a number of different ways in orderto reach the goal. Similarly, when more than one IK handle passes through ajoint, the first priority of all the IK solvers is to make all the IK handles reachtheir goals. Often a variety of joint rotations can allow the IK handles toreach their goals.

Depending on how you want your character to move, some rotations aremore appropriate than others. You can identify preferred angles for yourcharacter’s actions. Two types of IK solvers, the single chain IK solver andthe rotate plane IK solver, will then give those angles priority over otherpossible angles during joint rotation. The angles you give priority to arecalled preferred angles.

Preferred angles can enable smoother motion during animation.

To edit a joint’s preferred angle:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Use the Preferred Angle fields to set the angle you prefer the joint to be in.

The three values refer to the X, Y, and Z axes respectively. The angles arerelative to the local coordinate system of the joint.

Editing stiffnessThis attribute influences how stiffly an IK handle can rotate a joint duringinverse kinematics. If you are not familiar with inverse kinematics (IK), IKhandles, and IK solvers, see Chapter 12, “Posing and Animating Skeletons.”

When you use inverse kinematics to move a joint chain for animation, youcan set some joints to move less freely than others. You can set joints in themid-back of a human to move and bend less freely than those in the lowerback, for example. The resistance to movement of a particular joint is calledits stiffness.

Page 62: Maya Tutorial - Character Animation

218 Using Maya: Animation

Building SkeletonsEditing joint attributes

Stiffness operates relatively between joints in a joint chain controlled by IKhandles. IK solver calculations for stiffness can require a little more timethan usually required, so use stiffness only when its effect is particularlyimportant.

You set the stiffness for each axis separately. You can use this for joints thatmove in several directions. For example, a wrist joint moves more freelybending toward the forearm than it does from side to side.

Set stiffness to create realistic animation

Expert users have found that when stiffness is specified, the solver adjuststhe internal energy strictly under the constraint that the end effectors stayfixed. Therefore, if there are no redundant degrees of freedom, the stiffnesswon’t modify the single chain IK solver’s solution.

To edit a joint’s stiffness

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 In the Stiffness fields, enter values from 0 to 100.0 for the X-, Y-, and Z-axes.

The X-, Y-, and Z-axes are in the local coordinate system. 0 means the jointmoves freely, 50 is moderately stiff, and 100 fuses the joint so that it’simmovable.

With stiffness set to 0, no stiffness is specified. This is the recommendedsetting unless creating the effect of stiffness is particularly important.

Set stiffnesshigh in Z-axis Set stiffness

low in X-axis

Page 63: Maya Tutorial - Character Animation

Using Maya: Animation 219

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Editing joint orientationYou can edit the orientation of a joint’s local axis. You can have the joint’slocal axis oriented relative to the joint’s first child joint, or you can have thejoint’s local axis oriented relative to the scene’s world axis. The orientation ofa joint’s local axis is largely a matter of personal preference. Some expertusers like to have the local axis of joints automatically orient towards firstchild joints, and other expert users prefer to have the local axis initiallyoriented the same as the scene’s world axis.

By default, the orientation of a joint’s local axis is xyz. In this orientation, thepositive X-axis points in the same direction as the joint’s wedge-shapedbone. That is, the X-axis points towards the center of the joint’s child joint. Ifthe joint has more than one child joint, the X-axis points at the child joint thatwas created first. The Z-axis points sideways from the joint and its boneconnecting the child joint, and the Y-axis points at right angles to the X-axisand Z-axis. All three axes are aligned according to the right hand rule.

For example, in a human skeleton the elbow joint’s X-axis would be pointingtowards the wrist joint. With the arm lying flat, the elbow joint could twistabout most of the X-axis, turning the rest of the arm. The elbow joint couldpartially swing up and down about the Z-axis, but it would not be able topivot about the Y-axis.

You can select various combinations of the X-, Y-, and Z-axes to specify theorientation of a joint’s local axis. The first axis in the combination is the axisthat points at the joint’s first child joint. The third axis points sideways fromthe joint and its bone connecting the child joint, and the second axis points atright angles to the first axis and third axis. All three axes are alignedaccording to the right hand rule. In terms of yaw, pitch, and roll, rotationabout the first axis produces roll, rotation about the second axis producesyaw, and rotation about the third axis produces pitch.

Instead of orienting the joint’s local axis relative to the first child joint, youcan set the local axis to have the same orientation as the scene’s world axis.In this case, the orientation would be set to “none.”

To edit a joint’s orientation:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Enter new values in the Joint Orient fields.

The three values refer to the X-, Y-, and Z-axes respectively.

Page 64: Maya Tutorial - Character Animation

220 Using Maya: Animation

Building SkeletonsEditing joint attributes

Editing scale compensationWhen you scale the size of a joint, you can either scale the child joints also orprevent the scaling of the child joints. For example, if you increase the lengthof a lower arm bone by scaling the elbow joint, the wrist joint and its bonescan either increase in size also or stay the same size. Either you can scale thehand as well as the lower arm or you can just scale the lower arm.

Normally, when you scale a joint Maya will scale everything below it in theskeleton’s action hierarchy. However, by setting a joint’s Scale Compensateoption on, you can prevent that joint and everything below it in the actionhierarchy from being scaled when the joint’s parent joint is scaled.

Additionally, expert users like to have Scale Compensate on to preventinappropriate shearing deformation effects on a character’s skin. Shearingcan occur when a given joint is scaled only along one or two of its axes.

To edit a joint’s scale compensation:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Toggle Segment Scale Compensate.

Turn on Segment Scale Compensate so that this joint will compensate forscale factors applied to its parent. If the parent is scaled, this joint’stranslation values will be scaled but the scale will not apply to any of thisjoint’s children.

Editing joint limitsYou can restrict a joint to a certain range of motion so that it cannot rotatebeyond the angles you set as limits. You set these limits in the LimitInformation panel of the Attribute Editor for joints.

Expert users have found that it is best to not set joint minimum andmaximum limits extremely close (±5 degrees or less). These restrictive limitscan sometimes cause joints to get stuck during rotation.

To edit joint limits:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

Page 65: Maya Tutorial - Character Animation

Using Maya: Animation 221

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

3 Toggle on the boxes by the Min and Max limits of any value you want tochange.

For example, to set minimum and maximum limits for rotation in X, click theboxes to the left and right of Rot Limit X.

4 In the Limit X, Y, and Z fields under Translate, Rotate, and Scale, enter theangles between which you want to limit the joint’s motion.

Page 66: Maya Tutorial - Character Animation

222 Using Maya: Animation

Building SkeletonsEditing joint attributes

Restricting joint rotation with the Limits attributes

Range ofmotion ifthe Z-axisrotationlimits areset to -15,45

Range ofmotion ifthe X-axisrotationlimits areset to -45,90

Page 67: Maya Tutorial - Character Animation

Using Maya: Animation 223

Building SkeletonsEditing joint attributes

Ch

ara

cte

rA

nim

atio

n

Dampening rotation near joint limitsFor most living creatures, when a joint rotates as far as it can, it tends to slowdown or “dampen” before reaching its limit. For example, an elbow does notsnap straight, but gradually slows down as the lower arm aligns with theupper arm. In animation terminology, the effect is that of an “ease-in.”

Joint dampening applies resistance to a joint as it approaches its joint limits.Instead of the joint abruptly stopping when it reaches its limits, you can usedamping to slow it down smoothly. Depending on the strength and rangeyou set, a joint with dampening will not reach its limit boundary, unlessforced.

The dampening factor for joints affects only the solution computed by an IKsolver; it does not affect joints that are animated by other means.

Two settings in the Attribute Editor control a joint’s dampening: DampRange and Damp Strength.

• Minimum and Maximum Rotate Damp Range set the number of degreesinside the joint limits at which resistance begins to occur.

• Minimum and Maximum Rotate Damp Strength set the amount ofresistance in the damp range.

Page 68: Maya Tutorial - Character Animation

224 Using Maya: Animation

Building SkeletonsEditing joint attributes

Damping the limits of a right wrist joint in the Z-axis

To dampen rotation near joint limits:

1 Select the joint.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Use the Min and Max Rotate Damp Range and Rotate Damp Strengthfields to set the joint dampening attributes.

The Rotate Damp Range values let you set the angles inside the minimumand maximum joint limits.

The Rotate Damp Strength of the resistance can range from 0, which takesthe joint all the way to its limit with no resistance, to 100, which stops thejoint at the outer edge of the damp range.

The values are relative within the IK handle’s joint chain.

Maximumdamp range

Minimumdamp range

Maximum Z-axis jointlimit (45)

Maximum dampstrength affectsthis area

Maximum dampstrength affectsthis area

Minimum Z-axis jointlimit (-15)

Page 69: Maya Tutorial - Character Animation

Using Maya: Animation 225

Ch

ara

cte

rA

nim

atio

n

12 Posing and AnimatingSkeletons

After you’ve created a skeleton for your character, you skin the skeleton bybinding the geometry to the skeleton. You can then create flexors for furtherskin deformation effects. Animating the character includes animating theskeleton and animating the effects provided by the flexors.

This chapter describes posing and animating skeletons. Posing andanimating skeletons includes the following:

• “Understanding posing and animating skeletons” on page 226

• “Creating IK handles” on page 238

• “Setting IK handle creation options” on page 241

• “Editing IK handle attributes” on page 246

• “Editing IK solvers” on page 253

• “Using IK systems” on page 254

• “Posing IK chains” on page 256

Page 70: Maya Tutorial - Character Animation

226 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

• “Using IK spline handles” on page 259

• “Animating IK chains” on page 280

Understanding posing and animatingskeletons

When you pose and animate a skeleton, you are specifying the skeleton’smotion. The term for the specification of motion is kinematics. Posing andanimating skeletons involves two types of kinematics: forward kinematicsand inverse kinematics. Although the terms sound complicated, what theyrefer to is easy to understand. Forward kinematics is ideal for creatingdetailed arc motions because it requires the direct specification of each jointrotation. Inverse kinematics is ideal for creating goal-directed motionbecause it only requires the specification of a position and orientation thatthe joints in a joint chain will rotate to reach.

Forward kinematicsIn forward kinematics, when you pose a joint chain you rotate each jointindividually. For example, if you want a joint chain to reach for a particularlocation in space, you have to rotate each joint individually so that the jointchain can reach the location. To do this, you would rotate the joint chain’sparent joint, then the next joint, and so on down the joint chain. When youanimate a skeleton posed with forward kinematics, Maya interpolates thejoint rotations starting with the root joint, then the root’s child joints, and soon down through the skeleton’s action hierarchy. Maya proceeds “forward”through the action hierarchy, starting at the root joint.

Posing and animating skeletons with forward kinematics is an excellentapproach for specifying detailed arc motions, but it can take a fair amount oftime if you are animating a large, complicated skeleton. Also, forwardkinematics is often not very intuitive for specifying goal-directed motion.When you think about moving your hand to some location in space, youdon’t normally think about how you are going to rotate all the joints in yourarm.

The following sequence of five images illustrates the steps required toextend a W-shaped joint chain with forward kinematics posing.

Page 71: Maya Tutorial - Character Animation

Using Maya: Animation 227

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

Forward kinematics posing: joint chain’s root joint selected

Forward kinematics posing: root joint rotation

Forward kinematics posing: subsequent joint rotation

Page 72: Maya Tutorial - Character Animation

228 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Forward kinematics posing: subsequent joint rotation

Forward kinematics posing: joint chain extended

Posing and animating with forward kinematicsTo pose a skeleton with forward kinematics, you move, rotate, or scale jointsdirectly. You can do this in the same way that you move, rotate, or scaleother objects in Maya. For example, you can use the move, rotate, and scaletransform tools in the minibar. Alternatively, you could move, rotate, andscale joints by using the Channel Box.

To animate a skeleton with forward kinematics, you can save keys inselected frames as described in Using Maya: Animation, Keyframe. If youwould like to use motion capture data to drive the character animation, seeUsing Maya: Animation, Motion Capture.

This chapter focuses on posing and animating with Maya’s inversekinematics tools.

Page 73: Maya Tutorial - Character Animation

Using Maya: Animation 229

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

Inverse kinematics (IK)In inverse kinematics (IK), you can pose a joint chain based on a location inspace you want the joint chain to reach. Inverse kinematics is more intuitivefor goal-directed motion than forward kinematics because you can focus onthe goal you want a joint chain to reach without worrying about how eachjoint will have to rotate. However, unlike forward kinematics, inversekinematics requires that you use special tools for posing and animating.These tools are called IK handles and IK solvers.

An IK handle is like a wire that can run through a joint chain, providing away for you to pose the entire joint chain in one action. As you pose andanimate the joint chain with the IK handle, the IK handle automaticallyfigures out how to rotate all the joints in the joint chain by using its IKsolver.

The IK solver is the motor intelligence behind the IK handle. For example, ifyou want a joint chain to reach a particular location in space, you can movethe entire chain by using the IK handle that runs through the chain. Givenwhere you want the joint chain to reach, the IK solver figures out how torotate all the joints in the joint chain for you by means of Maya’s inversekinematics methods.

The following sequence of two images illustrates the steps required toextend a W-shaped joint chain with inverse kinematics posing.

Inverse kinematics posing: IK handle selected

Page 74: Maya Tutorial - Character Animation

230 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Inverse kinematics posing: joint chain extended

Posing and animating with inverse kinematics (IK)To pose and animate joint chains with inverse kinematics, you use IKhandles. The motor intelligence of an IK handle is provided by an IK solver.

IK handles and IK chainsAn IK handle runs through a selected joint chain like a wire, providing youwith a way to move the entire joint chain. The joint the IK handle starts at iscalled the start joint. The last joint in the joint chain controlled by the IKhandle is called the end joint. The start joint could be the skeleton’s root joint,or any joint in the skeleton’s action hierarchy above the end joint. The IKhandle can pose all the joints in the chain, from the start joint to the endjoint. A joint chain that has an IK handle is called an IK chain. IK chains areeasy to use. However, some background on how they work can help you getthe most out of posing and animating with inverse kinematics.

The end of the IK handle, which is located at the end joint by default, iscalled the end effector. The reason the end of the IK handle is called the “endeffector” is because it helps to bring about how the IK handle rotates thejoints in the joint chain so that the end of the chain can reach some locationin space. By telling the IK handle’s IK solver where the end of the IK handleis, the end effector provides information the IK solver needs to figure outhow to rotate all the joints for you.

Page 75: Maya Tutorial - Character Animation

Using Maya: Animation 231

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

When you are posing and animating an IK chain, you also need to tell the IKsolver the position and orientation in space where you would like the endeffector to move to next. That information is provided by the IK handle’sgoal. When you interactively pose an IK chain, what you are really doing ismoving the IK handle’s goal. The IK solver looks at where the goal is, looksat where the end effector is, and figures out how to rotate all the joints in theIK chain to get the end effector to be where the goal is.

A skeleton can have as many IK handles as you think you need for posingand animating its joint chains. However, be sure you are happy with whichjoint is the skeleton’s root joint before you begin creating IK handles. Theskeleton’s root must not be between an IK chain’s start joint and end joint.You cannot create an IK chain that includes the root joint unless that joint isthe start joint. Also, if you change which joint is the root joint, you willinvalidate IK chains that include the new root joint unless the joint is thestart joint of an IK chain.

IK solversIK solvers provide the motor intelligence of IK handles. IK solvers figure outhow to rotate all the joints in a joint chain controlled by an IK handle. Mayaoffers four types of solvers:

• Single chain (SC) solver

• Rotate plane (RP) solver

• Spline solver

• Multi-chain (MC) solver

Single chain (SC) solverThe single chain (SC) solver is ideal for posing and animating the IK chainsfor a character’s limbs, such as arms and legs. The single chain solverprovides a straightforward mechanism for posing and animating a chainanywhere the joint chain can reach in the scene’s world space. The jointchain will tend to stay within the plane that best includes all the joint chain’sjoints.

An IK handle using a single chain is displayed as follows:

Page 76: Maya Tutorial - Character Animation

232 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

IK handle using single chain solver

Start jointThe start joint is where the IK handle begins. The start joint is the first jointin the joint chain that is influenced by the IK handle. The start joint could bethe skeleton’s root joint or any other joint in the skeleton’s action hierarchyabove the end joint.

End jointThe end joint is the last joint in the joint chain controlled by the IK handle.The end joint must be below the start joint in the skeleton’s action hierarchy.

Handle wireThe handle wire is the line that runs through all the joints and bones in ajoint chain controlled by the IK handle.The handle wire begins at the startjoint’s local axis and by default ends at the end joint’s local axis.

End effectorThe end effector is the end of the IK handle. By default, the end effector islocated at the end joint’s local axis. However, the end effector can be offsetfrom the end joint. The end effector does not move from its location at theend joint (or at some offset from the end joint) during posing and animating.Also, note that the end effector is parented to the parent joint of the endjoint, not to the end joint.

Start joint End joint Goal

End effector

Handlevector

Handle wire

Page 77: Maya Tutorial - Character Animation

Using Maya: Animation 233

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

GoalThe goal indicates where you want an IK handle’s end effector to be. Thegoal, which is indicated by an axis, rests at the IK handle’s end effector.During posing, you can move the goal to any location in the scene’s worldspace. The IK handle’s end effector tries to keep up with the goal at all times.The IK handle’s single chain (SC) solver figures out how the end effector canhave the same position and orientation as the goal’s position and orientation.The single chain (SC) solver figures out how to rotate the joint chain’s jointsso that the end effector can reach the goal. However, depending on therotational limits and fully extended length of the joint chain, the end effectormight not be able to reach the goal’s current position and orientation.

Handle vectorThe handle vector is the line drawn from the start joint to the IK handle’send effector. The end effector is normally located at the IK chain’s end joint.The purpose of the handle vector is to indicate at which joints the IK handlestarts and ends. Because of the handle vector’s similarity to what somesystems call a limb axis, some expert users refer to the handle vector as thelimb axis.

Single chain solver behaviorThe single chain solver first looks at the position (the translate X, Y, and Zattributes) and orientation (the rotate X, Y, and Z attributes) of the goal.Next, the solver figures out how to move the position and orientation of theend effector as close to the goal’s position and orientation as possible. To dothat, the solver figures out how to best rotate the joints in the IK handle’sjoint chain.

Expert users have found that single chain solver IK chains that consist ofbetween two and four joints are the easiest to pose. Extremely long IK chainscan become awkward to pose and animate.

Note that the joint chain controlled by an IK handle using a single chainsolver cannot have any other IK handles running through any of its joints.

Rotate plane (RP) solverLike the single chain (SC) solver, the rotate plane (RP) solver is ideal forposing IK chains for a character’s limbs such as arms and legs. However, therotate plane solver offers more manipulator tools for posing the chain thandoes the single chain solver. Also, the rotate plane solver is ideal for IK

Page 78: Maya Tutorial - Character Animation

234 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

chains that you would like to stay in more or less the same plane, eventhough that plane can rotate. For example, the shoulder, elbow, and wristjoints of an arm all stay within the same plane, but that plane rotates as theshoulder joint rotates.

An IK handle using a rotate plane solver is displayed as follows:

IK handle using rotate plane solver

Start jointThe start joint is where the IK handle begins. The start joint is the first jointin the joint chain that is influenced by the IK handle.The start joint could bethe skeleton’s root joint, or any other joint in the skeleton’s action hierarchyabove the end joint.

End jointThe end joint is the last joint in the joint chain controlled by the IKhandle.The end joint must be below the start joint in the skeleton’s actionhierarchy.

Handle wireThe handle wire is the line that runs through all the joints and bones in ajoint chain controlled by the IK handle. The handle wire begins at the startjoint’s local axis and by default ends at the end joint’s local axis.

End joint

Planeindicator Goal

Twist disc

Handle vector

Pole vector

Rotate disc

Pole vectoraxis

Start joint

Handle wire

Page 79: Maya Tutorial - Character Animation

Using Maya: Animation 235

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

End effectorThe end effector is the end of the IK handle. By default, the end effector islocated at the end joint’s local axis. However, the end effector can be offsetfrom the end joint. The end effector does not move from its location at theend joint (or at some offset from the end joint) during posing and animating.Also, note that the end effector is parented to the parent joint of the endjoint, not to the end joint. You can use the Hypergraph to view therelationships between the end effector and the joints in the joint chain.

GoalThe goal indicates where you want an IK handle’s end effector to be. Thegoal, which is indicated by an axis, rests at the IK handle’s end effector.During posing, you can move the goal to any location in the scene’s worldspace. The IK handle’s end effector tries to keep up with the goal at all times.The IK handle’s rotate plane (RP) solver figures out how the end effector canhave the same position as the goal’s position. The rotate plane (RP) solverfigures out how to rotate the joint chain’s joints so that the end effector canreach the goal. However, depending on the rotational limits and fullyextended length of the joint chain, the end effector might not be able to reachthe goal’s current location.

Handle vectorThe handle vector is the line drawn from the start joint to the IK handle’send effector. The end effector is normally located at the IK chain’s end joint.Because of the handle vector’s similarity to what some systems call a limbaxis, some expert users refer to the handle vector as the limb axis.

Joint chain planeThe joint chain plane is the plane that would best contain all the joints in thejoint chain. By always containing the joints in the joint chain, the joint chainplane controls how the joint chain can twist. The joint chain plane is notdisplayed because you can infer it from where the joint chain’s joints arelocated. However, the joint chain plane’s orientation is indicated by theplane indicator displayed in the rotation disc. The joint chain plane canrotate about the handle vector. Rotating the joint chain plane about thehandle vector has the effect of twisting the joint chain. (The degree of twist ismeasured relative to the reference plane, which is the plane defined by thehandle vector and the pole vector.)

Page 80: Maya Tutorial - Character Animation

236 Using Maya: Animation

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Rotation discThe rotation disc is located at the start joint. The rotation disc indicates howthe joint chain plane can rotate, which twists the joint chain. An indicator inthe rotation disc, called the plane indicator, shows the orientation of the jointchain plane.

Twist discThe twist disc is located at the end joint. You can use the twist disc as a toolto twist the joint chain by rotating the joint chain plane.

Plane indicatorThe plane indicator indicates the orientation of the joint chain plane, whichis the degree of twist in the joint chain relative to the reference plane. Theplane indicator can be thought of as the reflection of the joint chain plane inthe rotation disc.

Reference planeFor the joint chain plane to rotate and twist the joint chain, the plane mustrotate relative to some other plane so that the degree of twist can bemeasured. The plane that the joint chain plane rotates relative to is thereference plane. The difference between the two planes indicates the amountthe joint chain twists. The reference plane is defined by the handle vectorand the pole vector.

Pole vectorLike the handle vector, the pole vector starts at the start joint. Unlike thehandle vector, which always ends at its IK handle’s end effector, the polevector can end anywhere you want it to end. The purpose of the pole vectoris to help define the reference plane. During posing, you can sometimesmove the end effector through the reference plane, which moves the handlevector through the reference plane. When that happens, the handle vectorand pole vector can appear to cross as the joint chain suddenly flips becausethe degree of twist suddenly changes by 180 degrees. Because the referenceplane is defined by the handle vector and the pole vector, you can preventthe flipping effect by simply moving the end of the pole vector to redefinethe reference plane.

Page 81: Maya Tutorial - Character Animation

Using Maya: Animation 237

Posing and Animating SkeletonsUnderstanding posing and animating skeletons

Ch

ara

cte

rA

nim

atio

n

Rotate plane solver behaviorThe rotate plane solver first looks at the position (the translate x, y, and zattributes) of the goal. Next, the solver figures out how to move the positionof the end effector as close to the goal’s position as possible. To do that, thesolver figures out how to best rotate the joints in the IK handle’s joint chain.Unlike the single chain solver, the rotate plane solver does not look at theorientation (the rotate x, y, and z attributes) of the goal. That is, the rotateplane solver figures out how to rotate the joints based on the goal’s position,but not on the goal’s orientation. The orientation of the entire joint chain canbe controlled by twisting the joint chain with the twist disc. However, unlikethe single chain solver, you cannot rotate the joint chain by rotating the IKhandle’s goal.

Expert users have found that rotate plane solver IK chains that consist ofbetween two and four joints are the easiest to pose. Extremely long IK chainscan become awkward to pose and animate.

Note that the joint chain controlled by an IK handle using a rotate planesolver cannot have any other IK handles running through any of its joints.

Spline solverThe IK spline solver lets you manipulate a long, flexible joint chain thatconforms to the shape of a curve. This solver is useful for animating themotion of tails, spines, tentacles, snakes, long necks, and similar objects.

Expert users have found that spline solver IK chains that include ten or morejoints with relatively short bones are ideal.

For information on using IK handles with the spline solver, please see“Using IK spline handles” on page 259.

Multi-chain (MC) solverThe multi-chain (MC) solver is ideal for IK chains that can be posed andanimated by more than one IK handle. In such a case, each IK handle shoulduse the multi-chain solver.

For information on using the multi-chain (MC) solver, please see “Activatingthe multi-chain (MC) solver” on page 243.

Page 82: Maya Tutorial - Character Animation

238 Using Maya: Animation

Posing and Animating SkeletonsCreating IK handles

Creating IK handlesIK handles are tools that help you pose and animate joint chains with inversekinematics. You can create an IK handle for almost any joint chain. A jointchain that has an IK handle is called an IK chain.

In any IK chain, the joint where the IK handle starts should be closer to theskeleton’s root joint than the joint where the IK handle ends. Also, an IKchain should not include the root joint unless the root joint is the start joint.

You use the IK Handle Tool to create IK handles. You can set certain IKHandle attributes during IK handle creation from the IK Handle Tool’s ToolSettings window. After you create the IK handles, you can edit IK handleattributes by using the Attributes Editor. Note that you can also use MayaEmbedded Language (MEL) commands to create and edit IK handles. Someexpert users like to define hotkeys based on MEL commands for quicklycreating customized joint chains and IK handles.

During inverse kinematics posing and animating, the rotations of all thejoints in the IK chain are calculated, or “solved,” by an IK solver. Note thatIK handles using the single chain (SC), rotate plane (RP), and spline solversrequire that the joint chains they control be solved only by them. Forexample, two IK handles using one of the single chain (SC), rotate plane(RP), or spline solvers cannot overlap, allowing both to solve some of thesame joints.

Expert users have found that IK chains that consist of between two and fourjoints are the easiest to pose and animate. Extremely long IK chains canbecome awkward.

In creating IK handles, you can add IK handles to existing joint chains, oryou can create IK chains (joint chains with IK handles).

Adding an IK handleYou can create an IK handle for any joint chain.

To create an IK handle:

1 Select Skeletons→IK Handle Tool.

2 To change the tool options, select Skeletons→IK Handle Tool-❐ to open theIK Handle Tool Options window.

See “Editing IK handle attributes” on page 246 for a description of the IKHandle Tool options.

Page 83: Maya Tutorial - Character Animation

Using Maya: Animation 239

Posing and Animating SkeletonsCreating IK handles

Ch

ara

cte

rA

nim

atio

n

3 With the left mouse button, click the start joint and end joint for the IKhandle.

You can click the joints in either order: the IK handle is created with the endeffector on the child joint.

Creating an IK chainAn IK chain is a joint chain that has an IK handle. You can create IK chainsin the same way that you create joint chains, but you must set the JointTool’s Create IK Handle option.

To create an IK chain:

1 Select Skeletons→Joint Tool-❐ to open the Joint Tool’s Tool Settingswindow.

2 Toggle on the Create IK Handle option.

You can set IK handle options within the IK Handle Options heading. Clickthe triangle on the heading line to view the options. For information on IKHandle options, see “Editing IK handle attributes” on page 246.

3 Create the joint chain as you would any skeleton. First, Click in theworkspace at the position of the first joint.

The joint is created.

4 Move the pointer to the position you want the second joint to be and clickagain.

The two joints are connected with a bone that indicates the direction of thejoint chain’s hierarchy: the thinner end of the bone’s triangle points to thechild joint.

See “Positioning joints” on page 196 for tips on editing the positions ofjoints.

5 Continue moving the pointer and clicking until you have created the chainof joints for the skeleton.

6 When you finish creating all joints in the chain, press the Enter key.

Ending the joint chain creates the IK handle.

You can edit the IK handle in the Attribute Editor to change its attributes.

Page 84: Maya Tutorial - Character Animation

240 Using Maya: Animation

Posing and Animating SkeletonsCreating IK handles

Displaying IK handle’s end effectorA marker that identifies an IK handle’s end effector is not displayed bydefault when you create an IK handle. However, if you would like to see theend effector, you can tell Maya to display it.

To display end effector:

1 Choose Window→Hypergraph to open the Hypergraph.

2 In the Hypergraph, select the IK handle’s end effector.

3 With the end effector selected, continue to press the right mouse button, andfrom the pull-down menu, select Show.

An axis-shaped icon indicates the end effector.

Displaying IK handle’s goal and goal’s axisMarkers that identify an IK handle’s goal and the local axis of the goal arenot displayed by default when you create an IK handle. However, you cantell Maya to display them after you create the IK handle.

To display goal and goal’s axis:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Display if not opened.

4 In Display, click Display Handle on to display the IK handle’s goal.

5 In Display, click Display Local Axis to display the axis of the IK handle’sgoal.

Displaying IK handle’s twist disc and pole vector’s axisAn IK handle using the default rotate plane (RP) solver has twomanipulators that are not displayed by default when you create an IKhandle. These manipulators are the twist disc and the pole vector’s axis.

To display twist disc and pole vector’s axis:

1 Select the IK handle.

2 Click the Show Manipulator Tool icon.

Page 85: Maya Tutorial - Character Animation

Using Maya: Animation 241

Posing and Animating SkeletonsSetting IK handle creation options

Ch

ara

cte

rA

nim

atio

n

If the IK handle uses the default rotate plane (RP) solver, the twist disc isdisplayed at the IK chain’s end joint. Also, the pole vector’s axis is displayed.

If the IK handle uses the single chain (SC) solver, no additional manipulatorsare displayed.

Setting IK handle creation optionsYou can have the various options and attributes of IK handles setautomatically when you create the IK handle, or you can edit the IK handle’sattributes at any time. This section describes how to set IK handle creationoptions. To edit attributes after you create an IK handle chain, see “EditingIK handle attributes” on page 246.

Setting automatic IK handle attributes includes:

• “Viewing IK handle creation options” on page 241

• “Setting the current solver” on page 242

• “Setting autopriority” on page 243

• “Setting solver enable” on page 244

• “Setting snap enable” on page 244

• “Setting sticky” on page 244

• “Setting priority” on page 245

• “Setting weight” on page 245

• “Setting position vs. orientation (PO) weight” on page 246

Viewing IK handle creation optionsThe IK handle creation options can be set from the IK Handle Tool’s ToolSettings window. When you create an IK handle, you use the IK HandleTool. You can set the IK Handle Tool’s settings so that certain IK handleattributes will be set automatically.

Page 86: Maya Tutorial - Character Animation

242 Using Maya: Animation

Posing and Animating SkeletonsSetting IK handle creation options

The IK Handle Tool’s Tool Settings window

To view automatically set IK handle attributes:

Select Skeletons→IK Handle Tool-❐.

The IK Handle Tool’s Tool Settings window is displayed.

Setting the current solverYou can have either the single chain solver or the rotate plane solver set asthe current solver automatically provided when you create an IK handle.

To set the current solver:

1 Select Skeletons→IK Handle Tool-❐.

Page 87: Maya Tutorial - Character Animation

Using Maya: Animation 243

Posing and Animating SkeletonsSetting IK handle creation options

Ch

ara

cte

rA

nim

atio

n

2 From the Current Solver pop-up menu, select either ikRPsolver orikSCsolver.

The rotate plane (RP) solver (called the ikRPsolver) is the default solver. Theother solver you can select here is the single chain solver (called theikSCsolver). Depending on the plug-ins you are using, other solvers may beavailable.

To use the spline solver, you must work directly with the IK Spline HandleTool (Skeletons→IK Spline Handle Tool).

You can select the multi-chain (MC) solver if it has already been activated.

Activating the multi-chain (MC) solverThe multi-chain (MC) solver is only available through the use of a MayaEmbedded Language (MEL) command. Once you enter the command, youcan choose the multi-chain solver from the IK Handle Tool’s Tool Settingswindow.

To activate the multi-chain solver:

1 Choose Window→General Editors→Command Shell...

2 In the Command Shell, enter the following command at the mel: prompt:createNode ikMCsolver .

Now you can choose the multi-chain (MC) solver in the IK Handle Tool’sTool Settings window.

Setting autopriorityYou can control the order in which IK chains are solved by having Mayaautomatically set their priority based on where the start joints are in theskeleton’s action hierarchy. When Maya automatically sets priority, IKchains whose start joint is the skeleton’s root joint have a priority of 1. IKchains whose start joints are child joints of the root joint have a priority of 2,and so on down the skeleton’s action hierarchy. The further an IK chain’sstart joint is from the root joint, the lower its priority.

To set autopriority:

1 Select Skeletons→IK Handle Tool-❐.

2 Click Autopriority on or off. If off, all IK handles are given a priority of 1.

Page 88: Maya Tutorial - Character Animation

244 Using Maya: Animation

Posing and Animating SkeletonsSetting IK handle creation options

Setting solver enableAfter you create an IK handle for a joint chain, you can immediately beginposing the new IK chain with inverse kinematics. However, if you wouldlike to pose with forward kinematics, you can temporarily turn off the IKhandle’s IK solver.

To set solver enable:

1 Select Skeletons→IK Handle Tool-❐.

2 Click Solver Enable off or on (the default is on).

Setting snap enableDuring posing, an IK handle’s goal can exceed the reach of the IK chain.Maya will show you this by continuing to draw a line between the endeffector, which is located at the IK chain’s end joint by default, and the goal.When you release the mouse button, the goal will snap back to the IKhandle’s end effector by default. If you prefer, you can have the goal remainwherever you have moved it last, rather than have it snap back to the endeffector. Whether the goal snaps back or remains in its last location is largelya matter of personal preference. At times some expert users like to see wherethe goal is after it has exceeded the reach of the IK chain so they can makeadjustments more easily to the overall position of the entire skeleton.

To set snap enable:

1 Select Skeletons→IK Handle Tool-❐.

2 Click Snap Enable off or on (the default is on).

Setting stickyYou can have an IK handle’s goal stick to any location in the scene. Whenyou move the start joint of the IK chain, or even the entire skeleton, the endjoint of the IK chain with a sticky IK handle will stick to its location while theIK solver provides the appropriate joint rotations. For example, if you areanimating a human character that is reaching up or out while standing inplace, you can animate the natural articulation of the legs much more easilyby making the IK handles that end at the character’s feet sticky.

To set sticky:

1 Select Skeletons→IK Handle Tool-❐.

Page 89: Maya Tutorial - Character Animation

Using Maya: Animation 245

Posing and Animating SkeletonsSetting IK handle creation options

Ch

ara

cte

rA

nim

atio

n

2 Click Sticky on or off.

Setting priorityYou can control the order in which a skeleton’s various IK handles calculatejoint chain action during animation. Each IK handle can be assigned apriority. IK handles with a priority of 1 will be solved first, IK handles with apriority of 2 will be solved second, and so on.

Maya can set these priorities for you based on where an IK handle’s startjoint is in a skeleton’s action hierarchy, or you can give all IK handles apriority of 1. Having varied priorities for IK handles can improve overallinverse kinematics performance.

To set priority:

1 Select Skeletons→IK Handle Tool-❐.

2 Slide Priority value to desired setting. Highest priority is 1.

Setting weightDuring animation, a skeleton with many IK chains can perform a widevariety of motions. Because of the specific ways the motions of IK chains canaffect the overall position and orientation of the character’s skeleton, not allthe end effectors may be able to reach their goals simulaneously.Consequently, some of the interpolated IK chain motions might not providethe effects you wish. For example, on a given limb with two IK chains thathave the same priority, neither of the two IK chains might be able to reachtheir goals because they are pulling the limb in different directions. You canalleviate this situation by assigning the IK handles of those IK chains aweight.

The assigned weight, combined with the current distance between an IKhandle’s end effector and its goal, serve to prioritize the solutions of IKchains whose IK handles have the same priority settings.

When the end effectors of two or more IK handles with the same prioritycannot reach their goals simultaneously, the IK handles whose end effectorsare furthest from their goals and whose weights are greatest will be solvedfirst.

To set weight:

1 Select Skeletons→IK Handle Tool-❐.

Page 90: Maya Tutorial - Character Animation

246 Using Maya: Animation

Posing and Animating SkeletonsEditing IK handle attributes

2 Slide Weight value to desired setting (must be 0 or greater).

Setting position vs. orientation (PO) weightDuring animation, an IK handle’s end effector might be able to reach thegoal’s position or the goal’s orientation, but not both. You can control theextent to which the end effector can reach the goal’s position versus thegoal’s orientation by setting the position vs. orientation (PO) weight. Thevalue of the PO weight ranges between 0 and 1. With a PO weight of 1, theend effector will seek to reach only the goal’s position. With a PO weight of0, the end effector will seek to reach only the goal’s orientation. With a POweight of 0.7, the end effector will seek to reach the goal’s position morethan the orientation. Finally, with a PO weight of 0.5, the end effector willtry to reach the goal’s position and orientation as equally as possible.

Note that IK handles using the rotate plane (RP) solver do not consider theorientation of the goals, only the position. With IK chains being solved bythe RP solver, you control IK chain orientation by means of the twist disc.

To set position vs. orientation (PO) weight:

1 Select Skeletons→IK Handle Tool-❐.

2 Slide POWeight value to desired setting.

Editing IK handle attributesYou can edit the attributes of an IK handle at any time by using the AttributeEditor. This section describes how to use the Attribute Editor to edit an IKhandle’s attributes.

Editing IK handle attributes includes:

• “Viewing editable IK handle attributes” on page 247

• “Renaming an IK handle” on page 249

• “Editing transform attributes” on page 249

• “Editing skeleton info” on page 250

• “Editing IK handle attributes” on page 250

• “Editing IK solver attributes and choosing an IK solver” on page 251

• “Editing pivots” on page 251

• “Editing limit information” on page 252

Page 91: Maya Tutorial - Character Animation

Using Maya: Animation 247

Posing and Animating SkeletonsEditing IK handle attributes

Ch

ara

cte

rA

nim

atio

n

• “Editing display” on page 252

• “Editing node behavior” on page 253

Note that you can access settings for an IK handle’s attributes, and also theAttribute Editor, by pressing the right mouse button while the cursor is onthe IK handle you want to edit.

Viewing editable IK handle attributesTo view or edit an IK handle’s attributes, use the Attribute Editor.

Page 92: Maya Tutorial - Character Animation

248 Using Maya: Animation

Posing and Animating SkeletonsEditing IK handle attributes

Attribute Editor for IK handles

Page 93: Maya Tutorial - Character Animation

Using Maya: Animation 249

Posing and Animating SkeletonsEditing IK handle attributes

Ch

ara

cte

rA

nim

atio

n

To view editable joint attributes:

Choose Window→Attribute Editor to open the Attribute Editor.

The Attribute Editor is displayed.

Renaming an IK handleMaya names IK handles for you when you create them. By default, IKhandles are numbered consecutively as you create them. For example, thefirst handle would be called “ikHandle1,” the second “ikHandle2,” and soon. You can rename the IK handles to better reflect their purpose in posingand animating your character. It’s a good idea to give IK handles meaningfulnames so that they are easier to select when you are working with Maya’seditors, using the Hypergraph, or using the Outliner. For example, youcould name an IK handle that goes from a right shoulder joint to a rightwrist joint “RShtoWrist.”

To rename an IK handle:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Enter the new name in the ikHandle: field.

The new name takes effect immediately.

Editing transform attributesAn IK handle’s transform attributes include the following:

• Translate, rotate, scale, and shear transformations

• Rotate order

• Rotate axis

• Inherits transform option

To edit transform attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Transform Attributes if not opened.

Page 94: Maya Tutorial - Character Animation

250 Using Maya: Animation

Posing and Animating SkeletonsEditing IK handle attributes

4 In Transform Attributes, you can make changes to the translate, rotate, scale,and shear transformations. You can set the rotate order, which is by defaultset to xyz. You can change the location of the rotate axis, which is by defaultset to 0.0, 0.0, 0.0. Finally, you can toggle whether or not the IK handleinherits transformations.

Editing skeleton infoAn IK handle’s skeleton info include the following:

• Start joint

• End effector

To edit skeleton info:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Skeleton Info if not opened.

4 In Skeleton Info, note that the names of the IK handle’s start joint and endeffector are displayed. You can edit either of these by clicking on the rightarrow buttons next to their names.

Editing IK handle attributesAn IK handle’s handle attributes include the following:

• Snap enable

• Stickiness

• Priority

• Weight

• Position vs. orientation (PO) weight

To edit IK handle attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open IK Handle Attributes if not opened.

4 In IK Handle Attributes, you can edit snap enable, stickiness, priority,weight, and position vs. orientation (PO) weight.

Page 95: Maya Tutorial - Character Animation

Using Maya: Animation 251

Posing and Animating SkeletonsEditing IK handle attributes

Ch

ara

cte

rA

nim

atio

n

Editing IK solver attributes and choosing an IK solverAn IK handle’s solver attributes include the following:

• Solver enable

• IK solver selection (single chain solver, rotate plane solver, or the multi-chain solver if activated)

• Pole vector’s end location

• Twist

To edit solver attributes and choose IK solver:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open IK Solver Attributes if not opened.

In IK Solver Attributes, you can choose the IK solver, snap enable, stickiness,priority, weight, and position vs. orientation (PO) weight.

4 In IK solver, choose the IK solver you want to assign to the IK handle.

By default, only two IK solvers are offered here: the single chain solver(ikSCsolver) and the rotate plane solver (ikRPsolver), which is the default IKsolver.

To use the spline solver, you must work directly with the IK Spline HandleTool (Skeletons→IK Spline Handle Tool).

Editing pivotsAn IK handle’s pivots attributes include the following:

• Display rotate pivot toggle

• Display scale pivot toggle

• Local space rotate pivot and scale pivot

• World space rotate pivot and scale pivot

To edit pivots attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Pivots if not opened.

Page 96: Maya Tutorial - Character Animation

252 Using Maya: Animation

Posing and Animating SkeletonsEditing IK handle attributes

4 In Pivots, you can edit the display rotate pivot toggle and the display scalepivot toggle. Also, you can edit the coordinates for the local space pivot’srotate and scale transformations and the world space pivot’s rotate and scaletransformations.

Editing limit informationAn IK handle’s limit information attributes include the following:

• Translation transformation limits

• Rotation transformation limits

• Scale transformation limits

To edit limit information attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Limit Information if not opened. Below it you can open Translate,Rotate, and Scale.

4 In Translate, Rotate, or Scale, edit the minimum, current, and maximumtransformation limits.

Editing displayAn IK handle’s display attributes include the following:

• Display handle

• Display local axis

• Select handle

• Show manipulator default

• Visibility

• Template

To edit display attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Display if not opened.

Page 97: Maya Tutorial - Character Animation

Using Maya: Animation 253

Posing and Animating SkeletonsEditing IK solvers

Ch

ara

cte

rA

nim

atio

n

4 In Display, toggle the Display Handle and Display Local Axis settings. Editthe coordinates of the Select Handle location. Select Show Manip Default asNone, Translate, Rotate, or Scale. Check Visibility on or off, and checkTemplate on or off.

Editing node behaviorMaya’s system thinks of all its entities, including IK handles, as nodes. An IKhandle’s node behavior attributes include the following:

• Caching

• Node state

To edit node behavior attributes:

1 Select the IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Node Behavior if not opened.

4 In Node Behavior, check Caching on or off. Select Node State as Normal,HasNoEffect, or Blocking.

Editing IK solversYou can edit the settings of the IK solvers from the Attribute Editor. Bydefault, Maya names the single chain solver the “ikSCsolver” and the rotateplane solver the “ikRPsolver.” Editing IK solver settings includes:

• Editing IK solver attributes: maximum iterations and tolerance

• Editing node behavior

Editing IK solver attributesAn IK solver’s attributes include the following:

• Maximum iterations

• Tolerance

To edit solver attributes:

1 Select the IK solver.

2 Choose Window→Attribute Editor to open the Attribute Editor.

Page 98: Maya Tutorial - Character Animation

254 Using Maya: Animation

Posing and Animating SkeletonsUsing IK systems

3 Open IK Solver Attributes if not opened.

4 In IK Solver Attributes, edit the Max Iterations setting and the Tolerancesetting.

Editing node behaviorMaya’s system thinks of all its entities, including IK solvers, as nodes. An IKsolver’s node behavior attributes include the following:

• Caching

• Node state

To edit node behavior attributes:

1 Select the IK solver.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Node Behavior if not opened.

4 In Node Behavior, check Caching on or off. Select Node State as Normal,HasNoEffect, or Blocking.

Using IK systemsAn IK system can organize and manage a collection of IK solvers.

Creating an IK system

To create an IK system:

1 Choose Window→Attribute Editor to open the Attribute Editor.

2 Choose List→Auto Update, clicking auto update off (not checked).

3 Choose List→Kinematics→IK Systems.

4 Choose Object→ikSystem.

The Attribute Editor will now show information about an IK system whosedefault name is “ikSystem.” You can change the name by typing in a newname in the ikSystem: field.

Page 99: Maya Tutorial - Character Animation

Using Maya: Animation 255

Posing and Animating SkeletonsUsing IK systems

Ch

ara

cte

rA

nim

atio

n

Accessing an IK system

To access an IK system:

1 Select an IK handle.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 In the Attribute Editor, click on Set Focus.

The Attribute Editor will now display information about the IK system.

Renaming an IK systemYou can rename an IK system.

To rename an IK system:

1 Access the IK system with the Attribute Editor.

2 In the ikSystem: field, replace the current name with the name you wouldlike to use.

Viewing an IK system’s IK solversYou can view and select the IK solvers Maya provides from the IK system.

To view available IK solvers:

1 Access the IK system with the Attribute Editor.

2 Open ikSystem if not opened.

The available IK are listed. By default, three IK solvers are listed: the singlechain (SC) solver (default name: ikSCsolver), the rotate plane solver (defaultname ikRPsolver), and the spline solver (default name: ikSplineSolver).

You can select and edit the solvers by double-clicking on the names in thelist. When you double-click, Maya creates folders for the selected solvers inthe Attribute Editor.

Editing global snap and global solveYou can edit the global snap and global solve settings.

To edit global snap and solve settings:

1 Access the IK system with the Attribute Editor.

Page 100: Maya Tutorial - Character Animation

256 Using Maya: Animation

Posing and Animating SkeletonsPosing IK chains

2 Open ikSystem if not opened.

Note the Global Snap and Global Solve check boxes below the listing ofavailable IK solvers.

3 Click the Global Snap and Global Solve settings on or off.

Editing node behaviorMaya’s system thinks of all its entities, including IK systems, as nodes.TheIK system’s node behavior attributes include the following:

• Caching

• Node State

To edit node behavior attributes:

1 Select the IK solver.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open Node Behavior if not opened.

4 In Node Behavior, check Caching on or off. Select Node State as Normal,HasNoEffect, or Blocking.

Posing IK chainsPosing IK chains includes the following:

• Posing with single chain (SC) solver IK handles

• Positioning with rotate plane (RP) solver IK handles

• Twisting with rotate plane (RP) solver IK handles

• Eliminating flip in rotate plane (RP) solver IK handles

• Sticky posing

Posing with single chain (SC) solver IK handles

To pose single chain (SC) solver IK handles:

1 Select the IK handle.

Page 101: Maya Tutorial - Character Animation

Using Maya: Animation 257

Posing and Animating SkeletonsPosing IK chains

Ch

ara

cte

rA

nim

atio

n

You can select the IK handle directly or from the Hypergraph. In theHypergraph, note that next to each end effector there is an icon you can clickon to select the IK handle that the end effector belongs to.

2 Select the Move Tool or the Rotate Tool.

3 Press the right mouse button and pose the IK handle.

4 The joint chain will move or rotate as you move the mouse.

Positioning with rotate plane (RP) solver IK handles

To position rotate plane (RP) solver IK handles:

1 Select the IK handle.

You can select the IK handle directly or from the Hypergraph. In theHypergraph, next to each end effector is an icon you can click on to selectthe IK handle that the end effector belongs to.

2 Select the Move Tool.

3 Press the right mouse button and position the IK handle.

The joint chain will move as you move the mouse.

Twisting with rotate plane (RP) solver IK handles

To twist a joint chain with a rotate plane (RP) solver IK handle:

1 Select the IK handle.

You can select the IK handle directly or from the Hypergraph. In theHypergraph, next to each end effector is an icon you can click on to selectthe IK handle that the end effector belongs to.

2 Select the Show Manipulator Tool.

3 Click on the twist disc (located at the end joint of the joint chain). With theright mouse button pressed, move the mouse to twist the joint chain.

Eliminating flip in rotate plane (RP) solver IK handles

To eliminate flip:

1 Select the IK handle if not already selected.

Page 102: Maya Tutorial - Character Animation

258 Using Maya: Animation

Posing and Animating SkeletonsPosing IK chains

You can select the IK handle directly or from the Hypergraph. In theHypergraph, next to each end effector is an icon you can click on to selectthe IK handle that the end effector belongs to.

2 Select the Show Manipulator Tool.

3 Select the pole vector.

Note that the triangular object in the rotation disc is not the pole vector. Thatobject is the plane indicator. The plane indicator indicates the orientation ofthe joint chain plane.

4 Drag the pole vector so that it will not cross the handle vector. Preventingthe handle vector from crossing the pole vector will eliminate flipping.

The joint chain might twist while you drag the pole vector. This is becausewhen you change the pole vector, you change the orientation of thereference plane. The joint chain’s twist is defined in terms of the difference indegrees between the reference plane and the joint chain plane.

Sticky posingWhen you position a joint chain with IK handles, you might want to stickone or more IK handles to a location in space while you move other IKhandles. This “sticking” feature of IK handles is useful for positioningcharacters engaging in movement where some part of the skeleton isstationary during part of the motion. For example, your character might beinteracting with a solid object such as a floor or a step on a stairway.

When you make an IK handle sticky, the IK handle sticks as if stuck by apiece of gum. The IK handle tends to stay stuck, but can be pulled awaydepending on how you are moving the skeleton. The IK handle’s goal andend effector tend to stay together, but can sometimes separate. A sticky IKhandle is indicated by a dark red sphere on the IK handle’s goal.

Note that sticky IK handles are only for interactive placement of a skeletonin a keyframe. They are not active when you play an animation.

To do sticky posing:

1 Select the IK handle if not already selected.

2 Choose Window→Attribute Editor to open the Attribute Editor.

3 Open IK Handle Attributes if not opened.

4 In IK Handle Attributes, set stickiness to sticky.

Page 103: Maya Tutorial - Character Animation

Using Maya: Animation 259

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

The dark red sphere at the IK handle’s goal indicates that the IK handle isnow sticky. The IK handle’s goal is now set to the goal’s current position andorientation for as long as the IK handle is sticky.

5 Pose the skeleton as desired. The sticky IK handle tries to keep its joint chainalways reaching for where you’ve stuck the IK handle’s goal.

Using IK spline handlesYou can add an IK spline handle to a joint chain to animate the motion oftails, necks, spines, tentacles, bullwhips, snakes, and similar objects. Afteryou add the handle, Maya’s IK spline solver rotates the joints when youmanipulate a curve that’s part of the handle.

Creating IK spline handlesYou add an IK spline handle to a joint chain. To animate the joint chain, youmanipulate a curve that’s part of the handle. You don’t manipulate thetranslation of the handle. You can also roll or twist the joint chain withconvenient manipulators.

The seven IK spline handleson this creature control itsneck, back, tail, and flippers.

Plesiosaur by Matt Dougan

Page 104: Maya Tutorial - Character Animation

260 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

The joint chain can be an independent hierarchy or part of a larger hierarchy.By default, a curve is created for you when you create an IK spline handle.

Instead, you can create your own curve before you create the handle. Ineither case, the joint chain mimics the shape of the curve.

To create an IK spline handle with a default curve and options:

1 Create a joint chain.

To ensure the joint chain moves smoothly when you animate the curve,create many joints close to each other (with short bones).

2 Select Skeletons→IK Spline Handle Tool.

3 Select the start joint for the IK handle.

4 Select the end joint for the IK handle.

The IK spline handle appears on the joint chain with an automaticallycreated curve. The joints in the chain rotate to adapt to the shape of thecurve.

To create an IK spline handle with your own curve and options:

1 Use modeling tools to create the curve.

Create a simple curve with no sharp bends to ensure the joint chain movessmoothly when you animate the curve.

If you create a curve with fewer CVs, your control of the curve’s shape andskeleton’s movement will be less precise, but you’ll be able to manipulatethe curve and its joint chain easier. With fewer CVs, you spend less timeselecting and dragging CVs, and you’re more likely to have a smooth curve.

Start with a curve having as few CVs as necessary. Add CVs only as neededto improve control.

2 Create a joint chain.

To ensure the joint chain moves smoothly when you animate the curve,create many joints close to each other (with short bones).

3 Select Skeletons→IK Spline Handle Tool-❐.

The Tool Settings window appears. Set options as described in “Settingoptions before creating the IK spline handle” on page 265. Turn off AutoCreate Curve. The option settings are saved for future use.

4 Select the start joint for the IK handle.

Page 105: Maya Tutorial - Character Animation

Using Maya: Animation 261

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

5 Select the end joint for the IK handle.

6 Select the curve.

The IK spline handle appears on the joint chain. The joints in the chain rotateto adapt to the shape of the curve. If the curve is shorter than the joint chain,the extra length of the joint chain points out from the end of the curve in astraight line.

Animating the joint chainTo animate the joint chain, you set keys for the appropriate attributes afteryou do any of these actions:

• manipulate the CVs of the curve

• twist and roll the joint chain

• slide the joint chain along the curve

• translate, rotate, and scale the curve

To see the effects of animating the joint chain more clearly, bind skin to thejoint chain.

To manipulate the CVs of the curve:

1 Select the curve.

To select a curve without selecting joints or other objects in the workspace,turn on (Select by object type) and limit the selection specifiers toNURBS Curves. See Using Maya: Basics for details. You can also select thecurve conveniently in the Outliner or Hypergraph.

It’s helpful to display CVs and hulls as you work with CVs. With the curveselected in Select by object type mode, turn on Display→NURBSComponents→CVs and Hulls.

2 Move the CVs.

Turn on (Select by component type) and use the Move tool on the CVs.

or

From the Modeling menu, select Curves→Curve Editing Tool.

3 Select Keys→Set Key to set keys at the desired frames.

Page 106: Maya Tutorial - Character Animation

262 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

To twist and roll the joint chain:

1 Select the IK spline handle.

To select the handle in the workspace, drag a selection box around the endjoint. The default selection priority ensures you’ll select the handle ratherthan the end joint.

2 Select Modify→Transformation Tools→Show Manipulator Tool.

Circular manipulators appear at the start joint and end joint.

3 To roll the entire joint chain, click and rotate the circular manipulator at thestart joint.

4 To twist the joint chain, click and rotate the circular manipulator at the endjoint.

Tip

To improve speed as you play and scrub your animation, set keys only forthe CVs you animate. For instance, select the CVs, then choose Keys→SetKey.

If you use the Curve Editing Tool, select Keys→Set Key-❒, turn on AllManipulator Handles, and click the Save button. Thereafter when youchoose Set Key, Maya sets keys only for the necessary CVs.

Twist manipulator

End joint

Roll manipulator

Start joint

Page 107: Maya Tutorial - Character Animation

Using Maya: Animation 263

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

You can also adjust twist and roll by selecting the IK handle and enteringvalues for Roll and Twist in the Channel Box or Attribute Editor. In theAttribute Editor, expand the IK Solver Attributes section to see theseattributes.

5 Set keys for the handle’s Roll and Twist attributes.

If the IK handle’s Solver Enable is on, the solver doesn’t use the IK handle’sTranslate, Rotate, and Scale values as it rotates joints.

To slide the joint chain along the curve:

1 Select the IK handle.

To select the IK handle, turn on (Select by object type) then drag aselection box around the end joint of the handle. The default selectionpriority ensures you’ll select the handle rather than the end joint.

2 Choose Window→Attribute Editor to display the Attribute Editor.

3 Expand the IK Solver Attributes section.

4 Turn on Root on Curve.

This constrains the start joint of the IK spline handle to a position on thecurve. It also provides an offset manipulator to slide the start joint along thecurve.

5 Choose Modify→Transformation Tools→Show Manipulator Tool.

The offset manipulator appears at the start joint.

Page 108: Maya Tutorial - Character Animation

264 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

6 Drag the manipulator to slide the joint chain along the curve.

If you drag the start joint to the end of the curve, the child joints move offthe end of the curve in a straight line.

You cannot drag the manipulator past either end of the curve.

You can also enter values for Offset in the Attribute Editor to move the startjoint’s offset manipulator along the curve. Try various values over 0 to getthe desired position.

Offset manipulatorat the start joint

Offset manipulator atthe end of the curve

Page 109: Maya Tutorial - Character Animation

Using Maya: Animation 265

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

The Offset attribute is ignored if you turn Root on Curve off.

7 Set keys for the Offset at the desired frames.

To translate, rotate, and scale the curve:

1 Select the curve.

2 Use the Move, Rotate, and Scale tools to translate, rotate, or scale the curve.

If you created the handle with Root on Curve off, translating, rotating, andscaling the curve doesn’t translate the start joint.

3 Set keys for the appropriate Translate, Rotate, and Scale attributes.

Setting options before creating the IK spline handleThis topic describes how to set IK spline handle tool options available beforeyou create the handle. See “Tips for working with IK spline handles” onpage 274 for additional information on how to use several of these options.For details on options you can set after creation, see “Setting attributes aftercreating the IK spline handle” on page 271.

To set IK Spline Handle Tool options:

Select Skeletons→IK Spline Handle Tool-❐

Set the following options in the Tool Settings window.

Note

If you use Offset (or the offset manipulator) to animate a joint chain slidingon a curve, the start joint might flip unexpectedly. Use Offset only forsmall movements or when the start joint doesn’t rotate much.

You can also use a motion path to prevent joint flipping. See “Preventingunwanted start joint flipping” on page 272.

Page 110: Maya Tutorial - Character Animation

266 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

Root on CurveIf you turn this option on, the start joint of the IK spline handle isconstrained to a position on the curve. You can drag an offset manipulator toslide the start joint (and its children) along the curve.

If you turn this option off, you can move the start joint away from the curve.The start joint is no longer constrained to the curve. Maya ignores the Offsetattribute, and no offset manipulator exists at the start joint.

Page 111: Maya Tutorial - Character Animation

Using Maya: Animation 267

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

If Root on Curve is off and you move the start joint far enough away fromthe curve so that none of the joints can reach the curve, the bones pointstraight at the closest point on the curve. If the curve is wavy, the joints jumpfrom closest point to closest point as you move the straightened joint chaintowards parts of the curve. This is correct operation.

The following figure shows a joint chain in four positions as it pointstowards the closest part of the curve.

Note

If Root on Curve is off, the solver ignores any motion you previouslykeyed with Offset. Set keys with Root on Curve off or on, not a mixture ofboth.

You can move the startjoint and its children offthe curve by turning offRoot on Curve.

Page 112: Maya Tutorial - Character Animation

268 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

You can also turn Root on Curve on or off after you create the IK splinehandle by selecting the IK spline handle and displaying the Attribute Editor.To display the Attribute Editor, select Window→Attribute Editor.

Auto Create Root AxisThis option creates a parent transform node above the start joint in the scenehierarchy. You can avoid unexpected start joint flipping by moving androtating this transform node rather than the start joint. See “Preventingunwanted start joint flipping” on page 272 for details.

You can turn this option on only when Root on Curve is off.

If you turn on Auto Create Root Axis, you must turn off Auto Parent Curveif you want to use the curve as a motion path. Otherwise, a dependencygraph loop occurs, which results in the display of a warning message andincorrect handle operation.

You can set Auto Create Root Axis in the Tool Options window only as youcreate the IK spline handle.

Auto Parent CurveIf the start joint has a parent, this option makes the curve a child of thatparent. The curve and joints therefore move with the transformations of theparent.

If you create a handle that starts at a joint in the chain lower than the rootjoint of your skeleton, turn this option on so the joint chain moves with thetransformations of its parent joint.

You can set this option in the Tool Options window only as you create theIK spline handle.

Page 113: Maya Tutorial - Character Animation

Using Maya: Animation 269

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

Snap Curve To RootThis option affects the handle only if you create your own curve for thehandle. If this option is on when you create the handle, the start of the curvesnaps to the position of the start joint. The joints in the chain rotate to adaptto the shape of the curve.

If you want to move the joint chain to the curve to use the curve as a fixedpath, turn this option off. Otherwise, turn this option on.

You can set this option in the Tool Options window only as you create theIK spline handle.

Auto Create CurveThis option creates a curve used by the IK spline handle.

If you turn on Auto Create Curve and turn off Auto Simplify Curve, thecurve passes through all the joints. This often creates so many CVs that thecurve is unwieldy to manipulate. For this reason, consider turning on AutoSimplify Curve.

If you turn on Auto Create Curve and Auto Simplify Curve, creating thehandle automatically creates a simplified curve that has a shape similar tothe joint chain. The higher the Number of Spans, the closer the curvematches the joint chain. The curve has a curve degree of 3 (cubic).

If you turn off Auto Create Curve, you must supply a curve for the jointchain.

If the joint chain is part of an existing skeleton, you’ll typically turn thisoption on. If you’re using a curve as a path for sliding the joint chain, you’lltypically turn this option off.

You can set Auto Create Curve in the Tool Options window only as youcreate the IK spline handle.

Auto Simplify CurveThis option sets the automatically created curve to the specified Number ofSpans. The number of spans corresponds to the number of CVs in the curve.The curve has a curve degree of 3 (cubic).

If you create a curve with fewer CVs, your control of the curve’s shape andskeleton’s movement will be less precise, but you’ll be able to manipulatethe curve and its joint chain easier. With fewer CVs, you spend less timeselecting and dragging CVs, and you’re more likely to have a smooth curve.

Page 114: Maya Tutorial - Character Animation

270 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

This option works only if Auto Create Curve is on.

You can set Auto Simplify Curve in the Tool Options window only as youcreate the IK spline handle.

Number of SpansThis option specifies the number of CVs in the curve as follows:

This option is available only if Auto Create Curve is on.

You can set the Number of Spans in the Tool Options window only as youcreate the IK spline handle.

Root Twist ModeThis option turns on Power Animator IK spline twisting. As you turn thetwist manipulator at the end joint, the start joint twists slightly with theother joints.

With this option off, the start joint doesn’t twist. Use the roll manipulator atthe start joint to turn the start joint.

You can also set this option after you create the IK spline handle by selectingthe IK spline handle and displaying the Attribute Editor. To display theAttribute Editor, select Window→Attribute Editor.

Twist TypeThis option specifies how the twist occurs in the joint chain:

• Linear twists all parts evenly.

• Ease In twists more at the end than the start.

• Ease Out twists more at the start than the end.

Numberof Spans

CVs

1 4

2 5

3 6

4 7

Page 115: Maya Tutorial - Character Animation

Using Maya: Animation 271

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

• Ease In Out twists more at the middle than at either end.

You can also set Twist Type after you create the IK spline handle byselecting the IK spline handle and displaying the Attribute Editor. Todisplay the Attribute Editor, select Window→Attribute Editor.

Setting attributes after creating the IK spline handleAfter you create an IK spline handle, you can specify settings for severalattributes.

To set attributes after creating the IK spline handle:

1 Select the IK handle.

2 Choose Window→Attribute Editor to display the Attribute Editor.

3 Expand the IK Solver Attributes section.

The following attributes are displayed:

Solver Enable Turning this off disables the IK spline solver. If you’vebound skin to the joint chain, turn this option off beforereturning the joint chain to the bind pose.

While this option is on, avoid moving individual joints oryou might encounter unexpected joint rotations. You alsocannot move or rotate the IK handle.

Be aware that the IK spline solver doesn’t operate if thereare joint limits on any of the joints controlled by an IK splinehandle.

Offset See the following note.

Roll See “Animating the joint chain” on page 261.

Twist See “Animating the joint chain” on page 261.

Twist Type See the following note.

Root on Curve See the following note.

Root TwistMode See the following note.

Page 116: Maya Tutorial - Character Animation

272 Using Maya: Animation

Posing and Animating SkeletonsUsing IK spline handles

Preventing unwanted start joint flippingThe start joint might flip undesirably when you move or rotate a curve or itsCVs in some directions or slide the joint chain along its curve. If flippingoccurs, it’s likely to do so only in a small range of rotation. The flipping is anormal outcome of IK spline solver calculations.

If the orientation of a joint is more than 90 spatial degrees from its zero-rotation value, it might flip unexpectedly as you rotate the curve or CVs. Thezero-rotation value is where the joint’s RotateX, RotateY, and RotateZattributes are 0 (relative to its parent joint’s coordinate system). Flipping ismost pronounced near 180 degrees.

You can prevent start joint flipping in most cases by positioning jointsappropriately when you create the joint chain. When you create each jointafter the start joint, position it roughly in its rest position—the averageposition of its entire range of motion.

Note

Twist Type, Root on Curve, and Root Twist Mode are available when youselect Skeletons→IK Spline Handle Tool-❐.

In the Attribute Editor, Offset affects the joint chain only if you turn onRoot on Curve. For details on these attributes, see “Setting options beforecreating the IK spline handle” on page 265.

Unwanted start joint rotation mightoccur in the half-spherical region.Flipping is pronounced in theconical region.

Joint is at its zero-rotation value.

Page 117: Maya Tutorial - Character Animation

Using Maya: Animation 273

Posing and Animating SkeletonsUsing IK spline handles

Ch

ara

cte

rA

nim

atio

n

If you’ve positioned joints appropriately and joint flipping is still a problem,try parenting the start joint to another joint or to a transform node. See“Auto Create Root Axis” on page 268 and “Auto Parent Curve” on page 268.

Unexpected start joint flipping might also occur when you animate a jointchain along its curve, for instance, when you slide a snake along a motionpath. To prevent flipping in such cases, do these steps.

To prevent flipping when a joint chain slides down its curve:

1 Select Skeletons→IK Spline Handle Tool-❐ to display the Tool Settingswindow.

2 Turn off Root on Curve, Auto Parent Curve, Auto Create Curve, and SnapCurve to Root.

3 Turn on Auto Create Root Axis.

4 Select the start joint, then the end joint, and then the curve you’ve created.

This creates the IK spline handle with a parent transform node above thestart joint. In a subsequent step you’ll put the node on a motion path thatprevents the start joint flipping.

5 Select the parent transform node, then Shift-click the curve.

To select the parent transform node, drag a selection box around the startjoint.

6 Select Paths→Attach to Path-❐.

The Attach to Path Options window appears.

7 Turn on Start/End.

8 For the Start Time and End Time, enter the frame range for the joint chain’smotion.

The parent transform node and its child joint chain will move from the startof the curve to the end of the curve in the specified frame range.

9 Turn on Follow.

If the curve has a 3D looping shape, you might also need to turn on Normalfor the Up Direction to avoid unwanted flipping.

10 Leave other options at the default settings.

11 Click the Attach button.

Page 118: Maya Tutorial - Character Animation

274 Using Maya: Animation

Posing and Animating SkeletonsTips for working with IK spline handles

When you play the animation, the parent transform node and joint chainmove along the curve path. The movement will likely be free of unexpectedflipping. However, flipping is unavoidable in some complex paths.

Note that you can still roll and twist the joint chain with the IK handle’s rolland twist manipulators for additional control.

Working with soft body curvesIf you change an IK spline curve to a soft body, you can add dynamic forcesto change the curve’s motion. For example, you can connect turbulence tothe curve to create random, erratic motion. See Using Maya: Dynamics fordetails.

Tips for working with IK spline handlesThis section provides tips for working with IK spline handles on mostcharacters. Subsequent topics offer suggestions specific to the type ofcharacter and motion you’re creating.

• To ensure the joint chain moves smoothly when you animate the curve,create many joints close to each other (with short bones).

• Create a simple curve with no sharp bends to help make the joint chainmove smoothly when you animate the curve. Use a small number of CVs.

• When you add an IK spline handle to the skeleton of most creatures—including fish and snakes moving along a motion path—parent each IKspline start joint to a transform node or parent joint that’s not controlled byan IK spline handle. This makes the joint chain move with thetransformations of the parent while avoiding unexpected joint flipping. See“Preventing unwanted start joint flipping” on page 272 for details.

If you’re working on a character with a root joint that rotates little, forinstance, a swaying tree, you don’t need to parent the start joint to atransform node or joint. The start joint can serve as the character’s root joint.

• For a character such as a fish or snake moving along a motion path, if youcreate a handle that starts at a skeleton’s root, turn on Auto Create RootAxis when you create the IK spline handle. This prevents unexpected jointflipping as you animate the automatically created parent transform nodealong a motion path. Also turn off Auto Parent Curve.

Page 119: Maya Tutorial - Character Animation

Using Maya: Animation 275

Posing and Animating SkeletonsTips for working with IK spline handles

Ch

ara

cte

rA

nim

atio

n

If you create a handle that starts at a joint other than the skeleton’s root, turnon Auto Parent Curve and turn off Auto Create Root Axis so the handle’scurve and start joint move with the transformations of the parent joint.

• When you manipulate a tail or neck parented to a spine, avoid moving thefirst CV of the curve for the tail or neck. Move the second CV minimally,preferably only along an imaginary line extending straight out from the endof the spine. Manipulate the other CVs freely. This technique ensures thatthe skin flows naturally where the spine meets the tail or neck.

• To prevent unexpected results, Maya doesn’t let you overlap the same jointwith two IK spline handles.

• Do not parent the curve to the start joint. This creates a dependency graphloop that causes the start joint to chase the curve as the curve moves. Todetect such loops, use the MEL cycleCheck -all command described in theonline MEL documentation.

• Do not parent the curve to a transform node that would use that same curveas a motion path. In other words, don’t turn on Auto Create Root Axis andAuto Parent Curve if you plan to put the transform node on that curve. Thiscreates a dependency graph loop.

Page 120: Maya Tutorial - Character Animation

276 Using Maya: Animation

Posing and Animating SkeletonsTips for working with IK spline handles

Working with human skeletonsBecause a human spine often twists, turns, and bends, an IK spline handle isideal for controlling it. For example, you can position the handle’s start jointone joint hierarchically below (and positionally above) the skeleton’s rootjoint. This causes the IK spline joint chain to move with the root’s movementwithout unexpected joint flipping.

Start joint

Root joint

Zoomed view of image on left

IK splinehandle

IK splinehandle

Page 121: Maya Tutorial - Character Animation

Using Maya: Animation 277

Posing and Animating SkeletonsTips for working with IK spline handles

Ch

ara

cte

rA

nim

atio

n

Working with animal skeletonsBecause an animal’s tail, back, and neck twist and turn independently,multiple IK spline handles are ideal for controlling them.

Here’s a close-up of the pelvic region of the preceding skeleton:

Note that you can use two rather than three handles for skeletons: one forthe tail and one for the neck and back combined.

This skeleton has three IK splinehandles: on the tail, back, andneck. The handles give precisecontrol of the spine.

Handle

Handle

Handle

Pelvicregion

HandleHandle

Close-up of previousimage’s pelvic region

Page 122: Maya Tutorial - Character Animation

278 Using Maya: Animation

Posing and Animating SkeletonsTips for working with IK spline handles

The start joint of the tail’s handle and the start joint of the back’s handle arenear the position of the skeleton’s root, but one joint below the root in theskeleton’s hierarchy. This causes the IK spline joint chains to move with theroot’s movement without unexpected joint flipping.

If you use this approach, turn on Auto Parent Curve when you create thehandles. This ensures the curve and joints move with the transformation ofthe root.

For most creatures, using only one handle for the tail, back, and neck won’tgive you adequate control.

Working with sinuous motion on skeletonsIK spline handles are useful for animating land or sea creatures that move insinuous or undulating patterns, for example, snakes, fish, and seals. Theskeleton’s root location is crucial for achieving the desired motion.

To animate a creature that glides smoothly along a path without abruptdirection changes at the head or tail, put the root of the skeleton at thecharacter’s tail end.

Turn on Auto Create Root Axis to prevent unexpected joint flipping as youtransform the automatically created parent transform node. Also turn offAuto Parent Curve. An example skeleton follows:

The skeleton’sroot is at its tail.

Handle

Handle

Handle

Handle

Handle

Page 123: Maya Tutorial - Character Animation

Using Maya: Animation 279

Posing and Animating SkeletonsTips for working with IK spline handles

Ch

ara

cte

rA

nim

atio

n

Though not visible in the preceding figure, a parent transform node appearshierarchically above the start joint of the handle on the spine.

If the creature’s head or tail moves abruptly, put the skeleton’s root betweenthe spine’s midpoint and tail, for instance, near the pelvic region:

The root is in thepelvic region.

Handle

Handle

Handle

Handle

Handle

Handle

Handle

Handle

Handle

Handle

Handle Close-up of previousimage’s pelvic region

Page 124: Maya Tutorial - Character Animation

280 Using Maya: Animation

Posing and Animating SkeletonsAnimating IK chains

Each handle’s start joint in the figure is separated from the root by one joint.None of the IK spline handles pass through the root. This causes the IKspline joint chains to move with the root’s movement without unexpectedjoint flipping.

Animating IK chainsYou can animate IK chains by keyframing or by using motion capture data.

KeyframingFor information on keyframing, please see Using Maya: Animation, Part 1:Keyframe, which describes the tasks and tools for keyframing, including howto set keys, edit key options, use the Graph Editor, use the Dope Sheet, anduse the Playblast window.

Please note the following keyframing tips for character animation:

• Set a minimum number of keys

• Use the Channel Box

Set a minimum number of keysYou can set a key for every transformation attribute in a scene. However, incharacter animation, most expert users find that setting a minimum numberof keys assures the best use of system resources. They only keytransformation attributes that they want to be sure will be interpolatedbetween frames. For example, if only the transformation attribute fortranslation along the X-axis of an IK handle’s goal has changed, expert userswill save a key for only that transformation attribute, not the entire IKhandle.

Use the Channel BoxIn addition to the selections from the Keys pull-down menu, many expertusers often use the Channel Box to set keys for particular transformationattributes. For example, if you select the Translate X channel and then pressthe right mouse button, you can choose Key Selected to save a key for thatchannel only. (Note that in the Channel Box, transformation attributes areidentified as channels.)

Page 125: Maya Tutorial - Character Animation

Using Maya: Animation 281

Posing and Animating SkeletonsAnimating IK chains

Ch

ara

cte

rA

nim

atio

n

Motion captureFor information on motion capture, please see Using Maya, Animation, Part 4:Constraints and Motion Capture. You can have motion capture data drive theIK handle’s goals, thereby posing the IK chains.

Page 126: Maya Tutorial - Character Animation

282 Using Maya: Animation

Posing and Animating SkeletonsAnimating IK chains

Page 127: Maya Tutorial - Character Animation

Using Maya: Animation 283

Ch

ara

cte

rA

nim

atio

n

13 Skinning Skeletons

Skinning skeletons is the process of binding a geometry to a skeleton so thatthe skeleton’s actions can deform the geometry. A geometry can be either anon-uniform rational B-spline (NURBS) geometry whose points are controlvertices (CVs), or a polygonal geometry whose points are vertices. Oncebound, the geometry becomes the skeleton’s skin. In effect, the skeleton’sskin provides the shape of the character’s surface. The skin moves as theskeleton’s joints move, because during skinning the geometry’s points (CVsor vertices) are identified as skin points and organized into skin point setsthat are bound to the skeleton’s joints.

This chapter explains skinning. Skinning skeletons includes the following:

• “Understanding skinning” on page 284

• “Binding by closest point” on page 285

• “Binding by partition set” on page 287

• “Binding multiple objects as skin” on page 288

• “Returning to bind pose” on page 289

Page 128: Maya Tutorial - Character Animation

284 Using Maya: Animation

Skinning SkeletonsUnderstanding skinning

• “Displaying skin point set colors” on page 290

• “Editing skin point sets” on page 290

• “Detaching and reattaching skin” on page 290

• “Animating with skin and skeleton groups” on page 292

Note that skinning skeletons often requires use of the Set Editor. If you arenot familiar with the Set Editor, please refer to Using Maya: Hypergraph, Sets,and Expressions.

Understanding skinningSkin is a geometry that has been bound to a skeleton, and skinning is theprocess of binding a geometry to a skeleton. After you’ve built a skeletonand exercised how that skeleton can be posed and animated, you are readyto give the skeleton some skin. First, pose the skeleton so that it fits thegeometry properly. Next, bind the geometry to the skeleton, making themodel the skeleton’s skin. This skin provides the surface of your character.In Maya, there are two ways to skin a skeleton:

• Closest point skinning

• Partition set skinning

Closest point skinningIn binding by closest point, the geometry’s points (CVs or vertices) areautomatically organized into skin point sets based on the proximity of eachpoint to a joint. For each joint with a bone, a skin point set is created thatincludes the points that are closest to the given joint. The points are thenidentified as skin points, with each skin point being a member of only oneskin point set. In Maya, a collection of sets that can have no members incommon is called a partition. In organizing the geometry’s points forbinding, Maya partitions them into skin point sets. Because skin point setscan have no members in common, a skin point cannot be bound to morethan one joint. In binding by closest point, Maya creates the skin point setsfor you. You can edit the sets after they are created to fine-tune the bindingof individual skin points.

Page 129: Maya Tutorial - Character Animation

Using Maya: Animation 285

Skinning SkeletonsBinding by closest point

Ch

ara

cte

rA

nim

atio

n

Partition set skinningIf the geometry has its points (CVs or vertices) organized into a partitionwhose sets you want to bind to joints, you can bind by closest partition.During modeling, you can partition a geometry’s points (CVs or vertices)into sets. A geometry that has the same number of sets as the skeleton hasjoints can be bound to the skeleton by partition set. In binding by partitionset, a geometry’s already existing partition sets are bound to the skeleton’sjoints as skin point sets. Each partition set is bound to the nearest joint as askin point set.

Skin point set colorsWhether you bind by closest point or by partition set, Maya assigns eachskin point set a color. The points in a given skin point are displayed in theset’s color. You can also have the skin point set’s joint be displayed in theskin point set’s color.

Bind poseAfter you’ve given the skeleton some skin, whe posed and animated the skinwill deform based on the skeleton’s action. The only pose in which the skinis not deformed relative to the original geometry is the bind pose, which is thepose the skeleton was in when you bound the geometry to it.

Skin detachment and reattachmentYou can detach and reattach the skeleton’s skin at any time. Expert usersdetach and reattach when they want to add or remove a skeleton’s joints,change the skeleton’s bind pose, do some more modeling on the skin, ordetach and then bind a different geometry for the skin.

Binding by closest pointIn binding by closest point, Maya automatically creates jointClusters for eachjoint, and distributes the points closest to each joint into that joint’sjointCluster set. Binding by closest point is the most common way to skin askeleton.

Page 130: Maya Tutorial - Character Animation

286 Using Maya: Animation

Skinning SkeletonsBinding by closest point

If you plan to bind additional skins to the skeleton at a later time, you willwant to be able to return easily to the pose at which the first skins werebound (the bind pose). Maya saves bind pose information for joints at whichyou bind the skin, but not joints without skin.

Binding to the skeleton from the bottom of the skeleton’s action hierarchycan make it difficult to return the skeleton to its bind pose. The easiest wayto ensure that you can return to the bind pose is to always bind from the topof the hierarchy downwards. In cases where you wish to concentrate on thelower part of the skinning first, it is best to bind simplistic substitute skins tothe upper part of the skeletal hierarchy to ensure that Maya saves bind poseinformation for the entire skeleton. Late, you can delete the substitute skinswhen you are ready to bind the actual skin.

To bind by closest point:

1 Select the geometry and skeleton.

If you are binding to the complete skeleton, select any joint. Maya willunderstand that you want to bind the geometry to the entire skeletonhierarchy that corresponds to the joint you have whose joint you haveselected.

If you are binding to selected joints only, explicitly select each joint that youwant to bind to.

Note that you can attach more than one geometry at a time. Select all thegeometries that you want to bind to the skeleton by clicking on one and thenShift-clicking the others to select them.

2 Select Skinning→Bind Skin-❐.

The Bind Skin Options window is displayed.

3 In Bind to, choose Complete Skeleton or Selected Joints.

4 Click Coloring on to color the joints according to the colors assigned to theskin point sets.

5 In Bind Method, click Closest Point.

6 At the bottom of the Bind Skin Options window, click Bind.

The geometry binds to the skeleton. Maya puts the geometry’s points (CVsor vertices) into skin point sets, and each set is controlled by the jointClusterof the closest joint. The jointCluster name will correspond to the name of itsjoint. For example, if a joint is named elbow, the corresponding jointClusterwill be named elbowCluster1.

Page 131: Maya Tutorial - Character Animation

Using Maya: Animation 287

Skinning SkeletonsBinding by partition set

Ch

ara

cte

rA

nim

atio

n

When you first bind the skin, all cluster percentages will be set to 1.0, givingthe skin a rigid look around the joints. You can apply lattice or jointClusterflexors to smooth the transition about the joints, or modify the clusterpercentages directly using the Set Editor.

Note that because the skin is bound to the skeleton, the skin’s transformationattributes are locked. If you try to manipulate the transformation attributes,the manipulator appears gray, indicating the attributes are locked. If youdecide you want to modify the geometry that you’ve bound to the skeletonas its skin, you must first unbind the skin from the skeleton. After you’vemodified the geometry, you can then rebind it to the skeleton.

7 Exercise the skeleton to see how the skin point sets have been created. Notehow the skin point sets move with the joints to which they are bound. Youmight want to edit skin point set membership. To edit set membership, seeUsing Maya: Hypergraph, Sets, and Expressions.

Binding by partition setIn binding by partition set, Maya binds a geometry’s existing partition setsto a skeleton. The number of sets should equal the number of joints withbones. For information on creating partitions in Maya, see Using Maya:Hypergraph, Sets, and Expressions.

To bind by partition set:

1 Select the geometry and the skeleton or the specific joints to you wish tobind.

2 Select Skinning→Bind Skin-❐

The Bind Skin Options window is displayed.

3 In Bind to, choose Complete Skeleton or Selected Joints.

4 Click Coloring on to color the joints according to the colors assigned to theskin point sets.

5 In Bind Method, click Partition Set.

In the Partition window, select the name of the partition you wish to bind.Only partitions composed of point sets are valid for binding by partition.Default Maya partitions such as the renderPartition and layerPartition arenot valid for binding since they contain sets of objects, not points.

6 At the bottom of the Bind Skin Options window, click Bind.

Page 132: Maya Tutorial - Character Animation

288 Using Maya: Animation

Skinning SkeletonsBinding multiple objects as skin

Maya binds the selected partition’s sets to the skeleton, with each set boundto the nearest joint.

Note that because the skin is bound to the skeleton, the skin’s transformationattributes are locked. If you try to manipulate the transformation attributes,the manipulator appears gray, indicating the attributes are locked. If youdecide you want to modify the model that you’ve bound to the skeleton asits skin, you must first unbind the skin from the skeleton. After you’vemodified the geometry, you can then rebind it to the skeleton.

7 Exercise the skeleton to see how the skin point sets have been created. Notehow the skin point sets move with the joints to which they are bound. Youmight want to edit skin point set membership. To edit set membership, seeUsing Maya: Hypergraph, Sets, and Expressions.

Binding multiple objects as skinMaya allows you to bind many objects as skin. You can attach new objects asskin at any time. There are two ways to attach additional objects to askeleton which already has a bound skin: using the bind skin menu, or usingset editing tools.

Binding additional objects with the Bind Skin menu:

When you add new objects as skin, the skeleton must be in the same positionthat was in when you bound the original skin. This position is called thebind pose. The following section contains more details on returning theskeleton to the bind pose.

Once the the skeleton is at the bind pose, follow the bind by closest pointinstructions to bind additional skins to the skeleton.

Binding additional objects using set membership:

A second way to attach new skins is with the Set Editor by adding points toexisting jointClusters. If you choose to attach new skins with set editingtools, note that if the skeleton is not at the bind pose, the new skins willimmediately be deformed by the skeleton as soon as they are added to thejointCluster’s set. If this deformation is not desired, move the skeleton to thebind pose before adding the points into the jointCluster’s set.

Page 133: Maya Tutorial - Character Animation

Using Maya: Animation 289

Skinning SkeletonsReturning to bind pose

Ch

ara

cte

rA

nim

atio

n

Returning to bind poseThe pose a skeleton is in during skinning is called the bind pose. When youpose a character, the skeleton’s action causes skin deformations. The onlypose that does not cause skin deformations is the bind pose; when theskeleton is in the bind pose, the skin is in the same shape that it was in whenit was a geometry.

Yo will want to return the skeleton to the bind pose before binding new skingeometries. You will also want to return the skeleton to the bind pose beforeadding lattice flexors.

To return a skeleton to its bind pose:

1 Select any joint on the skeleton.

2 Choose Skinning→Go to Bind Pose.

The skeleton assumes the pose it had during skinning, when the geometrywas bound to the skeleton.

If possible, the skeleton assumes the pose it had during skinning, when thegeometry was bound to the skeleton. It may not be possible for Maya tomove the skeleton to the bind pose. Constraints, keyframed IK Handles, IKHandles using the spline solver, locked attributes and expressions can allcreate situations where a skeleton is unable to go to the bind pose. If theskeleton is unable to move to the bind pose, you will receive an errormessage saying: Error: Could not reach bindPose due to

constraints, expressions, or keyframed handles . When thishappens, a quick way to allow the skeleton to reach the bind pose, is todisable the source of the conflict:

3 Choose Modify→Disable Nodes→All.

Maya only stores the bind pose for joints which have skin attached. It is bestto always bind skin from the top-down so that there are no joints above thebound skin that do not have skin attached. Otherwise, going to the bindpose may cause your skeleton or skin to become distorted. For this reason , itis best to have all of the skeleton and skins displayed when you go to thebind pose. If either the skeleton or the skins are distorted, undo, andconsider resetting the skeleton’s bind pose to a new position.

To reset a skeleton’s bind pose:

You might want to reset a skeleton’s bind pose. You can do so as follows:

Page 134: Maya Tutorial - Character Animation

290 Using Maya: Animation

Skinning SkeletonsDisplaying skin point set colors

1 Select any joint on the skeleton.

2 Choose Skinning→Preserve Skin Groups→Detach Skeleton.

The skin on the skeleton will move its undeformed position. If theundeformed position is not appropriate for the new bind pose, position theskin based on the new bind pose.

3 Choose Skinning→Preserve Skin Groups→Reattach Skeleton.

The new bind pose will be set at the current postion of the skeleton.

Displaying skin point set colorsMaya assigns each skin point set a color. When the points (CVs or vertices)in a skin point set are displayed, the points are displayed in the assignedcolor.

To display the skin point set colors:

1 Select the skin.

2 If the skin is from a NURBS geometry, choose Display→ NURBSComponents →CVs. If the skin is from a polygonal geometry, chooseDisplay→Polygon Components→Vertices. If the skin is a lattice geometry,choose Display→Object Components→Lattice Points.

Editing skin point setsYou can edit skin point sets by using the Set Editor. For information aboutthe Set Editor, please refer to Using Maya: Hypergraph, Sets, and Expressions.

Detaching and reattaching skinOccasionally, you might want to modify the skeleton, reset the bind pose, ordo some further modeling on the skin. To do so, you first need to detach theskin from the skeleton. When you finish editing the skeleton or modeling theskin, you can reattach the skin to the skeleton.

You can detach the skin in two modes:

• Detach

• Preserve Skin Groups - Detach

Page 135: Maya Tutorial - Character Animation

Using Maya: Animation 291

Skinning SkeletonsDetaching and reattaching skin

Ch

ara

cte

rA

nim

atio

n

Typical reasons for using Detach include the following:

• You no longer want the geometry to act as a skin.

• You plan to change the topology of the skin geometry before reattaching.

• You want to reset the skin groups and percentage values to their default.

Typical reasons for using Preserve Skin Groups - Detach include thefollowing:

• You do not want to lose the current skin groups and percentage values.

• You want to reset the bind pose on the skeleton.

• You want to modify the skeletal hierarchy.

Important: In order to reattach the skin while preserving skin groups, youmust detach the skin in preserve skin groups mode. If you detach the skinusing the standard detach option, you must reattach the skin byreperforming the bind skin operation.

Detaching skin without preserving skin groups andpercentages

To detach skin without perserving skin groups and percentages:

1 Select the skin(s) you want to unbind.

2 Choose Skinning→Detach Skin.

The Detach Skin Options window is displayed.

3 From History, choose Delete History, Keep History, or Bake History.

The Delete History option will unbind the skin, move it to its undeformedposition, and delete any unused jointClusters. The Keep History option willunbind the skin, and move it to its undeformed position, but will not deleteunused jointClusters. The Bake History option will unbind the skin withoutmoving it to its undeformed position, and delete unused jointClusters.

4 Click the Coloring check-box to set whether to remove joint colors.

5 At the bottom of the Detach Skin Options window, choose Detach to detachthe skin.

Unless you use the Bake History option, the skin will move to its uneformedlocation. The skin’s transformation attributes (translate,rotate, and scale) willbe unlocked. Unused jointCluster’s in the skin’s history will be deletedunless you use the Keep History option.

Page 136: Maya Tutorial - Character Animation

292 Using Maya: Animation

Skinning SkeletonsAnimating with skin and skeleton groups

Detaching skin while preserving skin groups andpercentages

To detach skin while preserving skin groups and percentages:

1 Select a joint in the skeleton or explicitly select the joints which you wish todetach.

2 Choose Skinning→Preserve Skin Groups→Detach Skeleton orSkinning→Preserve Skin Groups→Detach Selected Joints based on howmuch of the skeleton you wish to detach.

The skin affected by the detached joints will move to its undeformedposition. Its transformation attributes (translate, rotate, and scale) will beunlocked so that you can reposition it. To reattach the skin with its oldpercentages and groups, use the Preserve Skin Groups - Reattach technique.

Reattaching skin while preserving skin groups andpercentages

You can only reattach the skin using this method if you detach the skinusing the Preserve Skin Groups - Detach options. If you detach the skinusing the Detach Skin method, your skin groups and percentages weredeleted so you should the basic Bind Skin operation to reattach the skin.

To reattach skin while preserving skin groups and percentages:

1 Select the skeleton or explicitly select the joints which you wish to reattach.

2 Choose Skinning→Preserve Skin Groups→Reattach Skeleton orSkinning→Preserve Skin Groups→Reattach Selected Joints based on howmuch of the skeleton you wish to reattach.

Animating with skin and skeleton groupsAfter skinning, create a group for your character that includes the character’sskeleton and skin. Having a group that includes everything that yourcharacter consists of can greatly ease the management of the character withinan animation, particularly when you have many characters in an animation.

You can easily view everything a character’s group can include from theHypergraph. For more information on using the Hypergraph, please seeUsing Maya: Hypergraph, Sets, and Expressions.

Page 137: Maya Tutorial - Character Animation

Using Maya: Animation 293

Skinning SkeletonsAnimating with skin and skeleton groups

Ch

ara

cte

rA

nim

atio

n

To group skin and skeleton:

1 Select a skeleton and its skin.

2 Choose Edit→Group.

A group for the character is created. Note that this group node should onlybe used for organizational purposes. It should not be used to translate,rotate, or scale the character. Moving the group node causes the skin to getdoubly transformed since it is transformed once by the skeleton and asecond time by the group node.

Page 138: Maya Tutorial - Character Animation

294 Using Maya: Animation

Skinning SkeletonsAnimating with skin and skeleton groups

Page 139: Maya Tutorial - Character Animation

Using Maya: Animation 295

Ch

ara

cte

rA

nim

atio

n

14 Using Flexors

Maya offers a wide variety of deformer tools for creating deformations.Flexors are high-level deformer tools for deforming a skeleton’s skin; theireffects can be linked to the actions of the skeleton.

For more information about Maya’s basic deformer tools, please see UsingMaya: Animation, Basic Deformers.

This chapter describes flexors. Using flexors includes the following:

• “Understanding flexors” on page 296

• “Creating lattice flexors” on page 301

• “Positioning lattice flexors after creation” on page 302

• “Editing joint lattice flexor attributes” on page 302

• “Editing bone lattice flexor attributes” on page 313

• “Creating sculpt flexors” on page 324

• “Editing sculpt flexor attributes” on page 325

Page 140: Maya Tutorial - Character Animation

296 Using Maya: Animation

Using FlexorsUnderstanding flexors

• “Joint-driven sculpting” on page 325

• “Creating cluster flexors” on page 326

• “Editing cluster flexor attributes” on page 328

• “Editing with cluster flexor manipulators” on page 328

Understanding flexorsFlexors are high-level deformers that deform skin based on how a skeletonmoves. There are three types of flexors:

• Lattice flexors (joint lattice flexors and bone lattice flexors)

• Sculpt flexors (joint sculpt flexors and bone sculpt flexors)

• Cluster flexors (joint cluster flexors only)

Lattice flexorsLattice flexors are tools for deforming the skin around joints and the bonesof joints. They can smooth or wrinkle skin around joints and provide muscledefinition around bones. You could use a joint lattice flexor to ease andsmooth the skin around a joint as it bends, or you could use a bone latticeflexor to show bulging muscles around the bones of joints.

Page 141: Maya Tutorial - Character Animation

Using Maya: Animation 297

Using FlexorsUnderstanding flexors

Ch

ara

cte

rA

nim

atio

n

Skin bending around joint without lattice flexor (note creases)

Page 142: Maya Tutorial - Character Animation

298 Using Maya: Animation

Using FlexorsUnderstanding flexors

Skin bending around joint with lattice flexor (note smoothed crease)

Sculpt flexorsSculpt flexors provide a way to create various types of bulges and dips in acharacter’s skin.

Page 143: Maya Tutorial - Character Animation

Using Maya: Animation 299

Using FlexorsUnderstanding flexors

Ch

ara

cte

rA

nim

atio

n

Sculpt flexors are ideal for deformations such as muscle bulges, knee capaction, or elbow cap action. You can create sculpt flexors at joints (joint sculptflexors) or at the bones of joints (bone sculpt flexors).

Cluster flexorsCluster flexors can provide realistic smoothing effects by allowing you tocontrol the points in a skin point set around a joint with varying percentagesof influence.

Page 144: Maya Tutorial - Character Animation

300 Using Maya: Animation

Using FlexorsUnderstanding flexors

To understand cluster flexors, you need some background on the role of thebasic cluster deformers in the skinning process. When you skin a skeleton,the skin points are organized into a partition of sets called skin point sets. Askin point set is created to correspond to each joint and bone combination.Also automatically created for each skin point set is one of Maya’s basicdeformers, the cluster deformer. Cluster deformers that enable skinning arecalled joint cluster deformers. A joint cluster deformer is what glues a skinpoint set to a joint-and-bone combination so that the skin moves with theskeleton. A joint cluster deformer is like a basic cluster deformer except thatit acts specifically on a skin point set. (For more information on basic clusterdeformers, please refer to Using Maya: Animation, Basic Deformers.)

Cluster flexors are high-level tools that provide you with a way tomanipulate joint cluster deformers. Cluster flexors can be created only atjoints (joint cluster flexors only) because they control joint cluster deformers.

Page 145: Maya Tutorial - Character Animation

Using Maya: Animation 301

Using FlexorsCreating lattice flexors

Ch

ara

cte

rA

nim

atio

n

Creating lattice flexorsLattice flexors create a lattice deformer around a joint (joint lattice flexor) orbone (bone lattice flexor). The flexor’s effect on the skin around the joint orbone can be driven by the action of a joint.

When you create a lattice flexor, the lattice’s reset (base) positioncorresponds to the bind pose.

To edit a joint lattice flexor, see “Editing joint lattice flexor attributes” onpage 302.

To edit a bone lattice flexor, see “Editing bone lattice flexor attributes” onpage 313.

To create a lattice flexor at a joint or bone:

1 Put the skeleton in bind pose by clicking any joint or bone and choosingSkinning→Go to Bind Pose.

It’s possible to create a flexor on a skeleton that’s not in the bind pose, butit’s not recommended—you might get unexpected results.

2 Select the joint or joints on which you want to create a joint flexor. To createa bone flexor, select the parent joint of the bone. To create flexors on all jointsor bones, select any joint on the skeleton.

3 Choose Skinning→Create Flexor... .

The Create Flexor window is displayed.

4 From the Flexor Type: pull-down menu, choose lattice.

5 To create one or more joint lattice flexors, use the Joints box. In the Jointsbox, click At Selected Joint(s) to create flexors only at the selected joints, orclick At All Joint(s) to create flexors at all the skeleton’s joints.

6 To create one or more bone lattice flexors, use the Bones box. In the Bonesbox, click At Selected Bone(s) to create flexors only at the bones of theselected parent joints, or click At All Bone(s) to create flexors for all thebones.

7 To specify the divisions of the lattice, use the Lattice Options box. Thedefault is 2 S divisions, 5 T divisions, and 2 U divisions. You can enter newnumbers for the divisions or use the sliders. The greater the number ofdivisions, the smoother the deformation effect; the smaller the number ofdivisions, the faster the performance.

Page 146: Maya Tutorial - Character Animation

302 Using Maya: Animation

Using FlexorsPositioning lattice flexors after creation

8 Click Position the flexor if you want to adjust the location of the latticeflexor before closing the Create Flexor window.

9 If you would like to move, rotate, or scale the flexor without worrying aboutdeforming the skin, you can do so now. Click Position the Flexor. Thenchoose one of the transform tools (move, rotate, or scale) and change theflexor’s position.

10 To create the lattice flexor(s), click OK.

Once you have created the lattice flexors, you edit them to control how theydeform the skin. To edit joint lattice flexors, see “Editing joint lattice flexorattributes” on page 302. To edit bone lattice flexors, see “Editing bone latticeflexor attributes” on page 313.

Positioning lattice flexors after creationTo position a lattice flexor after creation:

1 Put the skeleton in bind pose by selecting it and choosing Skinning→Go toBind Pose.

2 Select the lattice group from the Outliner.

The lattice group is the highest-level lattice in the Outliner. If you open thislattice (the default name is lattice followed by a number), you’ll see the latticethat deforms the skin underneath it (the default name is deformed followedby a number).

3 Select a transform tool.

The manipulator of the selected tool appears on the lattice.

4 Move the lattice with the manipulator.

Editing joint lattice flexor attributesThe attributes of joint lattice flexors control how the flexors deform the skinaround joints. Use the Attribute Editor to edit joint lattice flexor attributes.

Editing joint lattice flexor attributes includes:

• “Viewing joint lattice flexor attributes” on page 303

• “Renaming joint lattice flexors” on page 303

• “Editing rounding” on page 305

Page 147: Maya Tutorial - Character Animation

Using Maya: Animation 303

Using FlexorsEditing joint lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

• “Editing creasing” on page 303

• “Editing length in” on page 306

• “Editing length out” on page 308

• “Editing width left” on page 310

• “Editing width right” on page 311

Viewing joint lattice flexor attributes

To view joint lattice flexor attributes:

1 Make sure the skeleton is not in the bind pose.

Flexors don’t deform skin in the bind pose. To see the effects of flexors, youmust view the skeleton in another pose.

2 Select a joint lattice flexor.

3 Choose Window→Attribute Editor... .

The Attribute Editor is displayed. In the Attribute Editor, you can modifythe attributes of lattice flexors on joints to create specific effects.

Renaming joint lattice flexorsBy default, joint lattice flexors are given the name “jointFlexor” with anumber added at the end. You can change the default name. Using namesthat describe the purpose of the lattice flexor can be helpful when you have acomplex character with many flexors.

To rename a joint lattice flexor:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

2 In the flexorShape: field, enter a new name.

Editing creasingThe creasing attribute affects the bulging of a joint’s point groups on theinside of a bend. When you enter a creasing value, the flexor points on theinside of the bend move inward or outward to change the shape of thebulge.

• A positive creasing value causes the skin to bulge outward.

• A negative creasing value causes the skin to tuck inward.

Page 148: Maya Tutorial - Character Animation

304 Using Maya: Animation

Using FlexorsEditing joint lattice flexor attributes

The following figures illustrate positive and negative creasing.

Positive creasing effect with joint lattice flexor

Negative creasing effect with joint lattice flexor

To edit creasing:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

Page 149: Maya Tutorial - Character Animation

Using Maya: Animation 305

Using FlexorsEditing joint lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

2 In Creasing, enter a new value or use the slider.

Note that you can also edit the creasing attribute from the Channel Box.

Editing roundingRounding affects the bulging of a joint’s point groups on the outside of abend. When you enter a rounding value, the flexor points on the outside ofthe bend move outward or inward to change the shape of the bulge.

• A positive rounding value causes the skin to bulge outward.

• A negative rounding value causes the skin to bulge inward.

The following figures illustrate positive and negative rounding:

Positive rounding effect with joint lattice flexor

Page 150: Maya Tutorial - Character Animation

306 Using Maya: Animation

Using FlexorsEditing joint lattice flexor attributes

Negative rounding effect with joint lattice flexor

To edit rounding:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

2 In Rounding, enter a new value or use the slider. A positive rounding valuecauses the skin to bulge outward, and a negative rounding value causes theskin to bulge inward.

Note that you can also edit the rounding attribute from the Channel Box.

Editing length inThe Length In attribute affects the locations of flexor points along the joint’spoint group around the upper bone. When you enter a Length In value, theflexor planes along the upper bone move away from or towards the joint.

• A positive Length In value causes the lattices to move away from the joint,spreading the bend effect up the upper bone.

• A negative Length In value causes the lattices to move towards the joint,making the bend effect more local to the joint.

Page 151: Maya Tutorial - Character Animation

Using Maya: Animation 307

Using FlexorsEditing joint lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

When you change the Length In value, you modify the regions affected bythe round, crease, and width effects.

The following figures illustrate positive and negative length in effects.

Positive length in effect with joint lattice flexor

Negative length in effect with joint lattice flexor

Page 152: Maya Tutorial - Character Animation

308 Using Maya: Animation

Using FlexorsEditing joint lattice flexor attributes

To edit length in:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

2 In Length In, enter a new value or use the slider. A positive value causes thedeformation to spread farther up the bone towards the joint’s parent joint. Anegative value causes the deformation to concentrate towards the joint.

Note that you can also edit the length in attribute from the Channel Box.

Editing length outThe Length Out attribute affects the locations of flexor points along thejoint’s point group around the lower bone. When you enter a Length Outvalue, the lattices along the lower bone move away from or towards thejoint.

• A positive Length Out value causes the flexor lattices to move away from thejoint, spreading the bend effect down the lower bone.

• A negative Length Out value causes the flexor lattices to move towards thejoint, making the bend effect more local to the joint.

When you change the Length Out value, you modify the regions affected bythe round, crease, and width effects.

The following figures illustrate postive and negative length out effects.

Page 153: Maya Tutorial - Character Animation

Using Maya: Animation 309

Using FlexorsEditing joint lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

Positive length out effect with joint lattice flexor

Negative length out effect with joint lattice flexor

Page 154: Maya Tutorial - Character Animation

310 Using Maya: Animation

Using FlexorsEditing joint lattice flexor attributes

To edit length out:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

2 In Length Out, enter a new value or use the slider. A positive value causesthe deformation to spread farther down the joint’s bone. A negative valuecauses the deformation to concentrate towards the joint.

Note that you can also edit the length out attribute from the Channel Box.

Editing width leftThe Width Left attribute affects the bulging of a joint’s point groups on theleft side of a bend. When you enter a Width Left value, the flexor points onthe left side of the bend move outward or inward to change the shape of thebulge.

• A positive Width Left value causes the skin to bulge outward.

• A negative Width Left value causes the skin to bulge inward.

The following figures illustrate positive and negative width left effects.

Positive width left effect with joint lattice flexor

Page 155: Maya Tutorial - Character Animation

Using Maya: Animation 311

Using FlexorsEditing joint lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

Negative width left effect with joint lattice flexor

To edit width left:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

2 In Width Left, enter a new value or use the slider. A positive value causesthe skin to bulge outward, and a negative value causes the skin to bulgeinward.

Note that you can also edit the width left attribute from the Channel Box.

Editing width rightWidth Right affects the bulging of a joint’s point groups on the right side ofa bend. When you enter a Width Right value, the flexor points on the rightside of the bend move inward or outward to change the shape of the bulge.

• A positive Width Right value causes the skin to bulge outward.

• A negative Width Right value causes the skin to bulge inward.

The following figures illustrate positive and negative width right effects.

Page 156: Maya Tutorial - Character Animation

312 Using Maya: Animation

Using FlexorsEditing joint lattice flexor attributes

Positive width right effect with joint lattice flexor

Negative width right effect with joint lattice flexor

To edit width right:

1 View the joint lattice flexor’s attributes in the Attribute Editor.

Page 157: Maya Tutorial - Character Animation

Using Maya: Animation 313

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

2 In Width Right, enter a new value or use the slider. A positive value causesthe skin to bulge outward, and a negative value causes the skin to bulgeinward.

Note that you can also edit the width right attribute from the Channel Box.

Editing bone lattice flexor attributesTo edit bone lattice flexor attributes, use the Attributes Editor. Editing bonelattice flexor attributes includes:

• “Viewing bone lattice flexor attributes” on page 313

• “Renaming bone lattice flexors” on page 314

• “Editing length in” on page 314

• “Editing length out” on page 316

• “Editing width left” on page 318

• “Editing width right” on page 311

• “Editing bicep” on page 321

• “Editing tricep” on page 322

Viewing bone lattice flexor attributes

To view bone lattice flexor attributes:

1 Make sure the skeleton is not in the bind pose.

Flexors don’t deform skin in the bind pose. To see the effects of flexors, youmust view the skeleton in another pose.

2 Select a bone lattice flexor.

3 Choose Windows→Attribute Editor... .

The Attribute Editor is displayed. In the Attribute Editor, you can modifyattributes of lattice flexors on bones to create specific effects.

Page 158: Maya Tutorial - Character Animation

314 Using Maya: Animation

Using FlexorsEditing bone lattice flexor attributes

Renaming bone lattice flexorsBy default, bone lattice flexors are given the name “boneFlexor” with anumber added at the end. You can change the default name. Using namesthat describe the purpose of the lattice flexor can be helpful when you have acomplex character with many flexors.

To rename a bone lattice flexor:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In the flexorShape: field, enter a new name.

Editing length inThe Length In attribute affects the locations of flexor points along the bone’spoint group. When you enter a Length In value, the flexor planes moveaway from or towards the center of the bone.

• A positive Length In value causes the lattices to move away from the center,spreading the bend effect to a greater area of the bone.

• A negative Length In value causes the lattices to move towards the center,making the bend effect more localized.

By changing the Length In value, you can lengthen or shorten the bulgingcreated by the other deformation parameters.

The following figures illustrate no effect, positive length in effect, andnegative length in effect.

Page 159: Maya Tutorial - Character Animation

Using Maya: Animation 315

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

No length in effect with bone lattice flexor

Positive length in effect with bone lattice flexor

Page 160: Maya Tutorial - Character Animation

316 Using Maya: Animation

Using FlexorsEditing bone lattice flexor attributes

Negative length in effect with bone lattice flexor

To edit length in:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In Length In, enter a new value or use the slider. A positive value causes thedeformation to spread away from the center of the bone. A negative valuecauses the deformation to concentrate towards the center of the bone.

Note that you can also edit the length in attribute from the Channel Box.

Editing length outThe Length Out attribute affects the locations of flexor points along thebone’s point group. When you enter a Length Out value, the flexor planesmove away from or towards the center of the bone.

• A positive Length Out value causes the lattices to move away from thecenter, spreading the bend effect to a greater area of the bone.

• A negative Length Out value causes the lattices to move towards the center,making the bend effect more localized.

By changing the Length Out value, you can lengthen or shorten the bulgingcreated by other deformation parameters.

Page 161: Maya Tutorial - Character Animation

Using Maya: Animation 317

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

The following figures illustrate positive and negative length out effects.

Positive length out effect with bone lattice flexor

Negative length out effect with bone lattice flexor

Page 162: Maya Tutorial - Character Animation

318 Using Maya: Animation

Using FlexorsEditing bone lattice flexor attributes

To edit length out:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In Length Out, enter a new value or use the slider. A positive value causesthe deformation to spread away from the center of the bone. A negativevalue causes the deformation to concentrate towards the center of the bone.

Note that you can also edit the length out attribute from the Channel Box.

Editing width leftWidth Left affects the bulging of a bone’s point group on the left side of abend. When you enter a Width Left value, the flexor points on the left side ofthe bend move outward or inward to change the shape of the bulge.

• A positive Width Left value causes the skin to bulge outward.

• A negative Width Left value causes the skin to bulge inward.

The following illustrate positive and negative width left effects.

Positive width left effect with bone lattice flexor

Page 163: Maya Tutorial - Character Animation

Using Maya: Animation 319

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

Negative width left effect with bone lattice flexor

To edit width left:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In Width Left, enter a new value or use the slider. A positive value causesthe skin to bulge outward, and a negative value causes the skin to bulgeinward.

Note that you can also edit the width left attribute from the Channel Box.

Editing width rightWidth Right affects the bulging of a bone’s point group on the right side of abend. When you enter a Width Right value, the flexor points on the rightside of the bend move inward or outward to change the shape of the bulge.

• A positive Width Right value causes the skin to bulge outward.

• A negative Width Right value causes the skin to bulge inward.

The following figures illustrate positive and negative width right effects.

Page 164: Maya Tutorial - Character Animation

320 Using Maya: Animation

Using FlexorsEditing bone lattice flexor attributes

Positive width right effect with bone lattice flexor

Negative width right effect with bone lattice flexor

To edit width right:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In Width Right, enter a new value or use the slider. A positive value causesthe skin to bulge outward, and a negative value causes the skin to bulgeinward.

Note that you can also edit the width right attribute from the Channel Box.

Page 165: Maya Tutorial - Character Animation

Using Maya: Animation 321

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

Editing bicepBicep affects the bulging of a bone’s point group on the inside of a bend.When you enter a Bicep value, the flexor points on the inside of the bendmove outward or inward to change the shape of the bulge.

• A positive Bicep value causes the skin to bulge outward.

• A negative Bicep value causes the skin to bulge inward.

The following illustrate positive and negative bicep effects.

Positive bicep effect with bone lattice flexor

Page 166: Maya Tutorial - Character Animation

322 Using Maya: Animation

Using FlexorsEditing bone lattice flexor attributes

Negative bicep effect with bone lattice flexor

To edit bicep:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In the Attribute Editor, choose Extra Attributes.

3 In Bicep, enter a new value or use the slider. A positive value causes the skinto bulge outward, and a negative value causes the skin to bulge inward.

Note that you can also edit the bicep attribute from the Channel Box.

Editing tricepThe Tricep attribute affects the bulging of a bone’s point group on theoutside of a bend. When you enter a Tricep value, the flexor points on theoutside of the bend move outward or inward to change the shape of thebulge.

• A positive Tricep value causes the skin to bulge outward.

• A negative Tricep value causes the skin to bulge inward.

The following illustrate positive and negative tricep effects.

Page 167: Maya Tutorial - Character Animation

Using Maya: Animation 323

Using FlexorsEditing bone lattice flexor attributes

Ch

ara

cte

rA

nim

atio

n

Positive tricep effect with bone lattice flexor

Negative tricep effect with bone lattice flexor

To edit tricep:

1 View the bone lattice flexor’s attributes in the Attribute Editor.

2 In the Attribute Editor, choose Extra Attributes.

Page 168: Maya Tutorial - Character Animation

324 Using Maya: Animation

Using FlexorsCreating sculpt flexors

3 In Tricep, enter a new value or use the slider. A positive value causes theskin to bulge outward, and a negative value causes the skin to bulge inward.

Note that you can also edit the tricep attribute from the Channel Box.

Creating sculpt flexorsYou can create sculpt flexors at joints (joint sculpt flexors) or at the bones ofjoints (bone sculpt flexors). You can use sculpt flexors to make skin slidemore realistically over a joint, or use them on bones to create bulges or dipsas the joint moves.

To create a sculpt flexor:

1 Put the skeleton in bind pose by selecting any joint and choosingSkinning→Go to Bind Pose.

It’s possible to create a sculpt flexor on a skeleton that’s not in the bind pose,but it’s not recommended—you might get unexpected results.

2 Select the joint or joints on which you want to create the flexor. If you wantto create a bone sculpt flexor, select the bone’s parent joint. To create flexorson all joints or bones, select any joint of the skeleton.

Page 169: Maya Tutorial - Character Animation

Using Maya: Animation 325

Using FlexorsEditing sculpt flexor attributes

Ch

ara

cte

rA

nim

atio

n

3 Select Skinning→Create Flexor.

The Create Flexor window is displayed.

4 From the Flexor Type: pull-down menu, choose sculpt.

5 Click the boxes under Joints and Bones to indicate where you want toposition the flexor or flexors: at selected joints or all joints, and at selectedbones or all bones.

6 Set the Max Displacement, Dropoff Distance, Dropoff Type, Mode, andInside Mode options as you would for a basic sculpt object.

These options are described in Using Maya: Animation, Basic Deformers.

7 Click OK to create the flexors on the joints and bones you indicated.

Once you have created the sculpt flexors, you manipulate them to deformthe skin when the joints move. See “Joint-driven sculpting” on page 325.

Editing sculpt flexor attributesTo edit sculpt flexors:

1 Select the flexor you want to modify.

2 Open the Attribute Editor by selecting Window→Attributes.

The sculpt flexor’s attributes are displayed.

3 Change the attributes as desired. These attributes are described in UsingMaya: Animation, Basic Deformers.

Joint-driven sculptingTo have a joint’s attributes drive the sculpt deformation, use the Set DrivenKey tool. (For more information on Set Driven Key, please refer to UsingMaya: Animation, Keyframe.)

To set joint-driven sculpting:

1 Put the skeleton in bind pose by selecting any joint and choosingSkinning→ Go to Bind Pose.

2 Select the sculpt flexor.

3 Select Keyframe→Set Driven Key... .

Page 170: Maya Tutorial - Character Animation

326 Using Maya: Animation

Using FlexorsCreating cluster flexors

The Set Driven Key window is displayed.

A default driver and driver attribute are loaded for you. The driver is thejoint whose motion controls the animation of the sculpt deformation. TheAttribute is the transform of driver joint that the sculpt deformation isspecifically keyed to.

Driver attributes include the following:

autoGuide The guide axis (or axes) correspond to the axes the joint ispermitted to rotate in (based on the Joint Limits setting inthe Attribute Editor). Auto Guide is the default and workswell in most cases.

rotateX The guide axis is the joint’s X-axis.

rotateY The guide axis is the joint’s Y-axis.

rotateZ The guide axis is the joint’s Z-axis.

maxXYZ The guide axes are the joint’s X-, Y-, and Z-axes.

4 In the browser, select the attribute you want to animate.

5 Set the key by clicking Key.

The key for the bind position of the character is created.

6 Select the handle of the joint chain, move the joint chain, and continuesetting keys by clicking Key.

Creating cluster flexorsCluster flexors allow you to control how smoothly skin moves around jointsduring posing and animating.

Page 171: Maya Tutorial - Character Animation

Using Maya: Animation 327

Using FlexorsCreating cluster flexors

Ch

ara

cte

rA

nim

atio

n

During skinning, cluster deformers are automatically created to bind skinpoint sets to joints. These cluster deformers that bind skin point sets to jointsare called joint clusters. Joint clusters indicate their deformation effects onskin point sets by their drop-off values. The drop-off values are percentagevalues that indicate the range and magnitude of the deformation effects. Bycontrolling the range and magnitude of drop-off, you can control thesmoothness of skin around a joint.

Cluster flexors provide a way for you to manipulate the drop-off directly.Rather than having to specify actual values for the percentages, you can usethe cluster flexor’s manipulators to edit the deformation effects.

To create a cluster flexor:

1 Put the skeleton in bind pose by selecting any joint and choosingSkinning→Go to Bind Pose.

2 Select the joint (or joints) on which you want to create the flexor.

3 Choose Skinning→Create Flexor... .

The Create Flexor window is displayed.

4 From the Flexor Type: pull-down menu, choose jointCluster.

Page 172: Maya Tutorial - Character Animation

328 Using Maya: Animation

Using FlexorsEditing cluster flexor attributes

5 Click the boxes under Joints to indicate where you want to position theflexor or flexors: at selected joints or at all joints.

Except for simple cases, you will probably want to adjust the cluster toposition it and change the percentages for the best effect on the skin bendingaround the joint.

6 Click Create.

Cluster flexors are created at the selected joints.

7 Open the Hypergraph by choosing Window→Hypergraph... .

The Hypergraph will indicate the cluster flexor(s) as a “jointFlexor” with anumber appended. The number indicates the order in which the flexors havebeen created.

When you select the cluster flexor, note that a “J” is displayed near thecluster flexor’s joint.

Editing cluster flexor attributesTo edit cluster flexors:

1 Select the cluster flexor you want to edit.

2 Open the Attribute Editor by selecting Window→Attribute Editor... .

In the Attribute Editor, you can edit the attributes of the cluster flexor, thecluster flexor’s shape, and the joint cluster deformer (the cluster deformerthat binds skin point sets to joints). The cluster flexor’s attributes folder isidentified as “jointFlexorn,” the cluster flexor’s shape attributes folder isidentified as “jointFlexor_Shape,” and the joint cluster deformer (the clusterdeformer that binds skin point sets to joints) attributes folder is identified as“JointnClustern.”

3 Edit the attributes as desired. Note that the attributes of cluster deformersare described in Using Maya: Animation, Basic Deformers.

Editing with cluster flexor manipulatorsYou can use the cluster flexor’s manipulators to edit the deformation effectsof joint clusters. A cluster flexor’s manipulators include of pair of rings.

Page 173: Maya Tutorial - Character Animation

Using Maya: Animation 329

Using FlexorsEditing with cluster flexor manipulators

Ch

ara

cte

rA

nim

atio

n

Cluster flexor manipulator rings

Each ring includes two manipulators: a diamond manipulator and a radialmanipulator.

Page 174: Maya Tutorial - Character Animation

330 Using Maya: Animation

Using FlexorsEditing with cluster flexor manipulators

Diamond manipulator (selected)

Located at the center of the ring, the diamond manipulator controls therange of smoothing. The diamond manipulator controls the range of drop-off of the joint clusters acting on the skin point sets bound to the currentjoint and the current joint’s parent joint.

Diamondmanipulator

Page 175: Maya Tutorial - Character Animation

Using Maya: Animation 331

Using FlexorsEditing with cluster flexor manipulators

Ch

ara

cte

rA

nim

atio

n

Radial manipulator (selected)

Located on the ring, the radial manipulator controls the magnitude ofsmoothing. The radial manipulator controls the magnitude of drop-off of thejoint clusters acting on the skin point sets bound to the current joint and thecurrent joint’s parent joint.

To edit with the cluster flexor manipulators:

1 If you have just created the cluster flexor, you need to choose to have thecluster flexor manipulators displayed. In the Hypergraph, select the clusterflexor (identified as “jointFlexorn”). Open the Attribute Editor; from Display,click on Display Handle. A cross-shaped mark is displayed at the center ofthe joint, near the “J” that identifies the cluster flexor.

2 Select the joint with the Show Manipulator Tool.

The cluster flexor manipulators are displayed.

3 Be sure the joint is not in the bind pose. Flexors do not provide deformationeffects when the skeleton is in the bind pose. By having the joint in someother pose, you can see the effects of your editing.

4 To edit the range of smoothing, select one of the diamond manipulators.

5 Use the left mouse button to click and drag the diamond manipulatortowards or away from the joint.

The range of smoothing changes as you drag the manipulator.

Radialmanipulator

Page 176: Maya Tutorial - Character Animation

332 Using Maya: Animation

Using FlexorsEditing with cluster flexor manipulators

6 To edit the magnitude of smoothing, select one of the radial manipulators.

7 Use the left mouse button to click and drag the radial manipulator towardsor away from the joint.

The magnitude of smoothing changes as you drag the manipulator.

Note that you can also edit the drop-off values of joint clusters from theAttribute Editor. The Upper Value of the current joint’s joint cluster andLower Value of the parent joint’s joint cluster are controlled by radialmanipulators. The Upper Bound of the current joint’s joint cluster andLower Bound of the parent joint’s joint cluster are controlled by the diamondmanipulators. For total smoothing, the values, which are expressed aspercentages, should be equal 100.

Editing which skin points are in which skin point sets can also help tocontrol smoothing effects.

Page 177: Maya Tutorial - Character Animation

Index

Using Maya: Modeling 333

Index

Aanimating

characters 11, 27IK chains 124keyframing 124motion capture 125necks, tails, spines 103with skin and skeletongroups 136

attributesediting joints 55setting IK spline handle 115

Auto Create Curve 113Auto Create Root Axis 112, 122Auto Joint Limits 54Auto Joint Orient 53Auto Parent Curve 122Auto Simplify Curve 113Autopriority 87

Bball joints 52, 60Bicep deformation 165bind pose 133

reseting 133returing to 133

binding by closest point 130binding by partition set 131binding multiple objects 132bone lattice flexors 145bones 14

bone lattice flexors 145compensating scale 54, 64

Ccharacters

animating 27deforming 25flexors 25geometry 12modeling 12skeletons 14skinning 22, 127

child joints 16, 33closest point

binding by 130cluster flexors 25, 143

creating 171editing attributes 172editing with manipulators 175manipulators 172

Connect Joint 46control vertices (CVs) 22creating

cluster flexors 171IK chains 83IK handles 82IK spline handle 103joint chains 36joints 36lattice flexors 145parent transform with IKspline 112

sculpt flexors 168Curve Editing Tool 105curves

auto-creating with IK splinehandle 113

auto-simplifying with IK splinehandle 113

IK spline handle 103transforming IK handle 109

Ddampening

joints 67Degrees of Freedom 52, 60dependency graph loops

IK spline 112, 119diamond manipulator 173Disconnect Joint 49

Eend effectors 76, 79

displaying 84end joints 35, 74, 76, 78

Ffish

animating with IK spline 118,122

flexors 25, 140cluster flexors 25, 143lattice flexors 25, 140sculpt flexors 25, 142

flippingeliminating in rotate plane(RP) solver IK handles 101

preventing IK spline startjoint 116

flipping in motion pathpreventing IK spline startjoint 117

forward kinematics 20, 70

Ggeometry 12

skin 22skinning 127

Page 178: Maya Tutorial - Character Animation

Index

334 Using Maya: Modeling

goaldisplaying 84

goal’s axisdisplaying 84

goals 77, 79

Hhandle vectors 77, 79handle wires 76, 78human spines

IK spline handle 120

IIK chains 35

animating 124Autopriority 87creating 83posing 100

IK handles 14, 20, 35, 74Autopriority 87creating 82editing attributes 94editing display 96editing limits 96end joints 74Priority 89setting creation options 85setting PO weight 90setting weight 89Snap Enable 88Solver Enable 88start joints 74Sticky 89

IK solvers 21, 35, 75editing attributes 97IK spline solvers 81multi-chain (MC) solvers 81rotate plane (RP) solvers 77single chain (SC) solvers 75

IK spline handle 103animating sinuousmotion 122

auto-creating curve 113auto-parenting curve 112creating 103curve 103human spines 120manipulating curve CVs 105,119

motion path 117offset 108parenting to transform orjoint 118

rolling 106selecting 107setting keys 106sliding joint chain 107snapping curve to startjoint 113

soft body on curve 118tail, back, and neck 121tips for using 118tool options 109twisting 106

IK systems 98accessing 99creating 98renaming 99viewing available IKsolvers 99

Insert Joint Tool 41inverse kinematics 20, 70

Jjoint chain planes 79joint chains 17, 33

adding to 37creating 36inserting joints 41limbs 17

joint cluster points 23joint clusters 23joint lattice flexors 145joint limits 64Joint Orient 63Joint Tool 36joints 14, 32

Auto Joint Limits 54Auto Joint Orient 53ball joints 52child joints 16, 33compensating scale 54, 64dampening 67Degrees of Freedom 52, 60disconnecting 49editing attributes 55editing joint limits 64end joints 35, 74inserting 41joint chains 17, 33joint lattice flexors 145Joint Orient 63limbs 34local axis orientation 63parent joints 16, 33positioning 40Preferred Angle 61removing 42renaming 58resizing display 40root joints 18, 32Rotate Damp Range 68Rotate Damp Strength 68Scale Compensate 54Segment ScaleCompensate 64

setting creation options 50start joint 35start joints 74Stiffness 62

Page 179: Maya Tutorial - Character Animation

Index

Using Maya: Modeling 335

Index

Kkeyframing 124

minimum keys 124using Channel Box 124

kinematics 70

Llattice flexors 25, 140

bone lattice flexors 145creating 145editing bone lattice flexorattributes 157

editing joint lattice flexorattributes 146

joint lattice flexors 145positioning 146

Length in deformation 150, 158Length out deformation 152, 160limbs 17, 34

mirroring 45limits

joint limits 64

MMirror 45Mirror Across 45Mirror Joint 45mirroring 43modeling 12motion capture 125motion paths

IK spline handle 117moving

start joint off IK splinecurve 111

multi-chain (MC) solvers 81activating 87

NNumber of Spans 113, 114

Ooffset

IK spline handle 108overlapping

IK spline handle joints 119

Pparent joints 16, 33partition set

binding by 131partitions 22pelvic region

positioning skeleton rootin 123

plane indicators 80PO weight 90points 22

skin point sets 22skin points 22

pole vector’s axisdisplaying 84

pole vectors 80posing

IK chains 100sticky posing 102

Power AnimatorIK spline twisting in Maya 114

Preferred Angle 61Priority 89

Rradial manipulator 173

reference planes 80Remove Joint 42Reroot Skeleton 50rerooting skeletons 50rolling

IK spline handle 106root joints 18, 32Root on Curve 107Root Twist Mode 114Rotate Damp Range 68Rotate Damp Strength 68rotate plane (RP) solvers 77

behavior 81end effectors 79end joints 78goals 79handle vectors 79handle wires 78joint chain planes 79plane indicators 80pole vectors 80reference planes 80rotation discs 80start joints 78twist discs 80

rotation discs 80Rounding deformation 149

SScale Compensate 54sculpt flexors 25, 142

creating 168editing attributes 169joint-driven sculpting 169

sealsanimating with IK spline 122

Segment Scale Compensate 64selecting

IK spline handle 107

Page 180: Maya Tutorial - Character Animation

Index

336 Using Maya: Modeling

setting keysIK spline handle 106

single chain (SC) solvers 75behavior 77end effectors 76end joints 76goals 77handle vectors 77handle wires 76start joints 76

sinuous motionIK spline handle 122

skeletons 14, 32animating 14building 14, 31combining 46construction strategies 50disconnecting 49flexors 25mirroring 45posing 14rerooting 50skinning 22, 127viewing hierarchy outline 39

skinbinding 127skin point sets 22

skin point sets 22displaying colors 134editing 134

skin points 22skinning 22, 127

binding by closest point 130binding by partition set 131binding multiple objects 132detaching skin 134reattaching skin 134

slidingjoint chain along curve 107

snakesanimating with IK spline 118,122

Snap Curve To Root 113Snap Enable 88Solver Enable 88

IK spline handle 115spline solvers 81start joint flipping

in motion path 117preventing IK spline 116

start joints 35, 74, 76, 78stickiness 102Sticky 89sticky posing 102Stiffness 62

Ttips

building skeletons withgrid 32

IK chain length 35IK chains with rotate plane(RP) solvers 81

IK chains with single chain(SC) solvers 77

IK spline handle creation 118skeletons with many limbs 34using mirroring to createlimbs 43

tool optionsIK spline handle 109

transformingIK spline handle curve 109

Tricep deformation 166twist discs 80

displaying 84Twist Type 115twisting

IK spline handle 106

Vvertices 22

WWidth left deformation 154, 162Width right deformation 155, 163

Zzero rotation

IK spline joint orientation 116