maya character setup

487
CHARACTER SETUP VERSION 4

Upload: toni-ruiz-de-nicolas

Post on 19-Apr-2015

97 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Maya Character Setup

CHARACTER SETUP

VERSION 4

Page 2: Maya Character Setup

ALIAS|WAVEFRONT ■ 210 KING STREET EAST ■ TORONTO, CANADA M5A 1J7

CHARACTER SETUP 2001, Alias|Wavefront, a division of Silicon Graphics Limited.Printed in U S A. All rights reserved.

Maya 4 Documentation Team: Steven Brooks, Susan-Belle Ferguson, Lisa Ford, Claude Macri, SusanPark, Diane Ramey, and Linda Rose.

Alias is a registered trademark and Alias|Wavefront, the Alias|Wavefront logo, Conductors, Dispatcher,Trax, Wavefront IPR, VizPaint2D, and ZaP!iT are trademarks of Alias|Wavefront, a division of SiliconGraphics Limited. Maya is a registered trademark and Maya Artisan, Maya Builder, Maya Cloth, MayaComplete, Maya Fur, Maya F/X, Maya Invigorator, Maya Invigorator Lite Edition, Maya Live, Maya PaintEffects, Maya Real Time SDK,and Maya Unlimited are trademarks of Silicon Graphics, Inc., usedexclusively by Alias|Wavefront, a division of Silicon Graphics Limited. IRIX and Silicon Graphics areregistered trademarks and SGI is a trademark of Silicon Graphics, Inc.

Wacom is a trademark of Wacom Co., Ltd.

NVidia is a registered trademark and Gforce is a trademark of NVidia Corporation.

Inferno and Flame are registered trademarks of Discreet Logic Inc.

Linux is a registered trademark of Linus Torvalds.

Red Hat is a registered trademark of Red Hat, Inc. Microsoft, Windows NT, and Windows 2000 aretrademarks of Microsoft Corporation in the United States and/or other countries.

UNIX is a registered trademark, licensed exclusively through X/Open Company, Ltd.

All other product names mentioned are trademarks or registered trademarks of their respective owners.

Graph Layout Toolkit, 1992-1996 Tom Sawyer Software, Berkeley, California. All Rights Reserved.

This document contains proprietary and confidential information of Alias|Wavefront, a division of SiliconGraphics Limited, and is protected by Federal copyright law. The contents of this document may not bedisclosed to third parties, translated, copied, or duplicated in any form, in whole or in part, or by anymeans, electronic, mechanical, photocopying, recording or otherwise, without the express writtenpermission of Alias|Wavefront, a division of Silicon Graphics Limited.

The information contained in this document is subject to change without notice. Neither Alias|Wavefront, adivision of Silicon Graphics Limited, its affiliates, nor their directors, officers, employees, or agents areresponsible for punitive or multiple damages or lost profits or other special, direct, indirect, incidental, orconsequential damages including any damages resulting from loss of business arising out of or resultingfrom the use of this material, or for technical or editorial omissions made in this document.

Page 3: Maya Character Setup

USING MAYA: CHARACTER SETUP

3

CONTENTSPart 1

Part 1 Character Setup and Maya

1 INTRODUCING CHARACTER SETUP 29

Understanding character setup 30

How to use this book 31

2 CHARACTER SETUP FEATURES 33

Using deformers 34

Using skeletons 35

Skinning 36

Using constraints 36

Using character sets 37

Part 2

Part 2 Deformers

3 INTRODUCING DEFORMERS 41

Understanding deformers 41

Deformable objects, points, and sets 42

Nodes, history, and the deformation order 43

Deformer placement 44

Editing deformer set membership 46

Editing deformer sets with Relationship Editor 46

Providing exclusive deformer set membership 46

Editing deformer set membership with Edit Membership Tool 46

Painting deformer set membership 47

Pruning deformer set membership 48

Point tweaking on objects being deformed 49

Displaying and hiding intermediate objects 50

Changing an object’s deformation order 50

Showing and hiding all deformers 51

Changing evaluation performance 51

Page 4: Maya Character Setup

USING MAYA: CHARACTER SETUP

4

CONTENTS

Changing deformer performance settings 51

Editing advanced deformer creation options 52

Editing parallel blender channels 52

Creating shearing effects with shear channels 53

Modeling with deformers 53

Setup and animation with deformers 54

Editing node behavior to improve performance 54

Understanding node behavior attributes 54

Editing node behavior 55

4 USING BLEND SHAPE DEFORMERS 57

Understanding blend shape deformers 57

Target and base objects 58

Target shapes, base shapes, and blend shapes 58

Targets 58

Related MEL commands 58

Dependency graph nodes 59

Creating blend shape deformers 59

Setting creation options 59

Creating a blend shape deformer 61

Editing blend shape deformation effects 61

Using the Blend Shape editor 61

Changing Blend Shape editor slider orientation 62

Editing blend shape deformer channels 62

Editing blend shape deformer attributes 63

Scaling influence of all targets 64

Matching position, rotation, and scaling of targets 64

Blending objects with different topologies 64

Deleting a target’s object 65

Setting target weights 65

Setting keys for blend shapes 66

Saving a blend shape as a new target 66

Selecting a blend shape deformer node 67

Creating a new blend shape deformer 67

Adding target object shapes 67

Setting add options 67

Adding a target object shape 68

Page 5: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

5

Removing target object shapes 69

Setting remove options 69

Removing a target shape 69

Swapping target object shapes 70

Setting swap options 70

Swapping two target shapes 70

Deleting blend shape deformers 70

5 USING LATTICE DEFORMERS 73

Understanding lattice deformers 73

Lattices 73

Influence lattice and base lattice 73

Lattices as deformable objects 74

Lattice deformers and lattice flexors 74

Related MEL commands 74

Dependency graph nodes 74

Creating lattice deformers 74

Setting creation options 75

Creating a lattice deformer 76

Editing lattice deformation effects 76

Editing the influence lattice 77

Editing lattice deformer channels 77

Editing lattice deformer attributes 78

Editing influence lattice shape channels 79

Editing influence lattice shape attributes 79

Resetting influence lattice shape and location 80

Resetting influence lattice points and removing tweaks 80

Editing lattice deformer sets 80

Pruning lattice deformer sets 81

Changing influence lattice resolution 81

Toggling lattice shape handle (L icon) 81

Turning on or off display of lattice points 82

Showing and hiding all lattice deformers 82

Weighting lattice points to alter their influence 82

Sculpting the influence lattice 82

Freezing the lattice deformation mapping 82

Editing the base lattice 84

Grouping base and influence lattices 84

Parenting lattices to objects being deformed 84

Page 6: Maya Character Setup

USING MAYA: CHARACTER SETUP

6

CONTENTS

Deforming a lattice with other deformers 84

Assuring a smooth deformation through the base lattice 85

Improving performance 85

Changing lattice resolution performance settings 85

Deleting lattice deformers 85

Skinning with lattice deformers 86

6 USING CLUSTER DEFORMERS 87

Understanding cluster deformers 87

Related MEL commands 87

Dependency graph nodes 88

Creating cluster deformers 88

Setting creation options 88

Creating a cluster deformer 89

Editing cluster deformation effects 89

Manipulating the cluster handle (C icon) 89

Editing cluster deformer channels 90

Editing cluster attributes 90

Editing cluster deformer sets 91

Pruning cluster deformer sets 91

Editing cluster weights 92

Painting cluster weights 93

Adjusting jiggle weight by painting 99

Setting the cluster relative to the parent transform 102

Controlling the deformation percentage of the entire cluster 102

Using weighted nodes 102

Setting the location of the cluster handle 102

Deleting cluster deformers 102

7 USING JIGGLE DEFORMERS 105

Creating Jiggle deformers 105

Setting jiggle creation options 106

Editing jiggle attributes 106

Adjusting jiggle weight by painting 107

Using disk cache for jiggle animation 107

8 USING BEND NONLINEAR DEFORMERS 111

Understanding bend deformers 111

Related MEL commands 111

Page 7: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

7

Dependency graph nodes 112

Creating bend deformers 112

Setting creation options 112

Creating a bend deformer 113

Editing bend deformation effects 113

Manipulating bend deformer handles 114

Editing bend deformer channels 114

Editing bend deformer attributes 115

Deleting a bend deformer 116

9 USING FLARE NONLINEAR DEFORMERS 117

Understanding flare deformers 117

Related MEL commands 117

Dependency graph nodes 118

Creating flare deformers 118

Setting creation options 118

Creating a flare deformer 119

Editing flare deformation effects 120

Manipulating flare deformer handles 120

Editing flare deformer channels 121

Editing flare deformer attributes 122

Deleting flare deformers 123

10 USING SINE NONLINEAR DEFORMERS 125

Understanding sine deformers 125

Related MEL commands 125

Dependency graph nodes 125

Creating sine deformers 126

Setting creation options 126

Creating a sine deformer 127

Editing sine deformation effects 127

Manipulating sine deformer handles 128

Editing sine deformer channels 129

Editing sine deformer attributes 129

Deleting sine deformers 130

11 USING SQUASH NONLINEAR DEFORMERS 131

Page 8: Maya Character Setup

USING MAYA: CHARACTER SETUP

8

CONTENTS

Understanding squash deformers 131

Related MEL commands 131

Dependency graph nodes 131

Creating squash deformers 132

Setting creation options 132

Creating a squash deformer 133

Editing squash deformation effects 133

Manipulating squash deformer handles 134

Editing squash deformer channels 135

Editing squash deformer attributes 135

Deleting squash deformers 136

Examples 137

Squashing a sphere onto the ground 137

Bouncing ball setup 139

12 USING TWIST NONLINEAR DEFORMERS 143

Understanding twist deformers 143

Related MEL commands 143

Dependency graph nodes 143

Creating twist deformers 144

Setting creation options 144

Creating a twist deformer 145

Editing twist deformation effects 145

Manipulating twist deformer handles 145

Editing twist deformer channels 146

Editing twist deformer attributes 147

Deleting twist deformers 148

Example 148

Spiral staircase modeling 148

13 USING WAVE NONLINEAR DEFORMERS 149

Understanding wave deformers 149

Related MEL commands 149

Dependency graph nodes 149

Creating wave deformers 150

Setting creation options 150

Creating a wave deformer 151

Page 9: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

9

Editing wave deformation effects 151

Manipulating wave deformer handles 151

Editing wave deformer channels 152

Editing wave deformer attributes 153

Deleting wave deformers 154

Example 154

Ripple animation 154

14 USING SCULPT DEFORMERS 159

Understanding sculpt deformers 159

Sculpt sphere 159

Flip mode 159

Project mode 160

Stretch mode 160

Related MEL commands 160

Dependency graph nodes 160

Creating sculpt deformers 161

Setting creation options 161

Creating a sculpt deformer 162

Editing sculpt deformation effects 162

Manipulating the sculpt sphere 162

Manipulating the stretch origin locator 163

Editing sculpt deformer channels 163

Editing sculpt deformer attributes 164

Editing sculpt deformer sets 165

Pruning sculpt deformer sets 165

Deleting sculpt deformers 165

15 USING WIRE DEFORMERS 167

Quick start 167

Understanding wire deformers 170

Influence wires and base wires 170

Holders 170

Wire dropoff locators 171

Related MEL commands 171

Dependency graph nodes 171

Creating wire deformers 171

Specifying Wire Tool’s tool settings 172

Page 10: Maya Character Setup

USING MAYA: CHARACTER SETUP

10

CONTENTS

Creating a wire deformer without holders 173

Creating a wire deformer with holders 174

Editing wire deformation effects 175

Moving, rotating, and scaling influence wires 175

Moving, rotating, and scaling deformable objects 175

Editing the shape of influence wires 175

Moving, rotating, and scaling base wires 175

Adding influence wires 176

Removing influence wires 176

Controlling the effects of crossed influence wires 176

Resetting influence wires 177

Creating wires groups that parent influence wires to base wires 177

Editing wire deformer channels 177

Editing wire deformer attributes 178

Using wire dropoff locators for localized deformation effects 180

Smoothing jagged effects 182

Limiting the wire deformation region 182

Adding and removing holders 182

Moving, rotating, scaling holders 183

Editing the shape of holders 183

Editing wire deformer sets 183

Pruning wire deformer sets 183

Deleting wire deformers 183

16 USING WRINKLE DEFORMERS 185

Understanding wrinkle deformers 185

Radial wrinkle deformers 186

Tangential wrinkle deformers 186

Custom wrinkle deformers 186

Related MEL commands 186

Dependency graph nodes 186

Creating wrinkle deformers 187

Specifying Wrinkle Tool’s tool settings 187

Creating a wrinkle deformer 188

Editing wrinkle deformation effects 188

Manipulating the wrinkle deformer’s cluster deformer handle 188

Moving, rotating, and scaling the influence wires 189

Editing the wrinkle deformer’s cluster deformer 189

Editing the wrinkle deformer’s wire deformers 189

Page 11: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

11

Deleting wrinkle deformers 189

17 USING WRAP DEFORMERS 191

Understanding wrap deformers 191

Deformable objects 191

Wrap influence objects and wrap base objects 192

Dependency graph nodes 192

Creating wrap deformers 192

Creating objects to use as wrap influence objects 193

Setting creation options 193

Creating a wrap deformer 195

Editing wrap deformation effects 195

Moving, rotating, or scaling wrap influence objects 195

Manipulating wrap influence object points 196

Moving, rotating, or scaling deformed object 196

Editing NURBS wrap influence object channels 196

Editing polygonal wrap influence object channels 197

Editing wrap deformer channels 197

Editing wrap deformer attributes 199

Adding and removing wrap influence objects 200

Improving performance 200

Deleting wrap deformers 200

Skinning with wrap deformers 201

Examples 201

Deforming high-res sphere with low-res sphere 201

Deforming plane with five cones 202

Part 3

Part 3 Skeletons

18 INTRODUCING SKELETONS 207

Understanding skeletons 207

Editing node behavior to improve performance 208

Understanding node behavior attributes 208

Editing node behavior 208

Workflow summary 209

Page 12: Maya Character Setup

USING MAYA: CHARACTER SETUP

12

CONTENTS

19 BUILDING SKELETONS 211

Understanding skeleton construction 212

Joints and bones 213

Joint chains 214

Limbs 214

Skeleton hierarchy 215

Related MEL commands 215

Dependency graph nodes 216

Creating joint chains and limbs 216

Specifying Joint Tool’s tool settings 216

Creating a joint chain 218

Creating a limb 218

Editing joints 218

Editing joint attributes 218

Displaying a joint’s local axis 222

Orienting a joint’s local axis 222

Moving, rotating, or scaling a joint and its bone 222

Editing joint chains, limbs, and skeletons 223

Viewing skeleton hierarchy 223

Selecting joints and navigating the skeleton’s hierarchy 223

Displaying all the local axes in a limb or skeleton 223

Reorienting all local axes in limb or skeleton 223

Inserting a joint 224

Removing a joint 224

Disconnecting joints to create new skeletons 225

Connecting joints to combine two skeletons 225

Mirroring limbs or skeletons 226

Rerooting a skeleton 227

Setting display size of all joints 227

Displaying joints as boxes rather than bones 227

Setting and assuming preferred angles 228

20 POSING SKELETONS 231

Understanding skeleton posing 232

Forward kinematics (FK) 232

Inverse kinematics (IK) 233

IK handles and IK chains 234

IK solvers and systems 235

Related MEL commands 235

Page 13: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

13

Dependency graph nodes 236

Posing with forward kinematics (FK) 236

Posing with inverse kinematics (IK) 236

IK rotate plane handles and solvers 236

IK single chain handles and solvers 237

IK spline handles and solvers 237

Using IK solvers and systems 237

Creating IK solvers 237

Editing IK system attributes 238

Disabling and enabling all IK solver nodes 239

Switching between IK and FK 239

Procedures for switching between IK and FK 240

About the Graph Editor display resulting from Set IK/FK Key 242

Example of switching from FK to IK 242

21 USING IK ROTATE PLANE HANDLES 245

Understanding IK rotate plane handles 246

Start and end joints 246

Handle position control gnomon 247

End effector 247

Handle wire 248

Handle vector 248

Rotation disc 249

Joint chain plane 249

Joint chain plane indicator 250

Twist disc 250

Reference plane 251

Pole vector 251

Reference plane indicator 252

Twist indicator 252

Related MEL commands 252

Dependency graph nodes 252

Understanding IK rotate plane solver behavior 253

Creating IK rotate plane handles 253

Specifying IK Handle Tool’s tool settings 253

Creating an IK rotate plane handle 254

Posing IK rotate plane handles 254

Moving the handle 254

Page 14: Maya Character Setup

USING MAYA: CHARACTER SETUP

14

CONTENTS

Manipulating the pole vector 254

Manipulating the twist disc 255

Controlling joint chain flipping 255

Editing IK rotate plane handles 255

Editing IK rotate plane handle channels 255

Editing IK rotate plane handle attributes 256

Editing IK rotate plane solver attributes 259

Deleting IK rotate plane handles 260

22 USING IK SINGLE CHAIN HANDLES 261

Understanding IK single chain handles 262

Start and end joints 262

Handle position and orientation control gnomon 263

End effector 263

Handle wire 264

Handle vector 264

Related MEL commands 264

Dependency graph nodes 265

Understanding IK single chain solver behavior 265

Creating IK single chain handles 265

Specifying IK Handle Tool’s tool settings 265

Creating an IK single chain handle 266

Posing IK single chain handles 267

Moving the handle 267

Rotating the handle 267

Editing IK single chain handles 267

Editing IK single chain handle channels 267

Editing IK single chain handle attributes 268

Editing IK single chain solver attributes 270

Deleting IK single chain handles 271

23 USING IK SPLINE HANDLES 273

Understanding IK spline handles 273

Related MEL commands 273

Dependency graph nodes 274

Creating IK spline handles 274

Animating the joint chain 275

Setting options before creating the IK spline handle 278

Page 15: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

15

Setting attributes after creating the IK spline handle 281

Preventing unwanted start joint flipping 282

Working with soft body curves 283

Tips for working with IK spline handles 284

Working with human skeletons 284

Working with animal skeletons 285

Working with sinuous motion on skeletons 286

24 USING IK TWO BONE HANDLES 289

Quick start 290

Understanding IK two bone handles 291

Start and end joints 292

Handle position control gnomon 292

End effector 293

Handle wire 293

Handle vector 294

Rotation disc 294

Joint chain plane 295

Joint chain plane indicator 295

Twist disc 296

Reference plane 296

Pole vector 296

Reference plane indicator 297

Twist indicator 297

Related MEL commands 298

Dependency graph nodes 298

Understanding IK two bone solver behavior 298

Creating IK two bone handles 299

Setting up the IK two bone solver 299

Specifying IK Handle Tool’s tool settings 299

Creating an IK two bone handle 300

Posing IK two bone handles 300

Moving the handle 300

Manipulating the pole vector 300

Manipulating the twist disc 301

Controlling joint chain flipping 301

Editing IK two bone handles 301

Editing IK two bone handle channels 301

Page 16: Maya Character Setup

USING MAYA: CHARACTER SETUP

16

CONTENTS

Editing IK two bone handle attributes 302

Editing IK two bone solver attributes 305

Deleting IK two bone handles 305

IK two bone solver plug-in source code 306

Part 4

Part 4 Skinning

25 INTRODUCING SKINNING 309

Understanding skinning 309

Deformable objects and skin objects 309

Direct skinning methods 310

Indirect skinning methods 310

Bind pose 311

Double transformation effects 311

Editing skin point set memberships 311

Changing a skinned object’s deformation order 311

Point tweaking skinned objects 312

Editing node behavior to improve performance 313

Understanding node behavior attributes 313

Editing node behavior 314

Workflow summary 314

26 SMOOTH SKINNING 315

Understanding smooth skinning 316

Smooth skin objects and points 316

Smooth skin point weights 316

Smooth skin point sets 318

Smooth skin influence objects 318

Related MEL commands 319

Dependency graph nodes 319

Binding smooth skin 319

Setting smooth bind options 319

Checking the binding 321

Adjusting smooth skin behavior 321

Editing smooth skin 321

Page 17: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

17

Going to the bind pose 321

Overcoming problems with reaching bind pose 322

Changing the bind pose 322

Editing maximum influences 322

Editing joint smooth skin attributes 322

Editing skin cluster channels 323

Editing skin cluster attributes 324

Editing skin point weights 325

Painting smooth skin point weights 327

Mirroring smooth skin weights 331

Copying smooth skin weights 331

Resetting skin point weights to default weights 332

Holding smooth skin weights 332

Controlling smooth skin weight normalization 333

Pruning insignificant smooth skin weights 334

Removing unused influences from a smooth skinned surface 334

Batch export and import of smooth skin weight maps 334

Detaching smooth skin 337

Using smooth skin influence objects 338

Adding an influence object 339

Removing an influence object 340

Editing NURBS influence object attributes 340

Editing polygonal influence object attributes 341

Examples 341

Skinning a cylinder by smooth skinning 341

Hand muscle bulge with influence object 345

Using influence objects to prevent unwanted deformation 348

27 RIGID SKINNING 351

Understanding rigid skinning 352

Rigid skin objects and points 352

Rigid skin point weights 352

Rigid skin point sets 353

Flexors 353

Related MEL commands 354

Dependency graph nodes 354

Binding rigid skin 354

Setting rigid bind options 355

Binding skin 356

Page 18: Maya Character Setup

USING MAYA: CHARACTER SETUP

18

CONTENTS

Checking the binding 356

Adjusting rigid skin behavior 356

Editing rigid skin 356

Going to the bind pose 356

Overcoming problems with reaching the bind pose 357

Changing the bind pose 357

Editing joint cluster channels 357

Editing joint cluster attributes 358

Editing rigid skin point weights 359

Painting rigid skin point weights 361

Editing rigid skin point set membership 363

Painting rigid skin point set membership 364

Detaching rigid skin 366

Detaching and reattaching skeleton 367

Detaching and reattaching selected joints 368

Creating flexors 368

Creating all types of flexors 368

Editing joint lattice flexor effects 370

Manipulating the joint lattice flexor’s influence lattice 370

Copying joint lattice flexors 370

Editing joint lattice flexor channels 371

Editing bone lattice flexor effects 372

Manipulating bone lattice flexor’s influence lattice 372

Copying bone lattice flexors 372

Editing bone lattice flexor channels 372

Reassigning bone lattice flexor joints 373

Editing joint or bone sculpt flexor effects 374

Manipulating the sculpt sphere 374

Editing sculpt flexor channels 374

Editing joint cluster flexor effects 375

Editing with joint cluster flexor manipulators 375

Example 375

Skinning a cylinder by rigid skinning 375

Page 19: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

19

Part 5

Part 5 Constraints

28 INTRODUCING CONSTRAINTS 381

Understanding constraints 381

Constraint node behavior 382

Understanding node behavior attributes 382

Editing node behavior 383

Enabling and disabling all constraint nodes 383

Workflow summary 384

29 USING POINT CONSTRAINTS 385

Understanding point constraints 385

Constrained and target objects 385

Target point 386

Target object weights 386

Constrained object’s position 386

Locked channels 386

Related MEL commands 386

Dependency graph nodes 386

Creating point constraints 387

Setting constraint options 387

Creating a point constraint 387

Editing point constraints 387

Editing point constraint channels 388

Editing point constraint attributes 388

Adding target objects 389

Removing target objects 390

Changing target object weights 390

Animating target object weights 390

Offsetting constrained object’s position 390

Deleting point constraints 391

Using point on curve locator constraints 391

Creating point on curve locator constraint 391

Editing least squares modifier attributes 392

30 USING AIM CONSTRAINTS 395

Page 20: Maya Character Setup

USING MAYA: CHARACTER SETUP

20

CONTENTS

Understanding aim constraints 395

Constrained and target objects 395

Target point 395

Target object weights 396

Constrained object’s orientation 396

Rolling effects 397

Motion history dependence effects 397

Locked channels 398

Related MEL commands 398

Dependency graph nodes 398

Creating aim constraints 398

Setting constraint options 398

Creating an aim constraint 399

Editing aim constraints 399

Editing aim constraint channels 399

Editing aim constraint attributes 400

Adding target objects 402

Removing target objects 402

Changing target object weights 403

Preventing rolling effects 403

Controlling motion history dependence effects 403

Deleting aim constraints 404

Examples 404

Aiming a sphere at a sphere 404

Aiming a cone at a sphere 405

31 USING ORIENT CONSTRAINTS 407

Understanding orient constraints 407

Constrained and target objects 407

Target orientation 407

Target object weights 408

Constrained object’s orientation 408

Locked channels 408

Related MEL commands 408

Dependency graph nodes 408

Creating orient constraints 408

Setting constraint options 408

Creating an orient constraint 409

Page 21: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

21

Editing orient constraints 409

Editing orient constraint channels 409

Editing orient constraint attributes 410

Adding target objects 411

Removing target objects 411

Changing target object weights 411

Animating target object weights 412

Deleting orient constraints 412

32 USING SCALE CONSTRAINTS 413

Understanding scale constraints 413

Constrained and target objects 413

Target scale 414

Target object weights 414

Constrained object’s scaling 414

Locked channels 414

Related MEL commands 414

Dependency graph nodes 414

Creating scale constraints 414

Setting constraint options 414

Creating a scale constraint 415

Editing scale constraints 415

Editing scale constraint channels 415

Editing scale constraint attributes 416

Adding target objects 417

Removing target objects 417

Changing target object weights 417

Animating target object weights 418

Deleting scale constraints 418

33 USING GEOMETRY CONSTRAINTS 419

Understanding geometry constraints 419

Constrained and target objects 419

Target point 420

Target object weights 420

Constrained object’s position 420

Motion history dependence 420

Locked channels 420

Related MEL commands 420

Page 22: Maya Character Setup

USING MAYA: CHARACTER SETUP

22

CONTENTS

Dependency graph nodes 421

Creating geometry constraints 421

Setting constraint options 421

Creating a geometry constraint 421

Editing geometry constraints 422

Editing geometry constraint channels 422

Editing geometry constraint attributes 422

Adding target objects 423

Removing target objects 424

Changing target object weights 424

Animating target object weights 424

Animating the constrained object 425

Using a point constraint with a geometry constraint 425

Deleting geometry constraints 425

34 USING NORMAL CONSTRAINTS 427

Understanding normal constraints 427

Constrained and target objects 428

Target vector 428

Target object weights 428

Constrained object’s orientation 428

Rolling effects 429

Motion history dependence effects 429

Locked channels 430

Related MEL commands 430

Dependency graph nodes 430

Creating normal constraints 430

Setting constraint options 430

Creating a normal constraint 431

Editing normal constraints 432

Editing normal constraint channels 432

Editing normal constraint attributes 432

Adding target objects 434

Removing target objects 435

Changing target object weights 435

Preventing rolling effects 435

Controlling motion history dependence effects 436

Deleting normal constraints 436

Page 23: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

23

35 USING TANGENT CONSTRAINTS 437

Understanding tangent constraints 437

Constrained and target objects 438

Target vector 438

Target object weights 438

Constrained object’s orientation 438

Rolling effects 439

Motion history dependence effects 439

Locked channels 440

Related MEL commands 440

Dependency graph nodes 440

Creating tangent constraints 440

Setting constraint options 440

Creating a tangent constraint 441

Editing tangent constraints 442

Editing tangent constraint channels 442

Editing tangent constraint attributes 442

Adding target objects 444

Removing target objects 445

Changing target object weights 445

Preventing rolling effects 445

Controlling motion history dependence effects 446

Deleting tangent constraints 446

36 USING POLE VECTOR CONSTRAINTS 447

Understanding pole vector constraints 447

Target objects 448

Target point 448

Target object weights 448

Constrained pole vector’s end position 448

Locked channels 448

Related MEL commands 449

Dependency graph nodes 449

Creating pole vector constraints 449

Setting constraint options 449

Creating a pole vector constraint 450

Editing pole vector constraints 450

Editing pole vector constraint channels 450

Page 24: Maya Character Setup

USING MAYA: CHARACTER SETUP

24

CONTENTS

Editing pole vector constraint attributes 450

Adding target objects 452

Removing target objects 452

Changing target object weights 452

Offsetting constrained pole vector’s end position 453

Deleting pole vector constraints 453

Part 6

Part 6 Character Sets

37 INTRODUCING CHARACTER SETS 457

Understanding character sets 457

Character node behavior 458

Understanding node behavior attributes 458

Editing node behavior 459

Workflow summary 459

38 DEFINING CHARACTER SETS 461

Understanding character set definition 461

Related MEL commands 462

Dependency graph nodes 462

Creating character sets 462

Setting creation options 462

Creating a character set 463

Creating character sets within character sets 464

Creating subcharacter sets 464

Editing character sets 464

Selecting character sets 464

Adding channels to a character set 465

Removing channels from a character set 465

Editing character set channels 465

Editing character attributes 466

Editing a character set 466

Viewing and editing the character partition 467

Merging character sets 468

Deleting character sets 468

Page 25: Maya Character Setup

CONTENTS

USING MAYA: CHARACTER SETUP

25

39 ANIMATING CHARACTER SETS 469

Understanding animating characters 469

Setting the current character Set 470

Keyframing character sets 470

Creating expressions for character sets 470

Using motion capture for character sets 471

Page 26: Maya Character Setup

USING MAYA: CHARACTER SETUP

26

CONTENTS

Page 27: Maya Character Setup

PART 1

CHARACTER SETUP AND MAYA

Page 28: Maya Character Setup
Page 29: Maya Character Setup

CHARACTER SETUP AND MAYA CHARACTER SETUP

29

1 INTRODUCING CHARACTERSETUP

Maya offers the most sophisticated tools available for setting up characters so thatyou can then focus on the creative challenges of character animation.

Character setup by Jason Schleifer

Page 30: Maya Character Setup

CHARACTER SETUP PART 1

30

INTRODUCING CHARACTER SETUP | 1Understanding character setup

UNDERSTANDING CHARACTER SETUP

Character setup (or “rigging”) is preparing models and related objects for animation.

A model consists of one or more geometry objects (for example, NURBS orpolygonal surfaces). Preparing the model for animation includes using Maya’sdeformers, skeletons, skinning, constraints, and characters features in the Animationmenu set. This book focuses on these features. For overviews of these features, seeChapter 2, “Character Setup Features.”

This book assumes you understand Maya’s fundamental features. To get startedquickly with the several important character setup features, see the Character Setuplessons in Instant Maya.

Character setup can also involve the use of expressions (see Using Maya: Expressions)and dynamics (see Using Maya: Dynamics). As you prepare for animation, you shouldthink ahead about how you would like to render your characters (see Using Maya:Rendering). Further, during character setup you might want to take advantage ofother aspects of Maya, such as Maya Fur and Maya Cloth.

After you’ve set up your characters, you’re ready to animate them. For moreinformation about Maya’s animation features, see Using Maya: Animation.

Model of character

Model set up andready for animation

Page 31: Maya Character Setup

INTRODUCING CHARACTER SETUP | 1How to use this book

CHARACTER SETUP AND MAYA CHARACTER SETUP

31

HOW TO USE THIS BOOK

Using Maya: Character Setup is a task-oriented reference. It describes the features ofthe Animation menu set’s Deform, Skeleton, Skin, Constrain, and Character menus.(For information about the other menus in the Animation menu set, refer to UsingMaya: Animation.)

As you use the features provided by the Deform, Skeleton, Skin, Constrain, andCharacter menus, use this book as a reference to find out more about the basic tasksof character setup. For example, to find out about editing a particular attribute, lookit up in the index and then turn to the appropriate section. This book is not meant tobe read straight through, but skimming through it can provide you with an overallpicture of Maya’s character setup features.

Character setup by Jason Schleifer

Page 32: Maya Character Setup

CHARACTER SETUP PART 1

32

INTRODUCING CHARACTER SETUP | 1How to use this book

Page 33: Maya Character Setup

CHARACTER SETUP AND MAYA CHARACTER SETUP

33

2 CHARACTER SETUP FEATURES

The character setup features include deformers, skeletons, skinning, constraints, andcharacters.

Image and character setupby the Stain X team

Page 34: Maya Character Setup

CHARACTER SETUP PART 1

34

CHARACTER SETUP FEATURES | 2Using deformers

USING DEFORMERS

Deformers enable you to change the shape of objects. Deformers features areavailable in the Animation menu set’s Deform menu. For more information ondeformers, see Chapter 3, “Introducing Deformers.”

Page 35: Maya Character Setup

CHARACTER SETUP FEATURES | 2Using skeletons

CHARACTER SETUP AND MAYA CHARACTER SETUP

35

USING SKELETONS

Skeletons enable you to create hierarchical, articulated deformation effects. Skeletonsfeatures are available from the Animation menu set’s Skeleton menu. For moreinformation on skeletons, see Chapter 18, “Introducing Skeletons.” After you create askeleton, you bind it to objects you want to deform by skinning.

Page 36: Maya Character Setup

CHARACTER SETUP PART 1

36

CHARACTER SETUP FEATURES | 2Skinning

SKINNING

Skinning is setting up a model’s objects so that they can be deformed by skeletons.Skinning features are available from the Animation menu set’s Skin menu. For moreinformation on skinning, see Chapter 25, “Introducing Skinning.”

USING CONSTRAINTS

Constraints enable you to constrain the position, orientation, or scale of an object toother objects. Constraints features are available from the Animation menu set’sConstrain menu. For more information on constraints, see Chapter 28, “IntroducingConstraints.”

Page 37: Maya Character Setup

CHARACTER SETUP FEATURES | 2Using character sets

CHARACTER SETUP AND MAYA CHARACTER SETUP

37

USING CHARACTER SETS

Character sets bring together all the aspects of a character that you want to animatetogether. Character sets are available from the Animation menu set’s Charactermenu. For more information on character sets, see Chapter 37, “IntroducingCharacter Sets.”

Page 38: Maya Character Setup

CHARACTER SETUP PART 1

38

CHARACTER SETUP FEATURES | 2Using character sets

Page 39: Maya Character Setup

PART 2

DEFORMERS

Page 40: Maya Character Setup
Page 41: Maya Character Setup

DEFORMERS CHARACTER SETUP

41

3 INTRODUCING DEFORMERS

Maya’s deformers enable you to change the shape of objects.

UNDERSTANDING DEFORMERS

With Maya’s deformers, you can change the shape of objects. Maya includes thefollowing types of deformers:

• Blend shape deformers: Blend shape deformers let you change the shape of oneobject into the shapes of other objects. For more information, see Chapter 4, “UsingBlend Shape Deformers.”

• Lattice deformers: Lattice deformers enable you to deform objects with lattices. Formore information, see Chapter 5, “Using Lattice Deformers.”

• Jiggle deformers: Jiggle deformers let you cause points on a surface or curve to shakeas they move, speed up, or slow down. For more details, see Chapter 7, “Using JiggleDeformers.”

Lattice and squash deformers acting on head

Page 42: Maya Character Setup

CHARACTER SETUP PART 2

42

INTRODUCING DEFORMERS | 3Understanding deformers

• Cluster deformers: Cluster deformers enable you to control a set of an object’s points(CVs, vertices, or lattice points) with varying amounts of influence. For moreinformation, see Chapter 6, “Using Cluster Deformers.”

• Bend nonlinear deformers: Bend deformers enable you to bend an object along anarc. For more information, see Chapter 8, “Using Bend Nonlinear Deformers.”

• Flare nonlinear deformers: Flare deformers enable you to flare or taper an objectabout two axes. For more information, see Chapter 9, “Using Flare NonlinearDeformers.”

• Sine nonlinear deformers: Sine deformers enable you to change to the shape of anobject along a sine wave. For more information, see Chapter 10, “Using SineNonlinear Deformers.”

• Squash nonlinear deformers: Squash deformers enable you to squash and stretchobjects. For more information, see Chapter 11, “Using Squash Nonlinear Deformers.”

• Twist nonlinear deformers: Twist deformers enables you to twist the shape ofobjects. For more information, see Chapter 12, “Using Twist Nonlinear Deformers.”

• Wave nonlinear deformers: Wave deformers enable you to deform objects with acircular sine wave and create ripple effects. For more information, see Chapter 13,“Using Wave Nonlinear Deformers.”

• Sculpt deformers: Sculpt deformers enable you to deform objects with a sphericalinfluence object. For more information, see Chapter 14, “Using Sculpt Deformers.”

• Wire deformers: Wire deformers enable you to deform objects with one or moreNURBS curves. For more information, see Chapter 15, “Using Wire Deformers.”

• Wrinkle deformers: Wrinkle deformers enable you to create detailed wrinklingeffects by combining wire deformers with a cluster deformer. For more information,see Chapter 16, “Using Wrinkle Deformers.”

• Wrap deformers: Wrap deformers enable you to deform objects with NURBSsurfaces, NURBS curves, or polygonal surfaces (meshes). For more information, seeChapter 17, “Using Wrap Deformers.”

Note that other software packages use the terms “modifiers” and “space warp” torefer to what Maya calls deformers.

Deformable objects, points, and setsA deformer can create deformation effects on any deformable object. A deformableobject is any object whose structure is defined by control points. Control pointsinclude NURBS control vertices (CVs), polygonal vertices, and lattice points. NURBScurves, NURBS surfaces, polygonal surfaces (meshes), and lattices are all deformableobjects. For brevity, control points are often called points, and the control points of adeformable object are often called deformable object points.

Maya Unlimited’s subdivision surfaces are deformable. For more information, seeUsing Maya: Subdivision Surfaces Modeling.

Using Maya’s API development tools, you can define your own, custom deformableobjects. For more information, see the online Maya Developer’s Tool Kitdocumentation.

A character’s model can consist of one deformable object (for example, a largepolygonal surface) or of groups of deformable objects (for example, groups ofNURBS surfaces).

Page 43: Maya Character Setup

INTRODUCING DEFORMERS | 3Understanding deformers

DEFORMERS CHARACTER SETUP

43

When you create a deformer, Maya puts all the deformable object points that thedeformer can affect into a set, called a deformer set. You can edit this set; for moreinformation, see "Editing deformer set membership" on page 46.

Nodes, history, and the deformation orderOne way to think about a scene in Maya is that it is a web of nodes. Each nodeconsists of specific information and actions associated with that information. Eachnode can receive, hold, and provide information by means of attributes. A node’sattributes can connect to the attributes of other nodes, thus forming the web ofnodes. As you use Maya’s interface, Maya creates, connects, evaluates, and destroysnodes. At any moment, what you see in the workspace is the result of how Maya iscontinuously evaluating the web of nodes that underlies and comprises your work.In short, underlying everything you do in Maya lies Maya’s dynamic, node-basedarchitecture.

Dependency graphMaya’s dependency graph provides a representation of the relationships betweenconnected nodes. To view the dependency graph, you can use the Hypergraph (formore information, see Using Maya: Essentials).

For any particular node, the dependency graph shows the node’s history. The node’shistory includes all the nodes that are connected to it, or are connected to nodes thatare connected to it, and so on. For discussing a node’s history, the terms upstreamand downstream can be useful. Upstream nodes are nodes that can be evaluatedbefore the node itself is evaluated, and downstream nodes are nodes that can beevaluated only after the node itself is evaluated. Note that, from Maya’s perspective,a node’s history includes its future as well as its past.

Deformation orderIt’s important to keep a node’s history in mind when using deformers. Thedeformation effect provided by a particular deformer can depend on where Mayaplaces the deformer in the node’s history. The reason is that the deformation effectcan vary depending on the order in which Maya evaluates the deformations. Theorder in which Maya evaluates deformations is called the deformation order.

In general, you can apply as many deformers to an object as you like. Because theeffects depend on the order in which the deformers deform the object, you can createa great variety of effects. For example, for a NURBS cylinder, if you create a benddeformer and then create a sine deformer, the result will be different than if you firstcreated the sine deformer and then created the bend deformer.

Page 44: Maya Character Setup

CHARACTER SETUP PART 2

44

INTRODUCING DEFORMERS | 3Understanding deformers

In general, by default, the order in which deformers act on a deformable object’soriginal shape is the order in which the deformers were created. The deformerscreated first act on the original shape first, and the deformers created last act on theoriginal shape last.

Deformation chainConsider the history of a NURBS sphere being deformed by one or more deformers.In the dependency graph, the original (undeformed) shape node(nurbsSphereShapenOrig) would follow immediately after the make node(makeNurbSpheren). Note that Maya sometimes refers to an object displayed as theoriginal shape node an “intermediate object.” Maya places a tweak node (tweakn)after the original shape node (for more information on tweak nodes, see "Pointtweaking on objects being deformed" on page 49). After the tweak node, Mayaplaces the deformer nodes that carry out deformations, typically in the order that thedeformers were created. The order in which Maya places the deformer nodesdownstream from the original shape node determines the deformation order.However, note that you can control deformer placement (see "Deformer placement"on page 44) when you create a deformer, and change the deformation order (see"Changing an object’s deformation order" on page 50) after creation. Finally, afterthe deformer nodes, Maya places a shape node that provides the final (deformed)shape of the sphere (nurbsSphereShapen).

The sphere’s history determines the deformation order. Because Maya evaluates thesphere starting from the make node and working all the way through in order to thefinal (deformed) shape node, the node connections involved are said to provide a“deformation chain.”

Deformer placementWhen you create a deformer, you can specify the deformer’s placement in thedeformable object’s deformation order (see "Editing advanced deformer creationoptions" on page 52). The placement can affect the deformer’s effect andperformance.

Maya includes the following deformation order placement options:

• Default placement

Bend followed by sine Sine followed by bendUndeformed cylinder

Page 45: Maya Character Setup

INTRODUCING DEFORMERS | 3Understanding deformers

DEFORMERS CHARACTER SETUP

45

• Before placement

• After placement

• Split placement

• Parallel placement

• Front Of Chain placement

Note that after you create a deformer, you can edit a deformer node’s placement bychanging the deformation order (see "Changing an object’s deformation order" onpage 50).

Default placementWith Default placement, Maya places the deformer just upstream of (before) thedeformed shape.

Default placement is the same as Before placement unless the deformer is going toact on a shape node with no history. In this case, the placement will be the same asAfter placement.

When you create a number of deformers for an object with Default placement, theresult is a deformation chain whose order is the same as the order in which youcreated the deformers.

Before placementWith Before placement, Maya places the deformer immediately upstream of thedeformable object’s deformed shape. In the object’s history, the deformer will beplaced right before the deformed shape.

After placementWith After placement, Maya places the deformer immediately downstream of (after)the deformable object. You would use After placement to create an intermediatedeformed shape somewhere in the middle of the object’s history. Note that withAfter placement, the original shape of the object is not hidden.

Split placementWith Split placement, Maya splits the deformation into two deformation chains. Youwould use Split placement to deform an object in two ways at the same time,creating two final shapes that originate from the same original shape.

Parallel placementWith Parallel placement, Maya places the deformer in parallel with the existingupstream nodes in the object’s history, and then blends the effects provided by theexisting upstream nodes and the deformer. A parallel blender node (default name:parallelBlendern) that blends the effects of the existing upstream nodes and the newdeformer will be placed right before the final shape.

Parallel placement is useful when you want to blend the influences of severaldeformers acting on an object. For example, if for some object you create a benddeformer with Default placement, and then create a Sine deformer with Parallelplacement, you can directly control how much influence each deformer has on theobject, blending the influence of each deformer. The parallelBlender node provides aweight channel for each deformer. You can edit the channels of the parallel blendernode; for more information, see "Editing parallel blender channels" on page 52.

Page 46: Maya Character Setup

CHARACTER SETUP PART 2

46

INTRODUCING DEFORMERS | 3Editing deformer set membership

Front Of Chain placementFront Of Chain placement is available as a creation option for blend shape deformersonly. A typical use of blend shape deformers is to create deformation effects on askinned character. Front Of Chain placement assures that blend shape deformationeffects occur before the deformation effects provided by the skinning occur. If theeffects were to occur afterwards, undesirable double transformation effects couldoccur when you pose the skeleton. (For more information on double transformationeffects, see "Double transformation effects" on page 311).

With Front Of Chain placement, you put the deformer in front of all the deformerand skinning nodes in the deformable object’s shape history, but not ahead of anytweak nodes. (Tweak nodes enable you to do point tweaking on objects beingdeformed; for more information, see "Point tweaking on objects being deformed" onpage 49.)

Note that the input to the deformer will be the upstream shape rather than thevisible downstream shape. Consequently, when you create the deformer, thedeformation effect will be most intuitive if the downstream deformers are in theirreset positions, using HasNoEffect node states. (For more information about nodestates, see "Editing node behavior to improve performance" on page 54).

EDITING DEFORMER SET MEMBERSHIP

Maya provides several ways that you can edit deformer set membership. You canedit deformer set membership with the Relationship Editor. The Relationship Editorlists all the deformer sets in your scene, and lists all the points in each set. With theRelationship Editor, you can also provide for exclusive deformer set membership sothat a point can be in only one set. You can directly edit deformer set membershipsby picking deformable object points with the Edit Membership Tool. Further, youcan paint deformer set memberships interactively with the Paint Set MembershipTool. This tool provides an intuitive, easy-to-use way to edit set membership. For thecluster, sculpt, lattice, and wire deformers only, you can quickly prune all pointsfrom the deformer set.

Editing deformer set membership is described in the following topics:

Editing deformer sets with Relationship EditorTo edit deformer sets with the Relationship Editor, select Window > RelationshipEditors > Deformer Sets. For more information about sets and using the RelationshipEditor, refer to Using Maya: Essentials.

Providing exclusive deformer set membershipThe exclusive option helps you to create non-overlapping deformations by ensuringthat the sets belonging to each deformer are mutually exclusive. The mutualexclusivity of the deformers is accomplished by placing the deformer’s sets into apartition. The partition guarantees that the sets will continue to be mutuallyexclusive even if you edit the membership of the sets. To put deformer sets into apartition, use the Relationship Editor. For more information on sets, partitions, andthe Relationship Editor, refer to Using Maya: Essentials.

Editing deformer set membership with Edit Membership ToolYou can directly edit deformer set membership with the Edit Membership Tool.

Page 47: Maya Character Setup

INTRODUCING DEFORMERS | 3Editing deformer set membership

DEFORMERS CHARACTER SETUP

47

To edit deformer set membership with the Edit Membership Tool:

1 Select Deform > Edit Membership Tool.

2 Select the deformer you want to edit.

3 Go into component selection mode (click the select by component type icon).

The members of the deformer set whose joint you selected are displayed in yellow.This set is the currently selected set. Members of other sets are displayed in othercolors. Points displayed in dark red are not in a set.

4 To add points to the currently selected set, select them while pressing the Shift keyand left mouse button, and then release the mouse button.

The selected points are now displayed in yellow, indicating they are in the currentlyselected set.

5 To remove points from the currently selected set, select them while pressing the Ctrlkey and the left mouse button, and then release the mouse button.

The selected points are now displayed in dark red, indicating they are currently notin a set.

6 Click the Select Tool to quit the editing mode.

Painting deformer set membershipUsing the Paint Set Membership Tool you can modify which of a deformable object’spoints (for example, CVs or vertices) belong to multiple deformer sets by paintingthe points you want added to, transferred to, or removed from the set.

To modify which vertices belong to a set:

1 Select a deformed object (or a skinned object).

2 Go into smooth shading mode by selecting Shading > Smooth Shade All (defaulthotkey: 5).

3 Select Deform > Paint Set Membership Tool ❐ and define tool settings, if required.For details on defining tool settings, see "Setting Paint Set Membership Tool options"on page 48.

4 Select the set you want to modify, as follows:

• In the Tool Settings editor (Deform > Paint Set Membership Tool ❐), click theSetMembership tab. In the Set Membership section, click the set in the Select Set ToModify box. The selected set name appears in the Set To Modify box.

or

• Use the Pick Color Mode hotkey (default hotkey: /) to select the set on the surface.Hold down the hotkey, click on the set you want to paint (click anywhere on thecolored area), then release the hotkey.

5 Select an operation and define the tool settings, if required. For details, see "SettingPaint Set Membership Tool options" on page 48.

6 Drag over the CVs or vertices you want to add to, transfer to, or remove from theselected set.

Page 48: Maya Character Setup

CHARACTER SETUP PART 2

48

INTRODUCING DEFORMERS | 3Editing deformer set membership

Setting Paint Set Membership Tool optionsBefore you paint set membership, set the options for the Paint Set Membership Tool.The settings determine the effect you will achieve when you paint with the tool. Youcan define the following tool settings:

• brush stamp profile

• paint set membership operation

• set to modify

For details on defining settings, see Using Maya: Painting.

To define Paint Set Membership Tool options:

Select the Paint Set Membership Tool and open the Tool Settings editor(Deform > Paint Set Membership Tool ❐).

Selecting the paint set membership operation

Add If the object includes multiple deformer sets, the Add operation leaves the paintedCVs or vertices in the their current sets and adds them to the selected set.

If the object is a rigid skin object, the Add operation does the same thing as theTransfer operation: removes the painted CVs or vertices from their current set andadds them to the selected set.

Transfer If the object includes multiple deformer sets, the Transfer operation removes thepainted CVs or vertices from their current sets and adds them to the selected set.

If the object is a rigid skin object, the Transfer operation does the same thing as theAdd operation: removes the painted CVs or vertices from their current set and addsthem to the selected set.

Remove The Remove operation removes the painted CVs or vertices from the sets theybelong to, so the CVs vertices are not influenced by any deformers or joints.

Selecting the set to modify

Select Set ToModify Click the name of the set you want to add to, transfer to, or remove from. This is just

one way of selecting the set. There are two others. For details, see "Painting deformerset membership" on page 47.

Set To Modify The name of the set you select appears in this box.

Pruning deformer set membershipYou can remove unaffected points from a deformer set based on which points thedeformer is affecting. Use this to avoid unnecessary calculations for points that arenot being affected by the deformation.

To prune deformer set membership:

1 Select deformable objects whose currently unaffected points you want to prune fromthe deformation.

2 Select Deform > Prune Membership, and from the cascading menu select thedeformer whose set you want to prune.

Page 49: Maya Character Setup

INTRODUCING DEFORMERS | 3Point tweaking on objects being deformed

DEFORMERS CHARACTER SETUP

49

The pruning operation considers only the current position of each component in theundeformed and deformed versions of the geometry affected by the specifieddeformation. If you have animated attributes of your deformation, the pruningoperation is performed based only on the current attribute values. This means thatcomponents that are potentially affected at other frames of your animation might getpruned out if they are unaffected at the current frame.

Since a typical blend shape operation has weights of 0.0 for some target shapes atany point in time, this operation is especially dangerous when applied to blendshape deformations. For this reason, there is no menu item provided to prunemembership for blend shape deformers. (You can still use this function through thecommand line.)

POINT TWEAKING ON OBJECTS BEING DEFORMED

Point tweaking is moving or setting keys on the individual points of an object. Whenyou tweak the points of an object for which you have already created somedeformers, Maya automatically prevents the unexpected effects that can occur whenyou use deformers. Maya does so by applying the tweaks to the object beforeapplying any deformations to the object.

When you create deformers, Maya creates tweak nodes as well as deformationnodes. In the dependency graph, Maya places the tweak nodes upstream from thedeformation nodes so that any point tweaking is carried out before the evaluation ofthe deformation nodes. This placement means that, by default, an object’sdeformation order includes point tweaking first, and then includes deformations inthe order that the deformers were created.

Note that when the deformation order includes point tweaking first (the default),CVs may not move in the same direction as the Move tool’s manipulator if theattributes of the deformers do not have their initial (reset) values. If you would liketo change this, reset the deformers to have their initial (reset) values. Alternatively,you could change the deformation order so that Maya applies the point tweakingafter applying deformations. However, if Maya applies point tweaking afterapplying deformations, you may get unexpected effects when you use thedeformers.

If you do some point tweaking and then want to check how the object deformswithout the tweaking, you can disable the tweak node.

To change point tweaking’s deformation order:

1 In the scene, move the pointer to the object being deformed and press the rightmouse button.

A marking menu is displayed.

2 From the marking menu, select Inputs > Complete List.

Avoid changing the number of points after you create deformers

You can do point tweaking on objects after you have created deformers forthem, but you should avoid changing the number of the object’s points (forexample, CVs, vertices, or lattice points). Changing the number of pointscan lead to unexpected deformation effects.

Page 50: Maya Character Setup

CHARACTER SETUP PART 2

50

INTRODUCING DEFORMERS | 3Displaying and hiding intermediate objects

The List of history operations window is displayed for the selected object.

3 Move the pointer over the name of the tweak node (default name: tweakn) whoseorder you want to change. Press the middle mouse button, drag over the name of theoperation that is where you want point tweaking to take place, and release themouse button.

To disable a tweak node:

1 Open the tweak node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Set Node State to HasNoEffect.

To enable a tweak node:

1 Open the tweak node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Set Node State to Normal.

DISPLAYING AND HIDING INTERMEDIATE OBJECTS

An intermediate object is an object’s shape prior to its deformation. After youdeform an object, you can still view its prior shape by displaying its intermediateobject. Comparing the intermediate object with the deformed object can be a usefulway to judge the effect of a deformation.

To display intermediate deformation object(s):

1 Select the object(s) being deformed.

2 Select Deform > Display Intermediate Objects.

To hide intermediate deformation object(s):

1 Select the intermediate object(s) being displayed.

2 Select Deform > Hide Intermediate Objects.

CHANGING AN OBJECT’S DEFORMATION ORDER

When you use more than one deformer to deform an object, the final effect of thedeformations can vary depending on the order in which the deformations occur. Bydefault, the deformations occur in the order that the deformers were created for theobject. The deformer created first deforms the object first, and the deformer createdlast deforms the object last. However, you can change, or re-order, the deformationorder to get the effect you want.

To change deformation order:

1 In the scene, move the pointer to the object being deformed and press the rightmouse button.

A marking menu is displayed.

Page 51: Maya Character Setup

INTRODUCING DEFORMERS | 3Showing and hiding all deformers

DEFORMERS CHARACTER SETUP

51

2 From the marking menu, select Inputs > Complete List.

The List of history operations window is displayed for the selected object.

3 Move the pointer over the name of the deformer whose order you want to change.Press the middle mouse button, drag over the name of the operation you want thedeformer to precede, and release the mouse button.

SHOWING AND HIDING ALL DEFORMERS

To show all deformers:

1 Select Display > Show > Show Deformers > All.

Note that you can also show all lattices, sculpt influence objects, cluster handles,nonlinear deformer handles, or wrap influence objects.

To hide all deformers:

1 Select Display > Hide > Hide Deformers > All.

Note that you can also hide all lattices, sculpt influence objects, cluster handles,nonlinear deformer handles, or wrap influence objects.

CHANGING EVALUATION PERFORMANCE

You can change dependency graph node evaluation performance so that the scenerefreshes right after you drag the mouse, or only when you tell the scene to refresh,or only when you release the mouse button. Changing the evaluation performancecan improve scene display speed if you have many complex objects being deformed.

To change dependency graph node performance:

1 Select Window > General Editors > Performance Settings.

2 In the Performance Settings window, note the Dependency Graph Evaluationsection.

3 Click one of the Refresh On options:

Drag Specifies that the scene display refreshes right after you drag the mouse.

Demand Specifies that the scene display refreshes only when you tell the scene to refresh.

Release Specifies that the scene display refreshes when you release the mouse button.

4 When you’re done, click Close.

CHANGING DEFORMER PERFORMANCE SETTINGS

To change deformer performance settings:

1 Select Window > Settings/Preferences > Performance Settings.

2 In the Performance Settings window, note the Deformers section.

Page 52: Maya Character Setup

CHARACTER SETUP PART 2

52

INTRODUCING DEFORMERS | 3Editing advanced deformer creation options

You can click the performance of the following to On, Off, or Interactive: sculptinfluence objects (Sculpts), lattice influence objects (Lattices), wire influence objects(Wires), blend shapes, and clusters. You can set Cluster Resolution to Per Node,Global, or Interactive. You can set the Lattice Resolution to Per Node, Global, orInteractive.

3 When you’re done, click Close.

EDITING ADVANCED DEFORMER CREATION OPTIONS

All of Maya’s deformers include advanced creation options. These options specifythe deformation order placement of the deformer, and the characteristics of thedeformer set.

To understand these advanced creation options, you need to be familiar with thefollowing topics:

• "Deformable objects, points, and sets" on page 42

• "Nodes, history, and the deformation order" on page 43

• "Deformer placement" on page 44

To set advanced creation options:

1 Open the creation options window for the deformer you want to create (selectDeform > Create Deformer ❒).

2 Click the Advanced tab to set the advanced creation options:

Advanced

DeformationOrder Specifies the placement of the deformer node in the deformable object’s history. For

more information about deformer placement, see "Deformer placement" on page 44.

Exclusive Specifies whether the deformer set is in a partition. Sets in a partition can have nooverlapping members. Check on or off (default is off). If on, the Exclusive Partitionand Existing Partitions options become available.

Partition To Use Lists any existing partitions, and a default selection Create New Partition. If youselect Create New Partition, you can edit the New Partition Name field to specify thename of a new partition. (Available if Exclusive is on.)

New PartitionName Specifies the name of a new partition that will include the deformer set. The

suggested partition name is deformPartition, which will be created if it does notalready exist. Typically, you might put all your exclusive deformer sets in thepartition named deformParition. However, you can create as many partitions as youlike, and name them whatever you want. (Available if Exclusive is on.)

EDITING PARALLEL BLENDER CHANNELS

In some object’s deformation chain, when the placement of one (or more) of thedeformers is set to Parallel, you can blend the influences of the deformers in thechain in parallel.

Page 53: Maya Character Setup

INTRODUCING DEFORMERS | 3Creating shearing effects with shear channels

DEFORMERS CHARACTER SETUP

53

To edit channels with the Channel Box:

1 Select a parallel blender node (default name: parallelBlendern).

One quick way to select the blend shape deformer node is to select the object beingdeformed, and then select the parallel blender node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Select values from 0 to 1. You can also entervalues from -2 to 2. A value of 2 would double the overall deformation effect. Anegative value would invert the effect. Default is 1.

Weight[n] Specifies the influence of one of the deformers in the deformation chain. A value 0specifies that the target has no influence; a value of 1 specifies that the target hasmaximum influence.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives finer control,and pressing the Shift key gives you coarser control.

CREATING SHEARING EFFECTS WITH SHEAR CHANNELS

To add shear channels:

1 Select the deformable object.

2 Select Window > General Editors > Channel Control.

The Channel Control window is displayed. In the Non Keyable pane, note thefollowing attributes: shearXY, shearXZ, and shearYZ.

3 For each attribute, select it, and click the << Move button.

The attributes are added to the Keyable pane. In the Channel Box, the channels forthe object now include Shear XY, Shear XZ, and Shear YZ. You can now createshearing effects by using the Channel Box.

4 To close the Channel Control window, click the Close button.

MODELING WITH DEFORMERS

You can use deformers as modeling tools for shaping NURBS or polygonal objects.When you are finished modeling, be sure delete the deformer along with the rest ofthe object’s history. Note that in the context of modeling, an object’s history can becalled its “construction history.”

To delete an object’s history:

1 Select the object.

Page 54: Maya Character Setup

CHARACTER SETUP PART 2

54

INTRODUCING DEFORMERS | 3Setup and animation with deformers

2 Select Edit > Delete By Type > History.

SETUP AND ANIMATION WITH DEFORMERS

You can set keys on any of deformer’s keyable attributes (or channels). Keys can beset in the Channel Box, the Timeline, the Graph Editor, the Dope Sheet, or by usingMaya Embedded Language (MEL) commands.

When setting up characters, you can create attributes that drive deformer attributesby adding new attributes, and then defining relationships between the newattributes and the deformer attributes.

Add new attributes from the Add Attribute window (Modify > Add Attribute).Define relationships between attributes with the Connection Editor (Window >General Editors > Connection Editor), the Set Driven Key window (Animate > SetDriven Key > Set ❒), or by writing expressions in the Expression Editor (Window >Animation Editors > Expression Editor).

This book refers to channels as keyable attributes that are displayed in the ChannelBox. You can use the Channel Control editor to specify that a node’s animatable(potentially keyable) attributes that are not in the Channel Box by default bedisplayed as channels in the Channel Box. Note that it’s possible to put non-animatable (and therefore non-keyable) attributes into the Channel Box, but ingeneral all channels in the Channel Box are keyable attributes.

For more information on Maya’s animation features, refer to Using Maya: Animation.

EDITING NODE BEHAVIOR TO IMPROVE PERFORMANCE

For each object in your scene, if there has been any change to its node or any of thenodes in its history (its upstream or downstream nodes), Maya will evaluate thenodes and update the display. A deformed object has more nodes in its history thanan undeformed object. If you have many deformed objects in your scene, you canimprove the display performance by editing the node behavior attributes of thedeformed object nodes.

Understanding node behavior attributesThe node behavior attributes include Caching and Node State.

Caching Specifies that Maya store the results of upstream evaluations, and then provide thoseresults to the node. This saves Maya from having to re-evaluate the upstream nodesevery time the node needs the results. If there are no changes to the upstream nodes,then this setting can improve display performance with no loss of results. However,note that caching uses more memory than would otherwise be used, which mightadversely affect performance. Also, if there are changes to upstream nodes, morememory is allocated and then freed during each deformation, which might alsoadversely affect display performance.

Node State Set Node State to Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, or Waiting-Blocking.

Normal Specifies that Maya evaluate and display the deformation. Maya will evaluate thenode as usual. This is the default.

Page 55: Maya Character Setup

INTRODUCING DEFORMERS | 3Editing node behavior to improve performance

DEFORMERS CHARACTER SETUP

55

HasNoEffect Specifies that Maya prevent the deformation, but display the object. Maya willevaluate the nodes in the node’s history, but not the node itself.

Blocking Specifies that Maya prevent the deformation, and not display the object. Maya willnot report the results of any evaluations of upstream nodes to this node.

Waiting-Normal (For Maya internal use only.) Specifies that if the dependency graph evaluationrefresh performance setting (Window > Settings/Preferences > PerformanceSettings) is set to Demand or Release, the node takes the Normal state when youclick Update or release the mouse button.

Waiting-HasNoEffect (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node takes theHasNoEffect state when you click Update or release the mouse button.

Waiting-Blocking (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theBlocking state when you click Update or release the mouse button.

Editing node behavior

To set node behavior:

1 Open the node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Click Caching on or off.

4 Select the Node State as Normal, HasNoEffect, or Blocking. (The Waiting-Normal,Waiting-HasNoEffect, and Waiting-Blocking states are for Maya’s internal use.)

5 Close the Attribute Editor.

Page 56: Maya Character Setup

CHARACTER SETUP PART 2

56

INTRODUCING DEFORMERS | 3Editing node behavior to improve performance

Page 57: Maya Character Setup

DEFORMERS CHARACTER SETUP

57

4 USING BLEND SHAPEDEFORMERS

With blend shape deformers, you change the shape of one object into the shapes ofother objects.

UNDERSTANDING BLEND SHAPE DEFORMERS

Blend shape deformers enable you to deform a surface into the shapes of othersurfaces. You can blend shapes with the same or different number of vertices (orCVs). In character setup, a typical use of a blend shape deformer is to set up posesfor facial animation.

Page 58: Maya Character Setup

CHARACTER SETUP PART 2

58

USING BLEND SHAPE DEFORMERS | 4Understanding blend shape deformers

Unlike the other deformers, the blend shape deformer has an editor that enables youto control all the blend shape deformers in your scene. You can use the editor tocontrol the influence of the targets of each blend shape deformer, create new blendshape deformers, set keys, and so on.

Note that other software packages use the terms “morph,” “morphing,” and “shapeinterp” to refer to what Maya provides with blend shape deformers.

Target and base objectsWhen creating a blend shape deformer, you identify one or more objects whoseshapes you want to use to deform the shape of some other object. Objects whoseshapes you want to use to deform the shape of another object are called targetobjects, and the object being deformed is called the base object.

Target shapes, base shapes, and blend shapesThe shapes of the target objects are called target shapes, or target object shapes. Thebase object’s resulting deformed shape is called the blend shape, whereas its originalshape is called the base shape, or base object shape.

TargetsA blend shape deformer includes a keyable attribute (channel) for evaluating eachtarget object shape’s influence on the base object’s shape. These attributes are calledtargets, though by default they are named after the various target objects. Each targetspecifies the influence, or weight, of a given shape independently of the othertargets. Depending on how you create or edit the blend shape deformer, however, atarget can represent the influence of a series of target object shapes instead of justone shape.

Related MEL commandsMEL commands related to blend shape deformers include the following:

• blendShape

Page 59: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Creating blend shape deformers

DEFORMERS CHARACTER SETUP

59

• blendShapeEditor

• blendShapePanel

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a blend shape deformer can include the following:

• Blend shape deformer node, which is the algorithm node for the blend shapedeformer (default name: blendShapen).

• Blend shape set node (default name: blendShapenSet).

• Tweak node (default name: tweakn).

For more information about these nodes, refer to the online Node and AttributeReference.

CREATING BLEND SHAPE DEFORMERS

When creating blend shape deformers, you can first set creation options and thencreate a deformer, or you can immediately create a deformer with the currentcreation options. If you’re not sure what the current creation options are, checkingthem before you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a blend shape deformer now, select one or moredeformable objects for target object shape(s), and then select one deformable objectas the base object shape.

2 Select Deform > Create Blend Shape ❒.

3 The BlendShape Options window is displayed.

4 Click the Basic and Advanced tabs to set the creation options:

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 60: Maya Character Setup

CHARACTER SETUP PART 2

60

USING BLEND SHAPE DEFORMERS | 4Creating blend shape deformers

Basic

BlendShapeNode Specifies the name of the blend shape deformer (the blend shape deformer algorithm

node). You might want to use a name that reminds you of the role of the blend shapedeformation (for example, lipSync). If you don’t specify a name, Maya provides thedefault name blendShapen.

Envelope Specifies the deformation scale factor. Use the slider to specify values from 0.0000 to1.0000. Default is 1.0000.

Origin Specifies whether the blend shape will be relative to the base object shape’s position,rotation, and scale. Click Local or World.

Local Local will blend the base object shape to the target object shape(s) while ignoringdifferences in position, rotation, and scale between the base object and the targetobject(s). For facial animation setup, you would typically want to select Local. Ingeneral, Local is useful when you want to have your target object(s) in variousseparate positions for easy viewing but don’t want their positions to affect thedeformation.

World World will blend the base object shape to the target object shape(s), taking intoaccount any differences in position, rotation, and scale between the target objectshape(s).

Click Local or World. Default is Local.

Target ShapeOptions

Includes the In-Between, Check Topology, and Delete Targets options.

In-Between Specifies whether the blending will be in series or in parallel.

If on, the blending will be in series. Shape transitions will occur in the order in whichyou selected the target shape(s). The effect will be that the blend shape will be able tochange from the first target object shape, to the second, and so on, back and forththrough the series of target object shapes chained together as “in-between” shapes.

If off, the blending will occur in parallel. Each target object shape can influence theblending simultaneously in a parallel fashion rather than one after another in a seriesfashion. Typically, for facial animation setup, you would want In-Between off so thatyou can have a variety of basic facial expressions that form the basis of all thepossible expressions. Because the blending is in parallel, you can control theinfluence of each basic expression at any moment to get a nearly infinite variety ofhighly nuanced expressions.

Click on or off. Default is off.

CheckTopology Specifies whether to check if the base shape and the target shape(s) have the same

topology. For example, if using NURBS objects, you could check if all the shapeshave the same number of CVs. Click on or off. Default is on.

Delete Targets Specifies whether to delete the target shape(s) after creation. Deleting target shapescan be useful if you don’t need to see or manipulate the target shape(s), and want toimprove display performance. However, be sure to save a copy of the target shapesin case you later decide you need to adjust them. Default is off.

Page 61: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

DEFORMERS CHARACTER SETUP

61

Advanced

See "Editing advanced deformer creation options" on page 52. Note that the defaultFront Of Chain option is only available for blend shape deformers.

• Click Create if you want to create a blend shape deformer now.

or

• Click Save to save the creation options.

or

• Click Reset to reset to the default creation options.

or

• Click Close to close the BlendShape Options window.

Creating a blend shape deformer

To create a blend shape deformer:

1 Select one or more deformable objects for target object shape(s), and then select onedeformable object as the base object shape.

2 Select Deform > Create Blend Shape.

A blend shape deformer is created with the currently set creation options.

To create deformation effects:

1 Edit the blend shape deformer channels and attributes.

2 Use the Blend Shape editor (Window > Animation Editors > Blend Shape) to controlthe influence of the target object shapes.

For more information, see the next section.

EDITING BLEND SHAPE DEFORMATION EFFECTS

You can edit blend shape deformation effects as described in the following topics:

Using the Blend Shape editorThe Blend Shape editor provides you with controls for all of the blend shapedeformers in your scene.

To use the Blend Shape editor:

1 Select Window > Animation Editors > Blend Shape.

The Blend Shape editor is displayed. The editor includes a section for each blendshape deformer in your scene.

2 Click on the name of the blend shape deformer you want to control (default name:blendShapen).

The editor expands to show controls for the selected blend shape deformer.

Page 62: Maya Character Setup

CHARACTER SETUP PART 2

62

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

Target weightsliders Each slider provides a way for you to set the target weight quickly. By default, each

target slider sets values from the minimum value (by default, 0.000) to the maximumvalue (by default, 1.000). The current weight is displayed in the target weight boxbelow the target slider.

You can change the orientation of the sliders. For more information, see "ChangingBlend Shape editor slider orientation" on page 62.

Target weightboxes Each box displays the current weight for each target. By default, a target weight can

range from the minimum value (by default, 0.000) to the maximum value (bydefault, 1.000). As you change values, the target weight sliders update according tothe value you enter in the target weight boxes.

You can enter values from -10.000 to 10.000 to invert or amplify the target’sinfluence. If you enter a value greater than the current maximum value (by default,1.000), the maximum value changes to double the value or to 10.000 if double thevalue is greater than 10.000. If you enter a value less than the current minimumvalue (by default, 0.000), the minimum value changes to double the value or to -10.000 if double the value is less than -10.000. When you enter values less than thecurrent minimum or greater than the current maximum, the target weight sliderschange to reflect the new range of values.

Target names By default, the target name is the name of a target object (for example,nurbsSphere1). If you prefer, enter some other name for the target name. Entering anew target name does not change the name of the target object. Changing the targetname is useful if you want to give a more appropriate target name after you’vecreated the blend shape deformer.

New button Click to create a new blend shape deformer. Clicking New is the same as selectingDeform > Create Blend Shape.

Add button Bake the selected base shape and add it as a target.

Key All button Key all weights at their current values.

Reset All button Set all weight values to zero.

Select button Select the blend shape deformer node.

Key buttons Key the current value, or drag and drop on the Timeline to set an exclusive key.

Changing Blend Shape editor slider orientationYou can control the orientation of the sliders in the Blend Shape window (Window >Animation Editors > Blend Shape). The sliders can be arranged vertically orhorizontally, whichever is most intuitive for you. To orient the sliders vertically,select Options > Orientation > Vertical (the default). To orient the slidershorizontally, select Options > Orientation > Horizontal.

Editing blend shape deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a blend shape deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing blend shape deformerattributes" on page 63).

Page 63: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

DEFORMERS CHARACTER SETUP

63

To edit channels with the Channel Box:

1 Select a blend shape deformer node (default name: blendShapen).

One quick way to select the blend shape deformer node is to select the object beingdeformed, and then select the blend shape deformer node in its history from theChannel Box (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Select values from 0 to 1. You can also entervalues from -2 to 2. A value of 2 would double the overall deformation effect. Anegative value would invert the effect. Default is 1.

Target Specifies the weight of the named target. A value of 0 specifies that the target has noinfluence; a value of 1 specifies that the target has maximum influence.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key will give you finercontrol, and pressing the Shift key will give you coarser control.

Editing blend shape deformer attributes

To edit attributes with the Attribute Editor:

1 Select the blend shape deformer node (default name: blendShapen).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl A).

3 The following sections make available attributes: Blend Shape Attributes, DeformerAttributes, Node Behavior, and Extra Attributes.

Blend Shape Attributes

Origin Specifies whether the blend shape is relative to the base object shape’s position,rotation, and scale, or is directly specified by you. Select local, world, or user.

Local blends the base object shape to the target object shape(s) while ignoringdifferences in position, rotation, and scale between the target shape(s).

World blends the base object shape to the target object shape(s), taking into accountany differences in position, rotation, and scale between the target object shape(s).

Note that the local and world selections are identical to the Origin creation option’sselections. For more information, see "Setting creation options" on page 59. The userselection, however, is not one of the Origin creation option’s selections.

User specifies that two special attributes, baseOrigin and targetOrigin, provideorigin information. For more information on these attributes, see the onlinedocumentation for the blend shape deformer node (default name: blendShapen) andthe blendShape MEL command. You can use the setAttr MEL command to set thevalues of the baseOrigin and targetOrigin attributes.

Page 64: Maya Character Setup

CHARACTER SETUP PART 2

64

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

Weight

Target Specifies the influence value, or weight, of the named target. A value 0.000 specifiesthat the target has no influence; a value of 1.000 specifies that the target hasmaximum influence. For each named target, use slider to select values from 0.000 to1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Use slider to select values from 0.000 to 1.000.You can also enter values from -2.000 to 2.000. A value of 2.000 would double theoverall deformation effect. A negative value would invert the effect. Default is 1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Scaling influence of all targetsYou can scale the effect of all targets on the base by editing the Envelope channel orattribute.

Though the slider Envelope only specifies values from 0 to 1, you can enter valuesfrom -2 to 2. If Envelope is 2, the influence of every target is doubled. If Envelope is0.5, the influence of every target is halved. If Envelope is negative, the influence ofevery target is inverted. If the cumulative effect of the targets deforms the base morethan you want, you can scale down the overall deformation effect by settingEnvelope to some value between 0 and 1.

For more information on setting the Envelope channel or attribute, see "Editingblend shape deformer channels" on page 62 and "Editing blend shape deformerattributes" on page 63.

Matching position, rotation, and scaling of targetsYou can control whether the deformation of the base is influenced by the position,rotation, or scaling of targets with the Origin attribute. For more information, see"Editing blend shape deformer attributes" on page 63.

Blending objects with different topologiesYou can blend shapes with the same or different number of vertices or CVs.

When you create a blend shape deformer, you should turn the Check Topologycreation option off if you want to blend objects that have different numbers of CVsor vertices. For more information on Check Topology, see "Setting creation options"on page 59.

If objects have the same number of CVs or vertices but their order is different, Mayablends the shapes whether Check Topology is on or off. However, the position of thebase CVs will be transformed to the position of the target CVs. This change mightcause the object to blend in a way you might not expect. To ensure a smoothtransition between base and target, make sure the order of CVs is the same in bothobjects.

Page 65: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

DEFORMERS CHARACTER SETUP

65

In addition to blending individual objects, you can blend hierarchies of objects. Makesure both hierarchies have the same number of children and parenting relationships.

To blend hierarchies, you must select the parent of the target hierarchy (orhierarchies) first and the parent of the base hierarchy last before creating the blendshape. The parent of each must be a transform.

Each child in the base blends into its corresponding child in the target. The order ofchildren in the Outliner (and Hypergraph) determines which children blend. Ifnecessary, use the Outliner to change the order of objects in the hierarchies.

A common blend shape technique is to create duplicates of a base, deform theduplicates, then use them as targets. For example, you might make several copies ofa face, and then alter the copies to create a smiling face, frowning face, a crying face,and so on. If you use this technique, turn on the Check Topology creation optionwhen you create the blend shape deformer. This checks that the base and targethierarchy shapes have the same number of CVs. If the CVs are different and CheckTopology is off, you might see, for instance, an eye blending into the nose. If CheckTopology is on, the members of the hierarchies must have corresponding numbers ofCVs.

Deleting a target’s objectAfter you create a blend shape, you can delete the target objects to free up memoryand so improve Maya’s performance. When you delete a target, the blend shapenode keeps the target deformations in memory and the target slider deforms thebase as if the target remained. The object is removed.

You save the most memory when you have complex targets that have only a fewcomponents that have moved slightly from the base. For complex targets that havemany components moved from the base, you save the least memory.

Don’t delete the targets if you want to modify their shapes or remove them from theblend shape. Remember that when you modify targets, Maya updates the resultingblend shape.

You can delete the object manually from your scene, or you can have Maya deletethe targets when you create the blend shape.

To delete the target object before creating blend shape:

Click the Delete Targets creation option on (see "Setting creation options" on page59).

To delete the target object after creating blend shape:

Select and delete the object in the workspace or Outliner.

Setting target weightsTo set the influence of targets on the blend shape, you adjust each target’s weightslider. Each target’s name is in a box under the slider. If the entire name of a targetdoes not fit inside a box, drag left or right inside the box to see the undisplayed part.

You can move each slider from 0 to 1. A setting of 0 means that the target has noeffect on the base. A setting of 1 makes the base identical to the target unless othertargets also affect the base.

Page 66: Maya Character Setup

CHARACTER SETUP PART 2

66

USING BLEND SHAPE DEFORMERS | 4Editing blend shape deformation effects

You can enter values beyond the slider range in the weight boxes below the sliders.A value above 1 exaggerates the target’s influence. Negative values move the base ina direction opposite the target components. To reset all sliders to 0, click Reset All.

To adjust weight sliders, in the Blend Shape editor (Window > Animation Editors >Blend Shape), drag the slider or enter a value in the weight box.

Setting keys for blend shapesYou can set key blend shapes with the Blend Shape editor. You can set keys on allthe target sliders at their current values, or key an individual target slider at itsmaximum influence value (1). Keying an individual target slider at 1 keys theinfluence of that target slider only, ignoring the possible blending influences of theother target sliders.

To key all target sliders:

1 In the Blend Shape editor, adjust the sliders to create the desired blend shape.

2 In the Time Slider, click the frame where you want to set keys.

3 In the Blend Shape editor, click the Key All button.

Maya sets keys for all the target sliders in the blend shape deformer.

To key the maximum influence of one target slider:

1 In the Time Slider, click the frame where you want to set the key.

2 In the Blend Shape editor, set the target slider to 1.

3 Click the Key button below the target slider.

Maya sets a key for that target slider only, ignoring the possible blending influencesof the other target sliders.

Saving a blend shape as a new targetAfter you create a blend shape from a mix of slider settings, you can save the shapeas a new target for the base. After creating the new target, you can drag a singleslider to deform the base object to that target.

To save a blend shape as a new target:

1 Set the target sliders to deform the base object.

2 Select the base.

3 Click Add in the Blend Shape editor.

Maya creates a new target at the same location as the base. A slider for the targetappears in the Blend Shape editor.

Move the new target away from the base. If in local mode, you can modify thetarget’s shape, for instance, by transforming its CVs or vertices. Use the new targetslider to deform the base to the target.

Page 67: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Adding target object shapes

DEFORMERS CHARACTER SETUP

67

Selecting a blend shape deformer nodeWhen you create a blend shape deformer, a blend shape deformer algorithm node(default name: blendShapen) appears in the scene’s dependency graph upstream ofthe base object’s shape node. This node uses the target slider weight settings tocreate a blend shape from the base.

The blend shape deformer node name appears in the Blend Shape editor above andto the left of the associated target sliders. To display the animation keys of weights inthe Time Slider, Graph Editor, and the Dope Sheet, you must select the blend shapedeformer node.

To select the blend shape node:

Click the Select button for the blend shape node in the Blend Shape editor.

Creating a new blend shape deformerYou can create a blend shape deformer using the Blend Shape editor instead of byselecting Deform > Create Blend Shape. The new blend shape node is chainedsequentially by default. (If you want to put one blend shape node in conjunctionwith another one, change the deformer placement to parallel.)

To create a new blend shape using the Blend Shape editor:

1 Select all targets.

2 Shift-click to select the base.

You must select the base last.

3 Click New in the Blend Shape editor.

The new blend shape node and slider(s) appear in the Blend Shape editor.

ADDING TARGET OBJECT SHAPES

You can add target object shapes to a blend shape deformer. When adding targetobject shapes, you can first set the add options and then add the target object shapes,or you can immediately add the objects with the current add options.

Setting add options

To set add options:

1 If you also want to add target object shapes now, select one or more deformableobjects as new target object shape(s), and then a blend shape deformer’s base objectshape.

2 Select Deform > Edit Blend Shape > Add ❒.

The BlendShape Add Options window is displayed.

3 Specify the options:

Specify Node If the base object shape you selected is influenced by only one blend shape deformer,you don’t need Specify Node on. If on, you can specify BlendShape Node andExisting Nodes. Default is off.

Page 68: Maya Character Setup

CHARACTER SETUP PART 2

68

USING BLEND SHAPE DEFORMERS | 4Adding target object shapes

BlendShapeNode Specifies the name of the blend shape deformer to which you want to add the target

object shapes. (Available if Specify Node is on.)

Existing Nodes Lists all the blend shape deformer nodes in the scene, and indicates the blend shapedeformer to which you want to add target object shapes. (Available if Specify Nodeis on.)

Add In-BetweenTarget

Specifies whether you want to specify the Target Index and In-Between weight.Typically, you would want to do so to control the effect of the target object shapesyou are adding.

Target Index If the blend shape deformer blends target object shapes in parallel (the In-Betweencreation option was off when you created the blend shape deformer), you can addthe new target object shapes so that they work in series with one of the existingtarget object shapes. One quick way you can identify the appropriate value forTarget Index is by looking at the order of the target sliders in the Blend Shape Editor(Window > Animation Editors > Blend Shape). Note that in the editor, each targetobject shape has its own target slider. In the editor, going from left to right, theTarget Index value for the left-most target slider would be 1, the next 2, and so on.

If the blend shape deformer blends target object shapes in series (the In-Betweencreation option was on when you created the blend shape deformer), Target Indexcan only be 1 because there is only one target slider. In this case, you don’t have tospecify Target Index, but you do need to specify the In-Between Weight.

In-BetweenWeight Specifies the weight at which the added target object shape will have maximum

influence. Use slider to select values from 0 to any value less than 1. Do not select 1because 1 is the weight at which the existing target object shape has its maximuminfluence.

Target ShapeOptions

Specifies whether to check if the added target object shapes have the same topologyas the base object shape and the existing target object shape(s). For example, if usingNURBS objects, you could check if all the shapes have the same number of CVs.Click Check Topology on or off. Default is on.

4 Click Apply if you want to add the selected target object shapes now.

or

• Click Save if you want to save the options you’ve specified.

or

• Click Reset to reset to the default options.

or

• Click Close to close the BlendShape Add Options window.

Adding a target object shape

To add a target shape:

1 Select one or more deformable objects as new target object shape(s), and then a blendshape deformer’s base object shape.

Page 69: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Removing target object shapes

DEFORMERS CHARACTER SETUP

69

2 Select Deform > Edit Blend Shape > Add.

Maya adds the target object shapes to the blend shape deformer.

REMOVING TARGET OBJECT SHAPES

You can remove target object shapes from a blend shape deformer. When removingtarget object shapes, you can first set the remove options and then remove the targetobject shapes, or you can immediately remove the objects with the current removeoptions.

Setting remove options

To set remove options:

1 Select Deform > Edit Blend Shape > Remove ❒.

The BlendShape Remove Options window is displayed.

2 Specify the options:

Specify Node If the base object shape you selected is influenced by only one blend shape deformer,you don’t need to set Specify Node on. If on, you can specify BlendShape Node andExisting Nodes. Default is off.

BlendShapeNode Specifies the name of the blend shape deformer whose target object shapes you want

to remove. (Available if Specify Node is on.)

Existing Nodes Lists all the blend shape deformer nodes in the scene, and indicates the blend shapedeformer whose target object shapes you want to remove. (Available if Specify Nodeis on.)

3 Click Apply if you want to remove the selected target object shapes now.

or

• Click Save if you want to save the options you’ve specified.

or

• Click Reset to reset to the default options.

or

• Click Close to close the BlendShape Remove Options window.

Removing a target shape

To remove a target shape:

1 Select the target objects you want to remove.

2 Select Deform > Edit Blend Shape > Remove.

Maya removes the target object shapes.

Page 70: Maya Character Setup

CHARACTER SETUP PART 2

70

USING BLEND SHAPE DEFORMERS | 4Swapping target object shapes

SWAPPING TARGET OBJECT SHAPES

You can swap the order of target object shapes. When swapping target object shapes,you can first set the swap options and then swap the target object shapes, or you canimmediately swap the objects with the current swap options.

Setting swap options

To set swap options:

1 If you want to swap now, select two target objects whose order you want to swap.

2 Select Deform > Edit Blend Shape > Swap ❒.

The BlendShape Swap Options window is displayed.

3 Specify the options:

Specify Node If the base object shape you selected is influenced by only one blend shape deformer,you don’t need to set Specify Node on. If on, you can specify BlendShape Node andExisting Nodes. Default is off.

BlendShapeNode Specifies the name of the blend shape deformer whose target object shapes you want

to swap. (Available if Specify Node is on.)

Existing Nodes Lists all the blend shape deformer nodes in the scene, and indicates the blend shapedeformer whose target object shapes you want to swap. (Available if Specify Node ison.)

4 Click Apply if you want to swap the selected target object shapes now.

or

• Click Save if you want to save the options you’ve specified.

or

• Click Reset to reset to the default options.

or

• Click Close to close the BlendShape Swap Options window.

Swapping two target shapes

To swap two target shapes:

1 Select two target objects whose order you want to swap.

2 Select Deform > Edit Blend Shape > Swap.

Maya swaps the order of the target object shapes.

DELETING BLEND SHAPE DEFORMERS

To delete a blend shape deformer:

1 Select the blend shape deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

Page 71: Maya Character Setup

USING BLEND SHAPE DEFORMERS | 4Deleting blend shape deformers

DEFORMERS CHARACTER SETUP

71

The deformer nodes are all deleted. However, the base object still has the tweaknode as an input node, so any tweaks you might have made are preserved.

Page 72: Maya Character Setup

CHARACTER SETUP PART 2

72

USING BLEND SHAPE DEFORMERS | 4Deleting blend shape deformers

Page 73: Maya Character Setup

DEFORMERS CHARACTER SETUP

73

5 USING LATTICE DEFORMERS

With lattice deformers, you can deform objects with lattices.

UNDERSTANDING LATTICE DEFORMERS

A lattice deformer surrounds a deformable object with a lattice that you canmanipulate to change the object’s shape.

LatticesA lattice is a structure of points for carrying out free-form deformations on anydeformable object. To create deformation effects, you edit the lattice by moving,rotating, or scaling the lattice structure, or by directly manipulating the lattice points.In general, you create effects by editing any of the lattice deformer’s attributes.

Influence lattice and base latticeA lattice deformer includes two lattices: an influence lattice and a base lattice. Byitself, the term “lattice” typically refers to the influence lattice. You createdeformation effects by editing or animating the influence lattice. The lattice

Lattice deformer acting on an ear.You can create deformation effectsby moving the lattice’s points.

Page 74: Maya Character Setup

CHARACTER SETUP PART 2

74

USING LATTICE DEFORMERS | 5Creating lattice deformers

deformer’s effect is based on any difference between the base lattice’s lattice pointsand the influence lattice’s lattice points. By default, the base lattice is hidden so thatyou can focus on manipulating the influence lattice. However, remember that thedeformation effect depends on the relationship between the influence lattice and thebase lattice.

Lattices as deformable objectsUnique among deformer influence objects, lattices are themselves deformableobjects. That means that you can create deformers that deform a lattice. For example,you can deform a lattice with a sculpt deformer, and the effect of the deformation onthe lattice points will in turn deform the object the lattice is deforming. You can alsoassign deformation weights to lattice points by creating a cluster deformer for thelattice. Further, you can bind a lattice to a skeleton. When you move the skeleton, thelattice will deform with the action of the joints.

Lattice deformers and lattice flexorsFlexors are special objects you use to control the deformation effects of rigidskinning. Two types of flexors, joint lattice flexors and bone lattice flexors, use latticedeformer nodes.

Related MEL commandsMEL commands related to lattice deformers include the following:

• lattice

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a lattice deformers can include the following:

• Lattice deformer node (default name: ffdn).

• Influence lattice transform node (default name: ffdnLattice).

• Influence lattice shape node (default name: ffdnLatticeShape).

• Base lattice transform node (default name: ffdnBase).

• Base lattice shape node (default name: ffdnBaseShape).

• Tweak node (default name: tweakn).

• Lattice deformer set node (default name: ffdnSet).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING LATTICE DEFORMERS

When creating lattice deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Page 75: Maya Character Setup

USING LATTICE DEFORMERS | 5Creating lattice deformers

DEFORMERS CHARACTER SETUP

75

Setting creation options

To set creation options:

1 If you also want to create a lattice deformer now, select one or more deformableobjects.

2 Select Deform > Create Lattice ❒.

The Lattice Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options:

Basic

Divisions Specifies the structure of the lattice in the lattice’s local STU space. (STU spaceprovides a special coordinate system for specifying the structure of lattices.)

You can specify the lattice’s structure in terms of S, T, and U divisions. When youspecify the divisions, you also indirectly specify the number of lattice points in thelattice, because the lattice points are located where the divisions meet on the lattice’sexterior. The greater the number of divisions, the greater the lattice point resolution.

Though your control over the deformation increases with the number of latticepoints, the performance may be affected.

The default settings are S has 2 divisions, T has 5 divisions, and U has 2 divisions,which provides 20 lattice points.

Local Mode Specifies whether each lattice point can influence only the deformable object’s pointsthat are nearby (local), or can influence all the deformable object’s points. Check onor off (default is on). If on, you can specify Local Divisions.

Local Divisions Specifies the extent of each lattice point’s local influence in terms of the lattice’s localSTU space. (Only available if Local Mode is on.) The default settings are S has 2divisions, T has 2 divisions, and U has 2 divisions. With the default setting, eachlattice point can only influence the deformable object’s points that are at most twodivisions away (in S, T, or U) from the lattice point.

Positioning Specifies whether the lattice is centered around the selected deformable object(s), orpositioned at the workspace origin.

Typically you would want the lattice centered around the object(s) so that you cancreate deformation effects right after you create the deformer. However, you mightwant the object to be initially free of the lattice’s influence, deforming only when itmoves into the base lattice’s space. For example, you might develop a ghost (thedeformable object) that could squeeze through a keyhole-shaped influence latticeand then pop out on the other side, resuming its original shape.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 76: Maya Character Setup

CHARACTER SETUP PART 2

76

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

Check on to center the lattice; check off to put the lattice at workspace origin. Defaultis on.

Grouping Specifies whether to group the influence lattice and base lattice together. Groupingthe influence lattice and base lattice enables you to transform (move, rotate, or scale)the two together. Check on or off. Default is off: the influence lattice and base latticeare not grouped by default.

Parenting Specifies whether to parent the lattice to the selected deformable object(s) upondeformer creation. Parenting them enables you to transform (move, rotate, or scale)them together. Check on or off. Default is off.

Freeze Mode Specifies whether to freeze the lattice deformation mapping. If frozen (checked on),components of objects being deformed that are inside the influence lattice remainfixed inside the lattice and affected only by the influence lattice, even if youtransform (move, rotate, or scale) the object or the base lattice. For more information,see "Freezing the lattice deformation mapping" on page 82. Check on or off. Defaultis off.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create if you want to create a lattice deformer now.

or

• Click Save to save the creation options.

or

• Click Reset to reset to the default creation options.

or

• Click Close to close the Lattice Options window.

Creating a lattice deformer

To create a lattice deformer:

1 Select one or more deformable objects.

2 Select Deform > Create Lattice.

A lattice deformer is created with the currently set creation options.

To create deformation effects:

1 Move, rotate, or scale influence lattice points.

2 Edit lattice deformer channels and attributes.

For more information on creating and editing deformation effects, see the nextsection.

EDITING LATTICE DEFORMATION EFFECTS

You can edit lattice deformation effects as described in the following topics:

Page 77: Maya Character Setup

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

DEFORMERS CHARACTER SETUP

77

Editing the influence lattice

To move, rotate, or scale the lattice:

1 Select the lattice deformer handle node (default name: ffdnLattice).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Remember that you can access the deformer handle’s local axes (Display >Component Display > Local Rotation Axes), it’s rotate and scale pivots (Display >Component Display > Rotate Pivots or Scale Pivots) and it’s selection handle(Display > Component Display > Selection Handles).

To edit by moving, rotating, or scaling lattice points:

1 Select the lattice deformer handle node (default name: ffdnLattice).

2 Go into component mode (click the Select By Component Type button).

3 Select lattice points.

4 Move (translate), rotate, or scale the points to change the effect of the deformation.

Editing lattice deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a lattice deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing lattice deformerattributes" on page 78).

To edit channels with the Channel Box:

1 Select a lattice deformer node (default name: ffdn).

One quick way to select the lattice deformer node is to select the object beingdeformed, and then select the lattice deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Values can vary from 0 to 1. Default is 1.

Local InfluenceS Specifies the extent of each lattice point’s local influence along the S axis of the

lattice’s local STU space. (Only effective if deformer was created with Local Modeon; if not, in the Attribute Editor, under Freeform Deformation Attributes, click Localon.) The default is 2.

Local InfluenceT Specifies the extent of each lattice point’s local influence along the T axis of the

lattice’s local STU space. (Only effective if deformer was created with Local Modeon; if not, in the Attribute Editor, under Freeform Deformation Attributes, click Localon.) The default is 2.

Page 78: Maya Character Setup

CHARACTER SETUP PART 2

78

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

Local InfluenceU Specifies the extent of each lattice point’s local influence along the U axis of the

lattice’s local STU space. (Only effective if deformer was created with Local Modeon; if not, in the Attribute Editor, under Freeform Deformation Attributes, click Localon.) The default is 2.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing lattice deformer attributes

To edit attributes with the Attribute Editor:

1 Select the lattice deformer node (default name: ffdn).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Freeform Deformation Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Freeform Deformation Attributes

Local Specifies whether each lattice point can influence only the deformable object’s pointsthat are nearby (Local on), or can influence all the deformable object’s points (Localoff). Check on or off (default is on). If on, you can specify Local Influence S, LocalInfluence T, and Local Influence U.

Local InfluenceS Specifies the extent of each lattice point’s local influence along the S axis of the

lattice’s local STU space. Use slider to select values from 2 to 30. The default is 2.

Local InfluenceT Specifies the extent of each lattice point’s local influence along the T axis of the

lattice’s local STU space. Use slider to select values from 2 to 30. The default is 2.

Local InfluenceU Specifies the extent of each lattice point’s local influence along the U axis of the

lattice’s local STU space. Use slider to select values from 2 to 30. The default is 2.

PartialResolution Specifies whether Maya calculates the deformation with full resolution or partial

resolution. Select full or partial. Default is full.

If you don’t need to see the deformation at full resolution, you can improve displayperformance by reducing the accuracy of the deformation. To do so, select partial.With partial selected, use the Partial Resolution slider to specify the deformationcalculation’s accuracy. A tolerance of 0 means you want full accuracy; the maximumvalue of 0.1 decreases the accuracy significantly. Select values from to 0.000 to 0.100.Default is 0.010.

If you have set the accuracy to partial, set the accuracy of each deformer back to fullbefore you render the scene if you want to render the deformation with fullaccuracy.

Page 79: Maya Character Setup

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

DEFORMERS CHARACTER SETUP

79

FreezeGeometry Specifies whether to freeze the lattice deformation mapping. If frozen (checked on),

components (for example, CVs) of objects being deformed that are inside theinfluence lattice become fixed inside the lattice and affected only by the influencelattice, even if you transform (move, rotate, or scale) the object or the base lattice. Formore information, see "Freezing the lattice deformation mapping" on page 82. Checkon or off. Default is off.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0 to 1. Default is 1.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Editing influence lattice shape channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a lattice deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing influence lattice shapeattributes" on page 79).

To edit channels with the Channel Box:

1 Select a lattice shape node (default name: ffdnLatticeShape). In the Outliner, clickingon the lattice’s transform node (default name: ffdnLattice) will also display the latticeshape node in the Channel Box.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

S Divisions Specifies the number of S divisions in the influence lattice’s structure. Default is 2.

T Divisions Specifies the number of T divisions in the influence lattice’s structure. Default is 5.

U Divisions Specifies the number of U divisions in the influence lattice’s structure. Default is 2.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing influence lattice shape attributes

To edit attributes with the Attribute Editor:

1 Select the lattice shape node (default name: ffdnLatticeShape).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

Page 80: Maya Character Setup

CHARACTER SETUP PART 2

80

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

3 The following sections make available attributes: Lattice History, Object Display,Node Behavior, and Extra Attributes.

Lattice History

S Divisions Specifies the number of S divisions in the influence lattice’s structure. Default is 2.

T Divisions Specifies the number of T divisions in the influence lattice’s structure. Default is 5.

U Divisions Specifies the number of U divisions in the influence lattice’s structure. Default is 2.

Object Display

(Shape node display attributes.)

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Resetting influence lattice shape and locationYou can reset the deformed lattice to return it to the location and shape of the baselattice.

Reset the lattice to clear all adjustments you have made to the influence lattice. Dothis when you want to:

• start over with the deformation

• rotate, scale, or translate the base lattice and the deformed lattice together, from theirinitial positions

• parent the base lattice at the center of the deformed lattice, before manipulating thelattice.

To reset the lattice:

1 Select the lattice.

2 Select Deform > Edit Lattice > Reset Lattice.

Resetting influence lattice points and removing tweaksAfter lattice point tweaking or changing the STU divisions, you can reset the latticepoints to their original positioning in local space. This does not modify the latticeobject’s transformation in world space. Use this when you want to change thenumber of divisions on the lattice or start over with the deformation.

To reset lattice points after tweaking:

1 Select the lattice.

2 Select Deform > Edit Lattice > Remove Lattice Tweaks.

Editing lattice deformer setsFor more information, see "Editing deformer set membership" on page 46.

Page 81: Maya Character Setup

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

DEFORMERS CHARACTER SETUP

81

Pruning lattice deformer setsBy pruning lattice deformer sets, you can remove points from the set that are notpresently being affected by the deformer. You can prune the deformer set to avoidunnecessary calculations for points that are not part of the deformation effect.

To prune deformer set membership:

1 Select deformable objects whose currently unaffected points you want to prune fromthe deformation.

2 Select Deform > Prune Membership > Lattice.

Maya removes the deformable object’s points currently unaffected points from thelattice deformer set.

Changing influence lattice resolutionTo deform the geometry by a finer or coarser resolution, you can change the numberof lattice points. Using the Divisions attribute, you can increase or decrease thedivisions along S, T, and U (the X-, Y-, and Z-axis, respectively, if the lattice were inthe default position at the origin).

Note that the greater the number of divisions, the more calculations Maya has to doto deform the geometry and the slower the performance. To speed up theperformance to counteract the effect of a high-resolution lattice, see “Improvingperformance” on page 99.

You gain no resolution in the deformation by having more lattice points in the latticethan points on the geometry. The resolution is limited by the spacing of points acrossthe geometry. Note that if you’ve moved the points, you have to reset the pointsbefore changing the resolution.

You can reset the lattice by choosing Deform > Edit Lattice > Reset Lattice. However,you cannot change the resolution of a lattice if the lattice points have been movedfrom their reset position or the lattice has history. If you want to change the numberof divisions on a lattice whose points have been moved, choose Deform > EditLattice > Reset Lattice Tweaks, and then change the divisions of the lattice. If youwant to change the divisions on a lattice with history, find the upstream lattice shapeand change its divisions. You can find the upstream lattice by selecting the latticeand looking in the attribute editor tabs for the original lattice shape, which willtypically share the same base name as the downstream lattice appended by “Orig.”

Toggling lattice shape handle (L icon)To help control screen clutter and display performance, you can select betweendisplaying an “L” icon as the lattice deformer handle and displaying the deformer’slattices.

To select the lattice shape display:

1 Select the lattice deformer.

2 Select Display > Component Display > Lattice Shape.

The lattice deformer selects between displaying its lattices and the “L” icon.

Page 82: Maya Character Setup

CHARACTER SETUP PART 2

82

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

Turning on or off display of lattice points

To turn on or off lattice shape display:

1 Select the lattice deformer.

2 Select Display > Component Display > Lattice Points.

Showing and hiding all lattice deformers

To show all lattice deformers:

Select Display > Show > Show Deformers > Lattices.

To hide all lattice deformers:

Select Display > Hide > Hide Deformers > Lattices.

Weighting lattice points to alter their influenceThe influence of individual lattice points can vary if the lattice points have beenassigned weights. You can have weights assigned to lattice points in two ways:

• You can create a cluster deformer that acts on the lattice deformer. You can thencontrol the weights assigned to each lattice point by the cluster deformer. For moreinformation on cluster deformers, see Chapter 6, “Using Cluster Deformers.”

• You can do skinning with lattice deformers. For more information, see "Skinningwith lattice deformers" on page 86.

Sculpting the influence latticeYou can use a sculpt deformer to shape a lattice deformer’s influence lattice. Using asculpt deformer in this way can provide a great way to get smooth, rounded latticedeformations. Trying to achieve the same rounded effect by tweaking (moving)lattice points could require some painstaking effort. For more information on sculptdeformers, see Chapter 14, “Using Sculpt Deformers.”

Freezing the lattice deformation mappingA lattice deformer’s deformation effects normally depend on whether the objectsbeing deformed are inside the base lattice (default name: ffdnBase). If the objects arecompletely outside of the base lattice, deformation effects cease. The effects ceasebecause the lattice deformer calculates the effects based on the spatial relationshipbetween the base lattice, the influence lattice, and the positions of the objects insidethe base lattice. If the objects are outside of the base lattice, Maya cannot calculate theeffects. Similarly, if an object is only partially inside the base lattice, only thecomponents (for example, CVs) of the object inside the base lattice can be affected bythe influence lattice.

Page 83: Maya Character Setup

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

DEFORMERS CHARACTER SETUP

83

Freezing the lattice deformation mapping locks the influence lattice’s control overdeformable object components inside the influence lattice. If you want to have thecomponents of deformable objects inside of the influence lattice to remain inside andunder the influence of the influence lattice even when you move the objects or thebase lattice, you can do so by freezing the lattice deformation mapping.

Freezing the lattice deformation mapping freezes an influence lattice’s relationshipwith all of the components inside it. Object components (for example, CVs) insidethe influence lattice at the time of freezing will stay fixed inside the lattice, and willonly be affected by changes to the influence lattice. Even if you move the base latticeso that those components are no longer in it, the components themselves will remainunder the influence of the influence lattice. However, components outside theinfluence lattice will move when you move the object, causing deformation effects onthe object.

You can freeze the deformation mapping when you create a lattice deformer byclicking the Freeze Mode creation option on (see "Setting creation options" on page75). However, if the influence lattice surrounds the object, you won’t be able to moveany of its components outside of the influence lattice unless you change the Freeze

Influence lattice deformingsphere partially inside lattice.

Sphere no longer affected by influencelattice because it is now outside of thebase lattice. (The base lattice is notdisplayed unless selected, but by default itis located inside the influence lattice, andhas the influence lattice’s original shape.)

Influence lattice deformingsphere partially inside lattice.Now the lattice deformationmapping is frozen.

Because lattice deformation mapping hasbeen frozen, components of sphere insidethe influence lattice remain inside it evenas you move the sphere outside of thebase lattice and influence lattice.

Page 84: Maya Character Setup

CHARACTER SETUP PART 2

84

USING LATTICE DEFORMERS | 5Editing lattice deformation effects

Geometry attribute. After you’ve created a lattice deformer, you can change whetherit freezes the deformation mapping by editing the Freeze Geometry attribute (see"Editing lattice deformer attributes" on page 78).

Editing the base latticeThe base lattice is not visible unless you select it. You can move, rotate, or scale abase lattice. However, unlike the influence lattice, the base lattice does not havelattice points.

Grouping base and influence latticesTo move the base lattice and the deformed lattice together, you can group them.Group the lattices when you are moving the lattice to deform a stationary geometry.For example, suppose you wanted to slam a fish bowl on a character’s head so thatthe head then conforms to the shape of the bowl. To do this, you could use a latticedeformer to shape a geometry for the fishbowl and a geometry for the head. Youcould then group the base lattice and deformed lattice, parent them to the fishbowlgeometry, and move them all away from the head. When you move them away, thehead will return to its normal shape, but when you move them back the head willtake the shape of the fishbowl.

To group the deformed lattice and the base lattice:

1 Select the deformed lattice and base lattice.

2 Select Edit > Group.

If you have grouped the base lattice and the deformed lattice, a simple way to selectthe two lattices in the scene (without opening the Outliner) is to select the deformedlattice and press the Up Arrow key to get the group node.

Parenting lattices to objects being deformedYou can parent the lattice and base lattice to the objects being deformed by them sothat you can move and continue the deformation. For example, if your character’ssquashed hat is deformed with a lattice, parent the lattice to the hat and the baselattice so the hat stays deformed as it moves.

To parent the lattice to the geometry:

You can parent the lattice to the geometry in two ways, depending on when you’reparenting:

• After you create the lattice, open the Outliner and drag and drop the lattice onto thegeometry using the middle mouse button. An alternate way is to select the lattice,then the geometry, and choose Edit Parent.

• Before you create the lattice, open the Lattice Options window (select Deform >Lattice ❒) and turn on the Parenting creation option.

Deforming a lattice with other deformersYou can deform any deformed lattice just as you can deform a geometry with otherdeformers. For example, you can put a sculpt or cluster deformer on a lattice, anddeform the lattice shape.

Page 85: Maya Character Setup

USING LATTICE DEFORMERS | 5Deleting lattice deformers

DEFORMERS CHARACTER SETUP

85

Assuring a smooth deformation through the base latticeIf you are setting up or animating the deformable object so that it passes through thebase lattice, note that editing the outermost parts of the influence lattice can cause asudden deformation in the object’s shape. If you have edited the outermost parts ofthe influence lattice, the deformable object will suddenly deform as it enters the baselattice.

Improving performanceThe greater the number of lattice points, the greater your control over thedeformation, but the slower the performance. Note that a lattice should always havefewer lattice points than the deformable object has points. You gain no increase incontrol over the deformation by having more lattice points than the object itself haspoints.

You can edit node behavior to improve performance. For more information, see"Editing node behavior to improve performance" on page 54.

You can change the lattice resolution performance. To change the lattice resolutionperformance, set the Partial Resolution attribute (see "Editing lattice deformerattributes" on page 78).

Finally, you can change the lattice deformer performance settings.

To change lattice deformer performance settings:

1 Select Window > Settings/Preferences > Performance.

2 In the Performance Settings window, note the Deformers section.

3 Click the performance of Lattices to On, Off, or Interactive. (For more information,see Using Maya: Essentials.)

4 When you’re done, click Close.

Changing lattice resolution performance settings

To change lattice resolution settings:

1 Select Window > Settings/Preferences > Performance.In the Performance Settingswindow, note the Deformers section.

2 Set the Lattice Resolution to Per Node, Global, or Interactive.

3 When you’re done, click Close.

DELETING LATTICE DEFORMERS

To delete a lattice deformer:

1 Select the lattice deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 86: Maya Character Setup

CHARACTER SETUP PART 2

86

USING LATTICE DEFORMERS | 5Skinning with lattice deformers

SKINNING WITH LATTICE DEFORMERS

Skinning is the process of binding deformable objects to a skeleton. Typically, thedeformable objects that are bound are NURBS or polygonal surfaces. Thesegeometry objects become the character’s surface, or skin, and their shapes areinfluenced by the action of the skeleton’s joints. Once you’ve built a skeleton for acharacter, you can skin your character by using a smooth skinning method or a rigidskinning method.

Because influence lattices are deformable objects, you can also bind them to askeleton by smooth or rigid skinning. In turn, these can influence the NURBS orpolygonal surfaces that provide the character’s skin.

In skinning with lattice deformers, you create lattice deformers for the deformableobjects that you want to use for the character’s skin. Then you bind the influencelattices to the skeleton. The result is that the skeleton’s movement influences theobjects indirectly through the lattice deformers. Meanwhile, you can manipulate theinfluence lattices for more control over the deformation. This approach, skinningwith lattice deformers, is called lattice skinning.

If you wish, you could use lattice skinning to skin an entire character. A morecommon approach is to use smooth or rigid skinning for much of the character’sskin, but then also to use lattice skinning for finer control over certain areas. In manysituations, lattice skinning can provide superior smoothing effects, particularly inareas near where a character’s limbs and main body meet (for example, a shoulderand armpit area). However, if you do use lattice skinning with smooth or rigidskinning, you need to be very careful about how all the many control points (CVs,polygonal vertices, or lattice points) involved are organized. You will need toorganize points into various sets and those sets into various partitions to make laterediting easier and to avoid double transformation effects.

Note that lattice skinning should not be confused with lattice flexors. Lattice flexorsare for use with rigid skinning only. They help to smooth out deformations providedby rigid skinning, and their influence is by default limited to the skin area near aparticular joint.

For more information on skinning, see Chapter 25, “Understanding skinning.”

Page 87: Maya Character Setup

DEFORMERS CHARACTER SETUP

87

6 USING CLUSTER DEFORMERS

A cluster deformer creates a set whose members consist of selected points (CVs,vertices, or lattice points). You assign a percentage weight to each point, indicatinghow much you want each point to be affected by any translation, rotation, or scale ofthe cluster set. When you transform the cluster, the points are transformed accordingto the percentages you have specified.

UNDERSTANDING CLUSTER DEFORMERS

A cluster deformer applies a transformation to a geometry’s points in such a waythat you can adjust the percentage that each point is affected by the transformation.

Use clusters when you want to affect geometry in different amounts by one or moretransformations. For example, you can create a cluster for a door so that when it isslammed, the middle bows slightly.

Related MEL commandsMEL commands related to cluster deformers include the following:

• cluster

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Cluster deformer graduallystretching nose. You can movethe cluster handle (C icon) tocreate deformation effects.

Page 88: Maya Character Setup

CHARACTER SETUP PART 2

88

USING CLUSTER DEFORMERS | 6Creating cluster deformers

Dependency graph nodesThe dependency graph nodes for a wire deformer can include the following:

• Cluster deformer node, which is the algorithm node for the wire deformer (defaultname: clustern).

• Cluster handle node (default name: clusterHandlen).

• Tweak node (default name: tweakn). The tweak node provides a way for Maya tocarry out point tweaking on the deformable object before any deformation orskinning effects are carried out.

• A deformer set node (default name: clusternSet).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING CLUSTER DEFORMERS

When creating cluster deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a lattice deformer now, select one or more deformableobjects.

2 Select Deform > Create Cluster ❒.

3 The Cluster Options window is displayed.

4 Click the Basic and Advanced tabs to set the creation options:

Basic

Mode Specifies whether the cluster deformation will occur only when the cluster deformerhandle itself is transformed (moved, rotated, or scaled). With Relative clicked on,only transformations to the cluster deformer handle itself will cause deformationeffects. With Relative off, transformations to objects parented to the cluster deformerhandle can cause deformation effects.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 89: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

89

For example, suppose you are using a cluster deformer to smooth deformationeffects around the wrist joint of a character’s skinned arm. If you create a clusterdeformer with Relative on, and then parent the cluster deformer handle to a wristjoint, you can rotate the shoulder joint without causing cluster deformation effectsaround the wrist. But when you move the cluster deformer handle itself, you causecluster deformation effects around the wrist.

Click on or off. Default is on.

Envelope Specifies the deformation scale factor. A value of 0 provides no deformation, a valueof 0.5 provides a deformation effect scaled to half of its full effect, and a value of 1provides the full deformation effect. Use the slider to select values between 0 and 1.Default is 1.

Advanced

For information on these creation options, see "Editing advanced deformer creationoptions" on page 52.

• Click Create if you want to create a cluster deformer now.

or

• Click Save to save the creation options.

or

• Click Reset to reset to the default creation options.

or

• Click Close to close the Cluster Options window.

Creating a cluster deformer

To create a cluster deformer:

1 Select one or more deformable objects.

2 Select Deform > Create Cluster.

A cluster deformer is created with the currently set creation options.

In the Channel Box, the cluster handle node is listed (default name: clusternHandle).In the Outliner and Hypergraph, a cluster deformer node is added (default name:clustern).

EDITING CLUSTER DEFORMATION EFFECTS

After you have created a cluster deformer, you can edit the deformer’s effects asdescribed in the following topics:

Manipulating the cluster handle (C icon)Each cluster deformer includes a cluster deformer handle. In the workspace, thehandle is a C icon (the letter “C”). You can select the handle, and move, rotate, andscale it to create deformation effects. Of course, the effects depend on the clusterweights that control the effect of the cluster deformer on the deformable object’s

Page 90: Maya Character Setup

CHARACTER SETUP PART 2

90

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

points (NURBS CVs, polygonal vertices, or lattice points). For more information onediting and painting cluster weights, see "Editing cluster weights" on page 92 and"Painting cluster weights" on page 93.

Note that wrinkle deformers use cluster deformers, and that you can also manipulatethe effects of wrinkle deformers with the cluster deformer handle’s C icon. For moreinformation on wrinkle deformers, see Chapter 16, “Using Wrinkle Deformers.”

Editing cluster deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a cluster deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing cluster attributes" onpage 90).

To edit channels with the Channel Box:

1 Select a cluster deformer node (default name: clustern).

One quick way to select the cluster deformer node is to select the object beingdeformed, and then select the cluster deformer node in its history from the ChannelBox (under INPUTS). Another way is to select the cluster deformer handle (the Cicon).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Values can range from 0 to 1. A value of 0specifies no deformation effect, and a value of 1 specifies the maximum deformationeffect. Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives finer control,and pressing the Shift key gives coarser control.

Editing cluster attributes

To edit attributes with the Attribute Editor:

1 Select the cluster deformer node (default name: clustern).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Cluster Attributes, DeformerAttributes, Node Behavior, and Extra Attributes.

Cluster Attributes

Relative Specifies whether the cluster deformation occurs only when the cluster deformerhandle itself is transformed (moved, rotated, or scaled). With Relative on, onlytransformations to the cluster deformer handle itself cause deformation effects.Transformations to any objects parented to the handle do not cause deformation

Page 91: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

91

effects. With Relative off, transformations to objects parented to the cluster deformerhandle can cause deformation effects. The Relative attribute was initially set by theMode creation option when you created the cluster deformer (see "Setting creationoptions" on page 88).

PartialResolution Specifies whether Maya provides the complete deformation, or only an

approximation of the deformation. Selections include full and partial. Full specifiesthe complete deformation. Partial specifies an approximation of the deformation,which can improve Maya’s display performance. With partial, Maya rounds downthe cluster weights based on the Percent Resolution. Default is full.

PercentResolution Specifies the increment percentage by which the cluster deformation resolution is

rounded down. Maya uses the increment percentage to round off the cluster weightsto the next lowest increment. For example, with a Percent Resolution of 5.00, acluster weight of .94 would be rounded down to .90. A cluster weight of .46 wouldbe rounded down to .45. Default is 5.00. (Available only if Partial Resolution is set topartial.)

AngleInterpolation Specifies the interpolation direction. Use this attribute to correct undesirable

discontinuities in the deformation effect when you change cluster weights even by asmall amount. The discontinuities occur when the cluster deformer uses aninappropriate interpolation direction to guide the deformation effect. To change theinterpolation direction, you can set Angle Interpolation to closest, positive, ornegative. By default, Angle Interpolation is closest, which provides the usual rigidskinning deformation effects. The default setting is fine for most situations, but whenyou encounter discontinuities you can adjust the deformation effect by selecting apositive or negative interpolation.

Deformer Attributes

Envelope Specifies the deformation scale factor. Use slider to select values between 0.000 and1.000. Default is 1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Editing cluster deformer setsFor more information on editing deformer set membership, see "Editing deformer setmembership" on page 46.

Pruning cluster deformer setsBy pruning cluster deformer sets, you can remove points from the set that are notpresently being affected by the deformer. You can prune the deformer set to avoidunnecessary calculations for points that are not part of the deformation effect.

Page 92: Maya Character Setup

CHARACTER SETUP PART 2

92

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

To prune deformer set membership:

1 Select deformable objects whose currently unaffected points you want to prune fromthe deformation.

2 Select Deform > Prune Membership > Cluster.

Maya removes the deformable object’s points currently unaffected points from thecluster deformer set.

Editing cluster weightsAfter you create the cluster, set up the percentages based on the amount that youwant the points or control vertices to be affected.

For some cases, you may set one percentage for the whole object. For example, astick on moving water, in which the cluster handle is set to move at 50% thetransformation of the water.

At other times, you may want some parts of the geometry to be affected more or lessthan other parts. For example, you could have a scene with waving trees, where thetreetops are affected the most, the trunk near the ground affected at 0%.

With the Component Editor, you can directly modify the values of individual clusterweights. You can also paint cluster weights (see "Painting cluster weights" on page93).

To query cluster weights:

1 Select the points whose cluster weights you want to edit.

2 Select Window > General Editors > Component Editor.

The Component Editor is displayed.

The Component Editor displays the component data for currently selectedcomponents in the workspace.

By default, the Component Editor updates dynamically as you select components inthe workspace. Also, as you select components in the Component Editor, theworkspace updates dynamically as well.

3 Click on the Weighted Deformers tab. The Weighted Deformers section lists theweights assigned to CVs, vertices, or lattice points by cluster deformers (defaultnames: clustern).

To modify a point’s cluster weight:

1 In the Component Editor’s spreadsheet, click the component data box you want toedit.

Only the component whose box you’ve selected is now selected in the workspace.

2 Enter a new value.

To modify several cluster weights at once:

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, drag through the component data boxes youwant to edit.

3 Enter the value you want all the boxes to have.

Page 93: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

93

To modify an entire row or column (UNIX only):

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, click one of the boxes in the row or column.

3 Click the row or column heading.

Now all the boxes for the row or column are selected.

4 Enter a value for all the boxes in the row or column.

To modify an entire row or column (Windows only):

1 In the workspace, select the points whose weights you want to edit.

2 To change all the entries of a row or column, in the Component Editor’s spreadsheet,select the row or column heading.

3 Shift select any of the boxes in that row or column.

4 Enter a new value to update the entire row or column.

For more information about the Component Editor, see Using Maya: Essentials.

Painting cluster weightsUsing the Paint Cluster Weights Tool, you can set cluster weights simply by paintingover the clustered surface. Although you can transform the cluster first, then paintweights on the surface, the Paint Cluster Weights Tool provides color feedback soyou know which parts of the clusters have different weights before you transformthe cluster. Weights display as a range of grayscale values, with a weight of 1displaying as white and 0 as black.

To paint weights on a cluster:

1 Select the surface with the cluster you want to paint weights on.

2 Go into smooth shading mode (select Shading > Smooth Shade All or press thedefault hotkey, 5).

3 Select the Paint Cluster Weights Tool and open the Tool Settings editor(Deform > Paint Cluster Weights Tool ❐).

Weight of 1.0Weight of 0.75

Weight of 0.15

Before cluster translation

After cluster translation in Y direction

Weight of 0.25

Page 94: Maya Character Setup

CHARACTER SETUP PART 2

94

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

The Paint Cluster Weights Tool automatically detects clusters on the surface andselects one for painting.

4 Check that Color Feedback is turned on in the Display section. Color feedback helpsyou identify the weights on the surface by representing them as grayscale values(smaller values are darker, larger values are lighter).

5 Select the cluster you want to paint. In the Paint Attributes section of the ToolSettings window, click the clustern.weights button and select the appropriate clusterweights name from the pop-up menu.

Note that you can only paint weights on one cluster at a time. If you select more thanone cluster, you can only paint weights on the active one (the one that provides colorfeedback).

If the surface has only one cluster, you can select the surface alone.

The selected cluster turns white, representing a weight value of 1, the default.

6 Select a brush, paint operation, and value and define other settings as required. See"Paint Cluster Weights Tool settings" on page 96.

7 Drag the brush across the cluster.

Tip

You can use the default hotkey Alt c to turn Color Feedback on and offoutside the Tools Settings Editor.

Tip

If you are painting on a single surface, you can skip step 3 and select thecluster without opening the Tool Settings window by right-clicking thesurface and selecting the appropriate cluster weights name from the Paintcommand submenu.

Tip

You can quickly pick weight values from one cluster and paint them onanother cluster or the same cluster using hotkeys.

1 Select the cluster with the weight values you want to pick.

2 Hold down the Pick Color Mode hotkey (default hotkey: /), click onthe area of the cluster with the weight you want to pick, then releasethe hotkey.

3 If you are painting the picked weight on the same cluster, drag thebrush across the cluster.

If you are painting the picked weight on another cluster, select thatcluster, then drag the brush across it.

Page 95: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

95

Painting weights on restricted areasWhen you paint weights over selected vertices, your strokes are applied only to theweights corresponding with the selected vertices. In effect, the unselected vertices actas a mask, where only selected vertices are affected by any painting or flooding youdo.

Before creating the mask you must first create the cluster. For details on maskingsurfaces, see “Restricting an area for painting” in Using Maya: Painting.

Flooding clustersFlooding a cluster is like taking a huge brush and applying its settings to the entirecluster. When you flood a cluster, the weight of each vertex in the cluster changesaccording to the value and operation set for the tool.

To flood a cluster, follow the steps under "To paint weights on a cluster:" on page93, but instead of painting in step 7, click the Flood button (hotkey: Alt f).

Mapping weight values to clustersUsing the Paint Cluster Weights Tool you can map attribute values onto surfacevertices relative to the UVs. The settings for the tool are applied to the clustervertices using the mapped values.

In the following example, notice that only the cluster is affected by the map.

For details on mapping, see “Mapping attributes” in Using Maya: Painting.

Tip

To smooth the transition between cluster weights, select the Smooth paintoperation and flood the cluster.

Attribute map

Mapped surface

Page 96: Maya Character Setup

CHARACTER SETUP PART 2

96

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

Paint Cluster Weights Tool settingsTo modify Paint Cluster Weights Tool settings, select the Paint Cluster Weights Tooland open the Tool Settings editor (Deform > Paint Cluster Weights Tool ❐).

For details on Brush, Stroke, Stylus Pressure, Attribute Maps, and Display settings,see “Brush Tool settings (new architecture)” in Using Maya: Painting.

Paint Attributes settings are described below.

Paint Attributes

clustern.weightsjointClustern.weights

Displays the name of the cluster selected to paint and the attribute you are painting(weights). To select another cluster to paint, click this button and select theappropriate cluster weights name. By default, the tool selects the first cluster itdetects on the surface (for example, cluster1.weights, or jointCluster3.weights).

Filter: cluster Sets a filter so that only cluster nodes display on the menu for the button above thisone. You are painting clusters with the Paint Cluster Weights Tool, so you do notneed to change this filter.

Paint Operation Select which paint operation you want to perform on the selected cluster.

Replace Your brush stroke replaces the vertex weight with the weight setfor the brush.

Add Your brush stroke adds the vertex weight to the weight set for thebrush.

Scale Your brush stroke scales the vertex weight by the weight factor setfor the brush.

Smooth Your brush stroke averages the weights of adjacent vertices toproduce a smoother transition between weights.

Value Set the weight value to apply when you perform any of the painting operations.

Min/Max Value Set the minimum and maximum possible paint values. By default, you can paintvalues between 0 and 1. Setting the Min/Max Values you can extend or narrow therange of values.

Negative values are useful for subtracting weight. For example, if you set Min Valueto -1, Value to -0.5, and select Add for the operation, you would subtract 0.5 from theweight of vertices you paint.

Positive values are used as multipliers.

Tip

You can define hotkey combinations to change most of the settings withoutopening the Tool Settings editor. For details on setting hotkeycombinations, see “Defining Artisan hotkeys” in Using Maya: Painting.

Page 97: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

97

Clamp Select whether you want to clamp the values within a specified range, regardless ofthe Value set when you paint.

Lower Turn this on to clamp the lower value to the Clamp Valuespecified below. For example, if you clamp Lower and set thelower Clamp Value to 0.5, the values you paint will never be lessthan 0.5, even if you set the Value to 0.25.

Upper Turn this on to clamp the upper value to the Clamp Valuespecified below. For example, if you clamp Upper, set the upperClamp Value to 0.75, and set Value to 1, the values you paint willnever be greater than 0.75.

Clamp Values Set the Lower and Upper values for clamping.

Flood Click Flood to apply the brush settings to all the weights on the selected cluster. Theresult depends on the brush settings defined when you perform the flood.

Vector Index If you are painting a three channel attribute (RGB or XYZ), select the channel youwant to paint. Cluster weight is a single channel attribute, therefore you do not needto change this setting.

Painting weights on rigid skin objectsWhen using rigid skinning, Maya creates a joint cluster node for each joint of theskeleton. The joint cluster nodes assign weights to the rigid skin points to controlhow the rigid skin objects deform. You can use the Paint Cluster Weights Tool tomodify the rigid skin point weights.

In the following example, notice how the surface folds at the joint. You can use thePaint Cluster Weights Tool to quickly smooth out the fold.

Note that painting smooth skin point weights requires the use of a different paintingtool (see "Painting smooth skin point weights" on page 327).

To paint weights on a rigid bound skin:

1 Select the rigid skin object you want to paint weights on.

Tip

To help you differentiate paint values when you paint with ranges greaterthan 0 to 1 (for example, -5 to 5), and to maximize the range of values thatdisplay when you paint values with ranges between 0 to 1 (for example, 0.2to 0.8), set Min Color and Max Color (in the Display section) to correspondwith the Min/Max values.

Before smoothing After smoothing

Page 98: Maya Character Setup

CHARACTER SETUP PART 2

98

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

2 Go into smooth shading mode (select Shading > Smooth Shade All or press thedefault hotkey, 5).

3 Select Deform > Paint Cluster Weights Tool ❐.

4 Check that Color Feedback is turned on in the Display section. Color feedback helpsyou identify the weights on the surface by representing them as grayscale values(smaller values are darker, larger values are lighter).

5 Select the joint cluster you want to paint weights on. In the Paint Attributes sectionof the Tool Settings window, click the jointClustern.weights button and select theappropriate joint cluster weights name from the pop-up menu.

Note that you can only paint weights on one cluster at a time. If you select more thanone cluster, you can only paint weights on the active one (the one that provides colorfeedback).

If the surface has only one cluster, you can select the surface alone.

6 Select a brush, paint operation, and value and define other settings as required. See"Paint Cluster Weights Tool settings" on page 96.

7 Drag the brush across the cluster.

Tip

You can use the default hotkey Alt c to turn Color Feedback on and offoutside the Tools Settings Editor.

Tip

If you are painting on a single surface, you can skip step 3 and select thejoint cluster without opening the Tool Settings window by right-clickingthe surface and selecting the appropriate cluster weights name from thePaint command submenu.

Tip

You can quickly pick weight values from one cluster and paint them onanother cluster or the same cluster using hotkeys.

1 Select the cluster with the weight values you want to pick.

2 Hold down the Pick Color Mode hotkey (default hotkey: /), click onthe area of the cluster with the weight you want to pick, then releasethe hotkey.

3 If you are painting the picked weight on the same cluster, drag thebrush across the cluster.

If you are painting the picked weight on another cluster, select thatcluster, then drag the brush across it.

Page 99: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

99

Adjusting jiggle weight by paintingAfter you create a jiggle deformer for an object or specific points, you can tune thejiggle of individual points by painting their jiggle weight values. Typically you'll getbest results if you use higher jiggle weight values at the central area of jiggle regionand lower values at the edge of the jiggle region. Fading the values from center toedge often works well.

To paint jiggle weights:

1 Select the surface with the jiggle deformer you want to paint weights on.

2 Go into smooth shading mode (select Shading > Smooth Shade All or press thedefault hotkey, 5).

3 Select the Paint Jiggle Weights Tool and open the Tool Settings editor(Deform > Paint Jiggle Weights Tool ❐).

The Paint Jiggle Weights Tool automatically detects jiggle deformers on the surface.

4 Check that Color Feedback is turned on in the Display section. Color feedback helpsyou identify the weights on the surface by representing them as grayscale values(smaller values are darker, larger values are lighter).

5 Select the jiggle deformer you want to paint. In the Paint Attributes section of theTool Settings window, click the jigglen.weights button and select the appropriatejiggle weights name from the pop-up menu.

Note that you can only paint weights on one jiggle deformer at a time. If you selectmore than one jiggle deformer, you can only paint weights on the active one (the onethat provides color feedback).

If the surface has only one jiggle deformer, you can select the surface alone.

6 Select a brush, paint operation, and value and define other settings as required. See"Paint Cluster Weights Tool settings" on page 96.

7 Drag the brush across the deformer where you want to change the weights.

Tip

You can use the default hotkey Alt c to turn Color Feedback on and offoutside the Tools Settings Editor.

Tip

If you are painting on a single surface, you can skip step 3 and select thejiggle deformer and weight attribute without opening the Tool Settingswindow by right-clicking the surface and selecting the appropriate jiggleweights name from the Paint command submenu.

Page 100: Maya Character Setup

CHARACTER SETUP PART 2

100

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

Painting weights on masked jiggle deformersWhen you paint weights over selected vertices, your strokes are applied only to theweights corresponding with the selected vertices. In effect, the unselected vertices actas a mask, where only selected vertices are affected by any painting or flooding youdo.

Before creating the mask you must first create the jiggle deformer. For details onmasking surfaces, see “Restricting an area for painting” in Using Maya: Painting.

Flooding jiggle deformersFlooding a jiggle deformer is like taking a huge brush and applying its settings to theentire cluster. When you flood a deformer, the weight of each vertex in the deformerchanges according to the value and operation set for the tool.

To flood a cluster, follow the steps under "To paint jiggle weights:" on page 99, butinstead of painting in step 7, click the Flood button (hotkey: Alt f).

Mapping weight values to jiggle deformersUsing the Paint Cluster Weights Tool you can map attribute values onto surfacevertices relative to the UVs. The settings for the tool are applied to the clustervertices using the mapped values.

For details on mapping, see “Mapping attributes” in Using Maya: Painting.

Paint Jiggle Weights Tool settingsTo modify Paint Jiggle Weights Tool settings, select the Paint Jiggle Weights Tooland open the Tool Settings editor (Deform > Paint Jiggle Weights Tool ❐).

For details on Brush, Stroke, Stylus Pressure, Attribute Maps, and Display settings,see “Brush Tool settings (new architecture)” in Using Maya: Painting.

Tip

Using hotkeys, you can quickly pick weight values from one jiggledeformer and paint them on another jiggle deformer or the same one.

1 Select the jiggle deformer with the weight values you want to pick.

2 Hold down the Pick Color Mode hotkey (default hotkey: /), click onthe area of the jiggle deformer with the weight you want to pick, thenrelease the hotkey.

3 If you are painting the picked weight on the same deformer, drag thebrush across the deformer.

If you are painting the picked weight on another jiggle deformer,select that deformer, then drag the brush across it.

Tip

To smooth the transition between jiggle weights, select the Smooth paintoperation and flood the jiggle deformer.

Page 101: Maya Character Setup

USING CLUSTER DEFORMERS | 6Editing cluster deformation effects

DEFORMERS CHARACTER SETUP

101

Paint Attributes settings are described next.

Paint Attributes

jigglen.weights Displays the name of the jiggle node selected to paint and the attribute you arepainting (weights). To select another deformer to paint, click this button and selectthe appropriate jiggle deformer weights name. By default, the tool selects the firstjiggle deformer it detects on the surface (for example, jiggle2.weights).

Filter: jiggle Sets a filter so that only jiggle deformer nodes display on the menu for the buttonabove this one. You are painting jiggle weights with the Paint Jiggle Weights Tool, soyou do not need to change this filter.

Paint Operation Select which paint operation you want to perform on the selected jiggle deformer.

Replace Your brush stroke replaces the painted weight with the weight setfor the brush.

Add Your brush stroke adds the painted weight to the weight set forthe brush.

Scale Your brush stroke scales the painted weight by the weight factorset for the brush.

Smooth Your brush stroke averages the weights of adjacent vertices toproduce a smoother transition between weights.

Value Set the weight value to apply when you perform any of the painting operations.

Min/Max Value Set the minimum and maximum possible paint values. By default, you can paintvalues between 0 and 1. Setting the Min/Max Values you can extend or narrow therange of values.

Negative values are useful for subtracting weight. For example, if you set Min Valueto -1, Value to -0.5, and select Add for the operation, you would subtract 0.5 from theweight of vertices you paint.

Positive values are used as multipliers.

Clamp Select whether you want to clamp the values within a specified range, regardless ofthe Value set when you paint.

Tip

You can define hotkey combinations to change most of the settings withoutopening the Tool Settings editor. For details, see “Defining Artisanhotkeys” in Using Maya: Painting.

Tip

To help you differentiate paint values when you paint with ranges greaterthan 0 to 1 (for example, -5 to 5), and to maximize the range of values thatdisplay when you paint values with ranges between 0 to 1 (for example, 0.2to 0.8), set Min Color and Max Color (in the Display section) to correspondwith the Min/Max values.

Page 102: Maya Character Setup

CHARACTER SETUP PART 2

102

USING CLUSTER DEFORMERS | 6Deleting cluster deformers

Lower Turn this on to clamp the lower value to the Clamp Valuespecified below. For example, if you clamp Lower and set thelower Clamp Value to 0.5, the values you paint will never be lessthan 0.5, even if you set the Value to 0.25.

Upper Turn this on to clamp the upper value to the Clamp Valuespecified below. For example, if you clamp Upper, set the upperClamp Value to 0.75, and set Value to 1, the values you paint willnever be greater than 0.75.

Clamp Values Set the Lower and Upper values for clamping.

Flood Click Flood to apply the brush settings to all the weights on the selected jiggledeformer. The result depends on the brush settings defined when you perform theflood.

Vector Index If you are painting a three channel attribute (RGB or XYZ), select the channel youwant to paint. Jiggle deformer weight is a single channel attribute, therefore you donot need to change this setting.

Setting the cluster relative to the parent transformUsing the Relative attribute, you can set the cluster deformation to be active onlywhen the direct parent of the cluster handle is transformed. This lets you createeffects where a hierarchy of parent objects do not all affect the cluster deformation.

For example, if you parent the cluster handle to a wrist joint and turn on its Relativeattribute, you can rotate the shoulder without the cluster affecting the skin aroundthe wrist, even though the wrist’s position changes. When you move the wrist itself,the cluster deforms the geometry as desired.

Controlling the deformation percentage of the entire clusterYou can control the percentage of deformation for the entire cluster using theEnvelope channel. Change Envelope to scale all the cluster weights in the same way.If you set the Envelope value and also various values for cluster weights, all thevalues affect the deformation.

Using weighted nodesYou can use another object for the cluster handle, the movement of which controlsthe cluster. Specify the object you want to use in the cluster handle shape node,under the Weighted Node attribute.

Setting the location of the cluster handleYou can control the placement of the cluster handle (displayed as a “C”) byspecifying the location of the cluster handle’s origin. To do so, from theclusternHandleShape tab of the Attribute editor, set the Origin attribute. The Originattribute includes fields for X-axis, Y-axis, and Z-axis values.

DELETING CLUSTER DEFORMERS

To delete a cluster deformer:

1 Select the cluster deformer node.

Page 103: Maya Character Setup

USING CLUSTER DEFORMERS | 6Deleting cluster deformers

DEFORMERS CHARACTER SETUP

103

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 104: Maya Character Setup

CHARACTER SETUP PART 2

104

USING CLUSTER DEFORMERS | 6Deleting cluster deformers

Page 105: Maya Character Setup

DEFORMERS CHARACTER SETUP

105

7 USING JIGGLE DEFORMERS

With the jiggle deformer, you can cause points on a surface or curve to shake as theymove, speed up, or slow down.

For instance, you can create effects such as:

• a wrestler’s stomach shaking

• hair jiggling

• an insect’s antennae vibrating

You can apply jiggle to specific points or to the entireobject. In the context of jiggle deformers, the termpoints means CVs, lattice points, or the vertices ofpolygonal or subdivision surfaces.

A useful technique is to apply jiggle to an influenceobject that underlies and alters the skin.

Be aware that you can create two or more jiggledeformers on different points of a single object. Youcan get the same effect more simply by applying a single jiggle deformer to thepoints and adjusting the jiggle weights (see "Adjusting jiggle weight by painting" onpage 107).

CREATING JIGGLE DEFORMERS

You can set creation options and then create a deformer, or you can create adeformer with the current creation options and edit the options later.

1 Select the points or entire object you want to jiggle.

2 Select Deform > Create Jiggle Deformer.

or

Select Deform > Create Jiggle Deformer ❒. In the options window, set the creationoptions (see below), and then click the Create button.

3 After you play the animation to check the results, tune the jiggle as described in"Adjusting jiggle weight by painting" on page 107.

image by Lee Graft

Page 106: Maya Character Setup

CHARACTER SETUP PART 2

106

USING JIGGLE DEFORMERS | 7Creating Jiggle deformers

Setting jiggle creation optionsThe Create Jiggle Deformer options window has attributes on two tabs: Basic andAdvanced.

Basic

Stiffness Sets the rigidity of the jiggle, from 0 to 1. High values diminishelasticity and speed up the jiggle; the points act as if controlled bytight springs. Low values slow the jiggle and create an effect likespongy springs.

Damping Mutes the springiness of the jiggle. A high value minimizes jiggle.A low value increases springiness.

Weight Scales the jiggle effect up or down on all points, regardless ofindividual weights. The individual jiggle weights do not changevalue, only the overall amount of jiggle.

Jiggle Only After ObjectStops Jiggle occurs only after a moving object stops, not while it moves.

Ignore Transform Jiggle applies only to animated points, not to the animatedtransform node of the object. For example, suppose you haveanimated a kangaroo hopping as it talks. You animated thehopping motion by keying the translate attributes of the transformnode, and you animated the talking mouth by keying points of themouth. With Ignore Transform on, only the talking mouth willjiggle.

Advanced

The options on the Advanced tab are common to all deformers. See the onlineCharacter Setup material for details on these options.

Editing jiggle attributesAfter you create a jiggle deformer, you can edit several attributes of the jiggledeformer after you create it. To edit the attributes, select the object to which youapplied the jiggle, display the Attribute Editor, and then click the jigglen tab.

Jiggle Attributes:

Enable Enable turns on the jiggle. (Default setting.)

Disable turns off the jiggle.

Enable Only After Object Stops causes the jiggling to occur onlyafter a moving object stops, not while it moves.

Stiffness See "Stiffness" on page 106.

Damping See "Damping" on page 106.

Jiggle Weight See "Weight" on page 106.

Force AlongNormal Sets how much jiggling occurs in directions normal to the surface.

Force On Tangent Sets how much jiggling occurs in directions tangent to the surface.

Page 107: Maya Character Setup

USING JIGGLE DEFORMERS | 7Creating Jiggle deformers

DEFORMERS CHARACTER SETUP

107

Motion Multiplier If you select Enable Only When Resting (see description forEnable), the Motion Multiplier scales how much the object jigglesafter it stops moving.

Ignore Transform See "Ignore Transform" on page 106.

Disk Cache Attributes

Disk Cache If you’ve created jiggle cache for the jiggle animation controlled bythis jiggle node, this field shows the name of the jiggle cache node.You can click the arrow button to the right of the name to view thejiggle cache settings. See "Setting disk cache creation options" onpage 108.

Deformer Attributes

Envelope Scales the amount the points move during deformation. Adjust theslider to select values from 0 to 1. You can also enter values from -2 to 2 in the text box. A value of 2 doubles the effect. A negativevalue inverts the effect. Default is 1.

Adjusting jiggle weight by paintingSee "Adjusting jiggle weight by painting" on page 99.

Using disk cache for jiggle animationWhen you create jiggle disk cache for your scene, Maya stores on disk the frame-by-frame processing of jiggle animation. Before you can render jiggle animation withmotion blur, you must create jiggle disk cache.

More specifically, if the Motion Blur option is turned on in the Render Globals, youmust create jiggle disk cache before you render the animation. Otherwise therendered animation sequence will display the animation incorrectly. Note that thejiggling object’s Motion Blur option setting is irrelevant to this issue.

Creating the cache is also beneficial for scenes that play slowly because of theircomplexity. If you create the cache, you can go directly to any frame in the TimeSlider and see an accurate portrayal of the jiggled objects. Without the cache, youwould need to wait for the animation to play from the beginning of the Time Sliderup to that frame.

Jiggle processing is efficient and does not slow a scene much. Unless your sceneplays unusually slowly because of its complexity, you’ll want to create disk cacheonly as a prelude to rendering with motion blur.

Creating jiggle disk cacheWhen you create jiggle disk cache, you can set creation options and then create thecache, or you can immediately create the cache with the current creation options.

Important

To avoid unexpected deformations, do not change the number of adeformable object’s points after you create a deformer.

Page 108: Maya Character Setup

CHARACTER SETUP PART 2

108

USING JIGGLE DEFORMERS | 7Creating Jiggle deformers

To create disk cache for jiggle:

• Select Deform > Create Jiggle Disk Cache.

or

• Select Deform > Create Jiggle Disk Cache ❒ to set creation options (see below), andthen click the Create button in the options window.

Maya creates the jiggle cache and creates a permanent jiggle cache file for each jiggledeformer in the scene. The file or files are in the current project’s data folder, and arenamed scene_jigglen.mcj.

Usually you do not need to know the location of the files. However, if you move thescene to a different project, you must also move the jiggle cache file to thecorresponding data folder of that project so that the scene plays or renders using thecache.

Note the following issues:

By default, if you save an existing scene as a new name, Maya makes a copy of thejiggle cache file and gives it a name that corresponds with the new scene name. Tosave disk space, you can prevent this copy from being created: Select File > SaveScene As ❒. Click the Options button to display the options window. In the optionswindow, turn on turn on Never for this option: Copy Jiggle Disk Cache Files on SaveScene As. Then click the Save Scene As button.

If you’ve never saved the scene (the scene is untitled), Maya creates the jiggle cachefile(s) only after you save the scene.

Setting disk cache creation optionsThe Create Disk Cache options follow:

Cache Time Range Specifies which frames are cached. It is easiest to cache the entireframe range of the Time Line. However, you can create smallercache files to conserve disk space by caching only the frameswhere objects jiggle.

Time Slider caches all frames of the Playback Start/End range.

Render Globals caches the frame range specified in the Image FileOutput section of the Render Globals window. (SelectWindow > Rendering Editors > Render Globals.)

Start/End caches a frame range you specify in the Start Time andEnd Time boxes.

Start TimeEnd Time Sets the cached frame range. Available only if you select Custom

for the Cache Frame Range.

Over Sample Oversampling and undersampling specify how often Mayacalculates jitter per frame.

If you select Over Sample, a Rate value of 2 or larger mightincrease the precision of the cached jiggle in scenes where ajiggling object collides with a rigid body quickly and repeatedly.

If you select Under Sample, a Rate value of 2 or larger decreasesthe precision of the cached jiggle, but quickens the cachingoperation. An Under Sample Rate of 2, for instance, means Mayacalculates jitter once every two frames.

Page 109: Maya Character Setup

USING JIGGLE DEFORMERS | 7Creating Jiggle deformers

DEFORMERS CHARACTER SETUP

109

If a jiggling object collides unrealistically with a rigid body, selectOver Sample and set a Rate that matches the Over Samples settingavailable in Solvers > Edit Oversampling or Cache Settings.

Rate Sets an integer value for the Over Sample or Under Sample.

Disabling or deleting jiggle animation after cachingIf you want to modify the jiggle animation after caching, for example, by changingthe Stiffness, you must disable or delete the cache so the scene plays with themodifications. Before you render again, you must create the cache again. Deletingcache is also useful if you need to free up disk space.

Be aware that if you disable a jiggle deformer (rather than the cache), you alsodisable playback of the jiggle cache and cannot create the jiggle cache.

To disable or delete the jiggle cache for all jiggling objects:

1 Select Deform > Jiggle Disk Cache Attributes to display the Attribute Editor.

2 In the Control For All Caches section:

• Click Delete All Caches.

or

• From the Enable Status menu, select Disable All.

To delete the jiggle cache for a particular object:

1 Select the object to which you applied the jiggle deformer.

2 Select Window > Attribute Editor. Select the jigglenCache tab. (Expand the size ofthe Attribute Editor to see all tabs.)

3 Click Delete Cache.

Page 110: Maya Character Setup

CHARACTER SETUP PART 2

110

USING JIGGLE DEFORMERS | 7Creating Jiggle deformers

Page 111: Maya Character Setup

DEFORMERS CHARACTER SETUP

111

8 USING BEND NONLINEARDEFORMERS

With bend deformers, you can bend an object along an arc.

UNDERSTANDING BEND DEFORMERS

Bend deformers enable you to bend any deformable object along a circular arc. Theyare useful both for character setup and modeling. Bend deformers include handlesthat enable you to control the extent and curvature of the bending effects in anintuitive manner.

Related MEL commandsMEL commands related to bend deformers include the following:

• nonLinear

• reorderDeformers

Bend deformeracting on a cone

Page 112: Maya Character Setup

CHARACTER SETUP PART 2

112

USING BEND NONLINEAR DEFORMERS | 8Creating bend deformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a bend deformer can include the following:

• Bend deformer algorithm node (default name: bendn; also note deformBend andnonLinear nodes)

• Bend deformer handle node (default name: bendnHandle)

• Bend deformer handle shape node (default name: bendnHandleShape)

• Bend deformer set node (default name: bendnSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING BEND DEFORMERS

When creating bend deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Bend ❒.

The Create Bend Deformer Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options.

Basic

Low Bound Specifies lower extent of the bending along the bend deformer’s negative Y-axis.Values can be negative numbers or zero. Values can be negative numbers or zero.Use slider to select values from -10.0000 to 0.0000. Default is -1.0000.

High Bound Specifies upper extent of the bending along the bend deformer’s positive Y-axis.Values can be positive numbers only (minimum is 0.0000). Use slider to select valuesfrom 0.0000 to 10.0000. Default is 1.0000.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 113: Maya Character Setup

USING BEND NONLINEAR DEFORMERS | 8Editing bend deformation effects

DEFORMERS CHARACTER SETUP

113

Curvature Specifies the amount of bending. Negative values specify the bending towards thebend deformer’s negative X-axis; positive values specify the bending towards thedeformer’s positive X-axis. Use slider to select values from -4.0000 to 4.0000. Defaultis 0.0000, which specifies no bending.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a bend deformer.

or

• Click Save to save creation options without creating a bend deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a bend deformer

To create a bend deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Bend.

Maya creates a bend deformer with the previously set creation options.

In the scene, the bend deformer handle is displayed as the currently selected object.The bend deformer handle (and its pivot point) are placed at the center of the object.In the Outliner, the bend deformer handle is listed (default name: bendnHandle). Inthe Channel Box, the bendnHandle and bendnHandleShape nodes are selected.

To create deformation effects:

1 Manipulate the bend deformer handle.

2 Edit bend deformer channels and attributes.

For more information on creating and editing deformation effects, see the nextsection.

EDITING BEND DEFORMATION EFFECTS

After you create the bend deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the bend handle node(default name: bendnHandle), the bend handle shape node (bendnHandleShape),and the bend deformer node (default name: bendn).

You can edit the effects of the bend deformer by editing the bend handle node andthe bend deformer node. You can move (translate), rotate, and scale the bend handleto edit the effects of the deformation. You can also edit the bend deformer node’skeyable attributes (channels), which are displayed in the Channel Box.

You can edit bend deformation effects as described in the following topics:

Page 114: Maya Character Setup

CHARACTER SETUP PART 2

114

USING BEND NONLINEAR DEFORMERS | 8Editing bend deformation effects

Manipulating bend deformer handles

To edit by using the handle manipulators:

1 Select the bend deformer node (default name: bendn).

2 Select the Show Manipulator Tool (default shortcut: t key).

3 Note the manipulators on the bend deformer handle. These enable you to editattributes interactively.

4 In the scene, select one of the manipulators on the bend deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

To edit by moving, rotating, or scaling the handle:

1 Select the bend deformer handle node (default name: bendnHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing Insert key, move the pivot point,and then press the Insert key again.

Editing bend deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a bend deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing bend deformer attributes"on page 115).

To edit channels with the Channel Box:

1 Select the bend deformer node (default name: bendn).

Curvature

High Bound

Low Bound

Bend deformer handle manipulators

Page 115: Maya Character Setup

USING BEND NONLINEAR DEFORMERS | 8Editing bend deformation effects

DEFORMERS CHARACTER SETUP

115

One quick way to select the bend deformer node is to select the object beingdeformed, and then select the bend deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Curvature Specifies the amount of bending. Negative values specify the bending towards thebend deformer’s negative X-axis; positive values specify the bending towards thedeformer’s positive X-axis. Default is 0, which specifies no bending.

Low Bound Specifies lower extent of the bending along the bend deformer’s negative Y-axis.Values can be negative numbers or zero. Values can be negative numbers or zero.Default is -1.

High Bound Specifies upper extent of the bending along the bend deformer’s positive Y-axis.Values can be positive numbers only (minimum is 0.0000). Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing bend deformer attributes

To edit with the Attribute Editor:

1 Select the bend deformer node (default name: bendn).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Nonlinear Deformer Attributes

Curvature Specifies the amount of bending. Negative values specify the bending towards thebend deformer’s negative X-axis; positive values specify the bending towards thedeformer’s positive X-axis. Use the slider to select values from -4.0000 to 4.0000.Default is 0.0000, which specifies no bending.

Low Bound Specifies the lower extent of the bending along the bend deformer’s negative Y-axis.Values can be negative numbers or zero. Values can be negative numbers or zero.Use the slider to select values from -10.0000 to 0.0000. Default is -1.0000.

High Bound Specifies the upper extent of the bending along the bend deformer’s positive Y-axis.Values can be positive numbers only (minimum is 0.0000). Use the slider to selectvalues from 0.0000 to 10.0000. Default is 1.0000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0 to 1. Default is 1.

Page 116: Maya Character Setup

CHARACTER SETUP PART 2

116

USING BEND NONLINEAR DEFORMERS | 8Deleting a bend deformer

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

DELETING A BEND DEFORMER

To delete a bend deformer:

1 Select the bend deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

The bend deformer handle, bend deformer handle shape, and bend deformer nodesare all deleted. However, the object still has the tweak node as an input node, so anytweaks you might have made are preserved. Also, note that the various input nodesthat structure the evaluation of the deformation are not deleted.

Page 117: Maya Character Setup

DEFORMERS CHARACTER SETUP

117

9 USING FLARE NONLINEARDEFORMERS

The flare deformer flares or tapers an object about two axes.

UNDERSTANDING FLARE DEFORMERS

Flare deformers enable you to flare out or taper in any deformable object along twoaxes. They are useful both for character setup and modeling. Flare deformers includehandles that enable you to control the extent and curvature of the flaring or taperingeffects in an intuitive manner.

Related MEL commandsMEL commands related to flare deformers include the following:

• nonLinear

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Flare deformer actingon a cylinder

Page 118: Maya Character Setup

CHARACTER SETUP PART 2

118

USING FLARE NONLINEAR DEFORMERS | 9Creating flare deformers

Dependency graph nodesThe dependency graph nodes for a flare deformer can include the following:

• Flare deformer algorithm node (default name: flaren; also note deformFlare andnonLinear nodes)

• Flare deformer handle node (default name: flarenHandle)

• Flare deformer handle shape node (default name: flarenHandleShape)

• Flare deformer set node (default name: flarenSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING FLARE DEFORMERS

When creating flare deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Flare ❒.

The Create Flare Deformer Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options.

Basic

Low Bound Specifies the lower extent of the flare on the deformer’s local negative Y-axis. Valuescan be negative numbers or zero. Use the slider to select values from negative10.0000 to 0.0000. Default is -1.0000.

High Bound Specifies the upper extent of the flare on the deformer’s positive local Y-axis. Valuescan be positive numbers only (minimum value is 0). Use the slider to select valuesfrom 0.0000 to 10.0000. Default is 1.0000.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 119: Maya Character Setup

USING FLARE NONLINEAR DEFORMERS | 9Creating flare deformers

DEFORMERS CHARACTER SETUP

119

Start Flare X Specifies the amount of flaring from the deformer’s X-axis at the Low Bound. Theflaring progresses along the deformer’s local X-axis, varying according to the valueof Curve. Use the slider to select values from 0.0000 to 10.0000. Default is 1.0000.

Start Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the Low Bound. Theflaring progresses along the deformer’s local Z-axis to the High Bound, varyingaccording to the value of Curve. Use the slider to select values from 0.0000 to10.0000. Default is 1.0000.

End Flare X Specifies the amount of flaring from the deformer’s X-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local X-axis tothe High Bound, varying according to the value of Curve. Use the slider to selectvalues from 0.0000 to 10.0000. Default is 1.0000.

End Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local Z-axis tothe High Bound, varying according to the value of Curve. Use the slider to selectvalues from 0.0000 to 10.0000. Default is 1.0000.

Curve Specifies the amount of curvature (the profile of the flaring curve) between the LowBound and the High Bound. A value of 0 specifies no curvature (linearinterpolation). Positive values specify outward, bulging curvatures; negative valuesspecify inward, hourglass-shaped curvatures. Use the slider to select values from0.0000 to 10.0000. Default is 0.0000.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a flare deformer.

or

• Click Save to save creation options without creating a flare deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a flare deformer

To create a flare deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Flare.

Maya creates a flare deformer with the previously set creation options.

In the scene, the flare deformer handle is displayed as the currently selected object.The flare deformer handle (and its pivot point) are placed at the center of the object.In the Outliner, the flare deformer handle is listed (default name: flarenHandle). Inthe Channel Box, the flarenHandle and flarenHandleShape nodes are selected.

To create deformation effects:

1 Manipulate the flare deformer handle.

2 Edit flare deformer channels and attributes.

Page 120: Maya Character Setup

CHARACTER SETUP PART 2

120

USING FLARE NONLINEAR DEFORMERS | 9Editing flare deformation effects

For more information on creating and editing deformation effects, see the nextsection.

EDITING FLARE DEFORMATION EFFECTS

After you create the flare deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the flare handle node (defaultname: flarenHandle), the flare handle shape node (flarenHandleShape), and the flaredeformer node (default name: flaren).

You can edit the effects of the flare deformer by editing the flare handle node andthe flare deformer node. You can move (translate), rotate, and scale the flare handleto edit the effects of the deformation. You can also edit the flare deformer node’skeyable attributes (channels), which are displayed in the Channel Box.

You can edit bend deformation effects in a variety of ways:

• Manipulating flare deformer handles

• Editing flare deformer channels

• Editing flare deformer attributes

Manipulating flare deformer handles

To edit with the handle manipulators:

1 Select the flare deformer node (default name: flaren).

2 Select the Show Manipulator Tool (default shortcut: t key).

3 Note the manipulators on the flare deformer handle. These enable you to editattributes interactively.

4 In the scene, select one of the manipulators on the flare deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

End Flare XHigh Bound

Low Bound

Flare deformer handle manipulators

End Flare Z

Start Flare X

Start Flare Z

Curve

Page 121: Maya Character Setup

USING FLARE NONLINEAR DEFORMERS | 9Editing flare deformation effects

DEFORMERS CHARACTER SETUP

121

To edit by moving, rotating, or scaling the handle:

1 Select the flare deformer handle node (default name: flarenHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Editing flare deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a lattice deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing flare deformer attributes"on page 122).

To edit with the Channel Box:

1 Select the flare deformer node (default name: flaren).

One quick way to select the flare deformer node is to select the object beingdeformed, and then select the flare deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Start Flare X Specifies the amount of flaring from the deformer’s X-axis at the Low Bound. Theflaring progresses along the deformer’s local X-axis, varying according to the valueof Curve. Default is 1.

Start Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the Low Bound. Theflaring progresses along the deformer’s local Z-axis to the High Bound, varyingaccording to the value of Curve. Default is 1.

End Flare X Specifies the amount of flaring from the deformer’s X-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local X-axis tothe High Bound, varying according to the value of Curve. Default is 1.

End Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local Z-axis tothe High Bound, varying according to the value of Curve. Default is 1.

Curve Specifies the amount of curvature (the profile of the flaring curve) between the LowBound and the High Bound. A value of 0 specifies no curvature (linearinterpolation). Positive values specify outward, bulging curvatures; negative valuesspecify inward, hourglass-shaped curvatures. Default is 0.

Low Bound Specifies the lower extent of the flare on the deformer’s local negative Y-axis. Valuescan be negative numbers or zero. Default is -1.

High Bound Specifies the upper extent of the flare on the deformer’s positive local Y-axis. Valuescan be positive numbers only (minimum value is 0). Default is 1.

3 Click on a channel name with the left mouse button.

Page 122: Maya Character Setup

CHARACTER SETUP PART 2

122

USING FLARE NONLINEAR DEFORMERS | 9Editing flare deformation effects

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing flare deformer attributes

To edit with the Attribute Editor:

1 Select the flare deformer node (default name: flaren).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Nonlinear Deformer Attributes

Start Flare X Specifies the amount of flaring from the deformer’s X-axis at the Low Bound. Theflaring progresses along the deformer’s local X-axis, varying according to the valueof Curve. Use the slider to select values from 0.000 to 10.000. Default is 1.000.

Start Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the Low Bound. Theflaring progresses along the deformer’s local Z-axis to the High Bound, varyingaccording to the value of Curve. Use the slider to select values from 0.000 to 10.000.Default is 1.000.

End Flare X Specifies the amount of flaring from the deformer’s X-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local X-axis tothe High Bound, varying according to the value of Curve. Use the slider to selectvalues from 0.000 to 10.000. Default is 1.000.

End Flare Z Specifies the amount of flaring from the deformer’s Z-axis at the High Bound. Theflaring starts at the Low Bound and progresses along the deformer’s local Z-axis tothe High Bound, varying according to the value of Curve. Use the slider to selectvalues from 0.000 to 10.000. Default is 1.000.

Curve Specifies the amount of curvature (the profile of the flaring curve) between the LowBound and the High Bound. A value of 0 specifies no curvature (linearinterpolation). Positive values specify outward, bulging curvatures; negative valuesspecify inward, hourglass-shaped curvatures. Use the slider to select values from -3.000 to 3.000. Default is 0.000.

Low Bound Specifies lower extent of the flare on the deformer’s local negative Y-axis. Values canbe negative numbers or zero. Use the slider to select values from negative 10.000 to0.000. Default is -1.000.

High Bound Specifies upper extent of the flare on the deformer’s positive local Y-axis. Values canbe positive numbers only (minimum value is 0). Use the slider to select values from0.000 to 10.000. Default is 1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Use slider to select values from 0.000 to 1.000.Default is 1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Page 123: Maya Character Setup

USING FLARE NONLINEAR DEFORMERS | 9Deleting flare deformers

DEFORMERS CHARACTER SETUP

123

Extra Attributes

(No extra attributes by default.)

DELETING FLARE DEFORMERS

To delete a flare deformer:

1 Select the flare deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

The flare deformer handle, flare deformer handle shape, and flare deformer nodesare all deleted. However, the object still has the tweak node as an input node, so anytweaks you might have made are preserved. Also, note that the various input nodesthat structure the evaluation of the deformation are not deleted.

Page 124: Maya Character Setup

CHARACTER SETUP PART 2

124

USING FLARE NONLINEAR DEFORMERS | 9Deleting flare deformers

Page 125: Maya Character Setup

DEFORMERS CHARACTER SETUP

125

10 USING SINE NONLINEARDEFORMERS

The sine deformer changes the shape of an object along a sine wave.

UNDERSTANDING SINE DEFORMERS

Sine deformers enable you to undulate any deformable object along a sine wave.They are useful both for character setup and modeling. Sine deformers includehandles that you can use to control the extent, amplitude, and wavelength of the sinewave effects in an intuitive manner.

Related MEL commandsMEL commands related to sine deformers include the following:

• nonLinear

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a sine deformer can include the following:

Sine deformer actingon a cylinder

Page 126: Maya Character Setup

CHARACTER SETUP PART 2

126

USING SINE NONLINEAR DEFORMERS | 10Creating sine deformers

• Sine deformer algorithm node (default name: sinen; also note deformSine andnonLinear nodes)

• Sine deformer handle node (default name: sinenHandle)

• Sine deformer handle shape node (default name: sinenHandleShape)

• Sine deformer set node (default name: sinenSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING SINE DEFORMERS

When creating sine deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Sine ❒.

The Create Sine Deformer Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options.

Basic

Low Bound Specifies the extent of the sine wave along the deformer’s local negative Y-axis.Values can be negative numbers or zero. Use the slider to specify values fromnegative 10.0000 to 0.0000. Default is -1.0000.

High Bound Specifies the extent of the sine wave along the deformer’s local positive Y-axis.Values can be positive numbers only (minimum value is 0). Use the slider to specifyvalues from 0.0000 to 10.0000. Default is 1.0000.

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Use the slider tospecify values from -5.0000 to 5.0000. Default is 0.0000 (no wave).

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 127: Maya Character Setup

USING SINE NONLINEAR DEFORMERS | 10Editing sine deformation effects

DEFORMERS CHARACTER SETUP

127

Wavelength Specifies the frequency of the sine wave along the deformer’s local Y-axis. Forgreater frequency, decrease the wavelength; for lesser frequency, increase thewavelength. Use the slider to specify values from -0.1000 to 10.0000. Default is2.0000.

Dropoff Specifies how the amplitude decays. Negative values specify a decay towards thecenter of the deformer handle (maximum is -1.0000), and positive values specify adecay away from the center of the deformer handle (maximum is 1.0000). Use theslider to specify values from -1.0000 to 1.0000. Default is 0.0000 (no decay).

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a wriggling effect. Use the slider to specify valuesfrom -10.0000 to 10.0000. Default is 0.0000.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a sine deformer.

or

• Click Save to save creation options without creating a sine deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a sine deformer

To create a Sine deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Sine.

Maya creates a sine deformer with the previously set creation options.

In the scene, the sine deformer handle is displayed as the currently selected object.The sine deformer handle (and its pivot point) are placed at the center of the object.In the Outliner, the sine deformer handle is listed (default name: sinenHandle). Inthe Channel Box, the sinenHandle and sinenHandleShape nodes are selected.

EDITING SINE DEFORMATION EFFECTS

After you create the sine deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the sine handle node (defaultname: sinenHandle), the sine handle shape node (sinenHandleShape), and the sinedeformer node (default name: sinen).

You can edit the effects of the sine deformer by editing the sine handle node and thesine deformer node. You can move (translate), rotate, and scale the sine handle toedit the effects of the deformation. You can also edit the sine deformer node’skeyable attributes (channels), which are displayed in the Channel Box.

You can edit bend deformation effects in a variety of ways:

• Manipulating sine deformer handles

Page 128: Maya Character Setup

CHARACTER SETUP PART 2

128

USING SINE NONLINEAR DEFORMERS | 10Editing sine deformation effects

• Editing sine deformer channels

• Editing sine deformer attributes

Manipulating sine deformer handles

To edit by using the handle manipulators:

1 Select the sine deformer node (default name: sinen).

2 Select the Show Manipulator Tool (default shortcut: t key).

3 Note the manipulators on the sine deformer handle. These enable you to editattributes interactively.

4 In the scene, select one of the manipulators on the sine deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

To edit by moving, rotating, or scaling the handle:

1 Select the sine deformer handle node (default name: sinenHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Remember that you can access the deformer handle’s local axes (Display >Component Display > Local Rotation Axes), rotate and scale pivots (Display >Component Display > Rotate Pivots or Scale Pivots) and selection handle (Display >Component Display > Selection Handles).

Amplitude

High Bound

Low Bound

Sine deformer handle manipulators

Wavelength

Offset

Note: adjust Dropofffrom the Channel Box

Page 129: Maya Character Setup

USING SINE NONLINEAR DEFORMERS | 10Editing sine deformation effects

DEFORMERS CHARACTER SETUP

129

Editing sine deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a sine deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing sine deformer attributes"on page 129).

To edit the with the Channel Box:

1 Select the sine deformer node (default name: sinen).

One quick way to select the sine deformer node is to select the object beingdeformed, and then select the sine deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Default is 0 (nowave).

Wavelength Specifies the frequency of the sine wave along the deformer’s local Y-axis. Forgreater frequency, decrease the wavelength; for lesser frequency, increase thewavelength. Default is 2.

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a wriggling effect. Default is 0.

Dropoff Specifies how the amplitude decays. Negative values specify a decay towards thecenter of the deformer handle (maximum is -1), and positive values specify a decayaway from the center of the deformer handle (maximum is 1). Default is 0 (nodecay).

Low Bound Specifies the extent of the sine wave along the deformer’s local negative Y-axis.Values can be negative numbers or zero. Default is -1.

High Bound Specifies the extent of the sine wave along the deformer’s local positive Y-axis.Values can be positive numbers only (minimum value is 0). Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing sine deformer attributes

To edit with the Attribute Editor:

1 Select the sine deformer node (default name: sinen).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Page 130: Maya Character Setup

CHARACTER SETUP PART 2

130

USING SINE NONLINEAR DEFORMERS | 10Deleting sine deformers

Nonlinear Deformer Attributes

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Use the slider toselect values from -5.000 to 5.000. Default is 0.000 (no wave).

Wavelength Specifies the frequency of the sine wave along the deformer’s local Y-axis. Forgreater frequency, decrease the wavelength; for lesser frequency, increase thewavelength. Use the slider to select values from 0.100 to 10.000. Default is 2.000.

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a wriggling effect. Use the slider to select values from-10.000 to 10.000. Default is 0.000.

Dropoff Specifies how the amplitude decays. Negative values specify a decay towards thecenter of the deformer handle (maximum is -1.000), and positive values specify adecay away from the center of the deformer handle (maximum is 1.000). Use theslider to select values from -1.000 to 1.000. Default is 0.000 (no decay).

Low Bound Specifies the extent of the sine wave along the deformer’s local negative Y-axis.Values can be negative numbers or zero. Use the slider to select values from negative10.000 to 0.000. Default is -1.000.

High Bound Specifies the extent of the sine wave along the deformer’s local positive Y-axis.Values can be positive numbers only (minimum value is 0.000). Use the slider toselect values from 0.000 to 10.000. Default is 1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0 to 1. Default is 1.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

DELETING SINE DEFORMERS

To delete a sine deformer:

1 Select the sine deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

The sine deformer handle, sine deformer handle shape, and sine deformer nodes areall deleted. However, the object still has the tweak node as an input node, so anytweaks you might have made are preserved. Also, note that the various input nodesthat structure the evaluation of the deformation are not deleted.

Page 131: Maya Character Setup

DEFORMERS CHARACTER SETUP

131

11 USING SQUASH NONLINEARDEFORMERS

The squash deformer squashes and stretches objects.

UNDERSTANDING SQUASH DEFORMERS

Squash deformers enable you to squash and stretch any deformable object along anaxis. They are useful both for character setup (classic squash and stretch effects) andmodeling. Squash deformers include handles that enable you to control the extentand magnitude of the squash or stretch effects in an intuitive manner.

Related MEL commandsMEL commands related to squash deformers include the following:

• nonLinear

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a squash deformer can include the following:

Squash deformeracting on a sphere

Page 132: Maya Character Setup

CHARACTER SETUP PART 2

132

USING SQUASH NONLINEAR DEFORMERS | 11Creating squash deformers

• Squash deformer algorithm node (default name: squashn; also note deformSquashand nonLinear nodes)

• Squash deformer handle node (default name: squashnHandle)

• Squash deformer handle shape node (default name: squashnHandleShape)

• Squash deformer set node (default name: squashnSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING SQUASH DEFORMERS

When creating squash deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Squash ❒.

The Create Squash Deformer Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options.

Basic

Low Bound Specifies the lower extent of squashing (or stretching) along the deformer’s localnegative Y-axis. Use the slider to select values from negative 10.0000 to 0.0000.Default is -1.0000.

High Bound Specifies the upper extent of squashing (or stretching) along the deformer’s localpositive Y-axis. Use the slider to select values from 0.0000 to 10.0000. Default is1.0000.

StartSmoothness Specifies the amount of initial smoothing toward the low bound position (along the

deformer’s local negative Y-axis). Use slider to select values from 0.0000 to 1.0000.Default is 0.0000.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 133: Maya Character Setup

USING SQUASH NONLINEAR DEFORMERS | 11Editing squash deformation effects

DEFORMERS CHARACTER SETUP

133

EndSmoothness Specifies the amount of final smoothing towards the high bound position (along the

deformer’s local positive Y-axis). Use the slider to select values from 0.0000 to 1.0000.Default is 0.0000.

Max ExpandPosition Specifies the center of maximum expansion between the high bound position and the

low bound position. Values can be between 0.01000 (near the low bound position) to0.9900 (near the high bound position). Use the slider to select values from 0.0100 to0.9900. Default is 0.5000.

Expand Specifies the amount of expansion outwards during squashing or inwards duringstretching. Use the slider to select values from 0.0000 to 1.7000. Default is 1.0000.

Factor Specifies the amount of squashing or stretching. Increasing negative values specifysquashing along deformer’s local Y-axis; increasing positive values specify stretchingalong deformer’s local Y-axis. Use the slider to select values from -10.0000 to 10.0000.Default is 0.0000 (no squashing or stretching).

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a squash deformer.

or

• Click Save to save creation options without creating a squash deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a squash deformer

To create a squash deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Squash.

Maya creates a squash deformer with the previously set creation options.

In the scene, the squash deformer handle is displayed as the currently selectedobject. The squash deformer handle (and its pivot point) are placed at the center ofthe object. In the Outliner, the squash deformer handle is listed (default name:squashnHandle). In the Channel Box, the squashnHandle and squashnHandleShapenodes are selected.

EDITING SQUASH DEFORMATION EFFECTS

After you create the squash deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the squash handle node(default name: squashnHandle), the squash handle shape node(squashnHandleShape), and the squash deformer node (default name: squashn).

Page 134: Maya Character Setup

CHARACTER SETUP PART 2

134

USING SQUASH NONLINEAR DEFORMERS | 11Editing squash deformation effects

You can edit the effects of the squash deformer by editing the squash handle nodeand the squash deformer node. You can move (translate), rotate, and scale thesquash handle to edit the effects of the deformation. You can also edit the squashdeformer node’s keyable attributes (channels), which are displayed in the ChannelBox.

Manipulating squash deformer handles

To edit using handle manipulators:

1 Select the squash deformer node (default name: squashn).

2 Select the Show Manipulator Tool (default shortcut: t key).

3 Note the manipulators on the squash deformer handle. These enable you to editattributes interactively.

4 In the scene, select one of the manipulators on the squash deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

To edit by moving, rotating, or scaling handle:

1 Select the squash deformer handle node (default name: squashnHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Remember that you can access the deformer handle’s local axes (Display >Component Display > Local Rotation Axes), rotate and scale pivots (Display >Component Display > Rotate Pivots or Scale Pivots) and selection handle (Display >Component Display > Selection Handle).

Factor

High Bound

Low Bound

Squash deformer handle manipulators

Max Expand Position

Note: adjust Expand, StartSmoothness, and End Smoothnessfrom the Channel Box

Page 135: Maya Character Setup

USING SQUASH NONLINEAR DEFORMERS | 11Editing squash deformation effects

DEFORMERS CHARACTER SETUP

135

Editing squash deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a squash deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing squash deformerattributes" on page 135).

To edit with the Channel Box:

1 Select the squash deformer node (default name: squashn).

One quick way to select the squash deformer node is to select the object beingdeformed, and then select the squash deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Factor Specifies the amount of squashing or stretching. Increasing negative values specifysquashing along deformer’s local Y-axis; increasing positive values specify stretchingalong deformer’s local Y-axis. Default is 0 (no squashing or stretching).

Expand Specifies the amount of expansion outwards during squashing or inwards duringstretching. Minimum value is 0; maximum value is 10. Default is 1.

Max ExpandPosition Specifies the center of maximum expansion between the high bound position and the

low bound position. Values can be between 0.01 (near the low bound position) to0.99 (near the high bound position). Default is 0.5.

StartSmoothness Specifies the amount of initial smoothing towards the low bound position (along the

deformer’s local negative Y-axis). Values can be from 0 to 1. Default is 0.

EndSmoothness Specifies the amount of final smoothing towards the high bound position (along the

deformer’s local positive Y-axis). Values can be from 0 to 1. Default is 0.

Low Bound Specifies the lower extent of squashing (or stretching) along the deformer’s localnegative Y-axis. Default is -1.

High Bound Specifies upper extent of squashing (or stretching) along the deformer’s localpositive Y-axis. Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key will give you finercontrol, and pressing the Shift key will give you coarser control.

Editing squash deformer attributes

To edit with the Attribute Editor:

1 Select the squash deformer node (default name: squashn).

Page 136: Maya Character Setup

CHARACTER SETUP PART 2

136

USING SQUASH NONLINEAR DEFORMERS | 11Deleting squash deformers

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Nonlinear Deformer Attributes

Factor Specifies the amount of squashing or stretching. Increasing negative values specifysquashing along deformer’s local Y-axis; increasing positive values specify stretchingalong deformer’s local Y-axis. Use the slider to select values from -10.000 to 10.000.Default is 0.000 (no squashing or stretching).

Expand Specifies the amount of expansion outwards during squashing or inwards duringstretching. Minimum value is 0; maximum value is 10. Use the slider to select valuesfrom 0.000 to 10.000. Default is 1.000.

Max ExpandPos Specifies the center of maximum expansion between the high bound position and the

low bound position. Values can be between 0.010 (near the low bound position) to0.990 (near the high bound position). Use the slider to select values from 0.010 to0.990. Default is 0.5. (This attribute corresponds to the Max Expand Positionchannel.)

StartSmoothness Specifies the amount of initial smoothing towards the low bound position (along the

deformer’s local negative Y-axis). Use the slider to select values from 0.000 to 1.000.Values can be from 0.000 to 1.000. Default is 0.000.

EndSmoothness Specifies the amount of final smoothing towards the high bound position (along the

deformer’s local positive Y-axis). Use the slider to select values from 0.000 to 1.000.Default is 0.000.

Low Bound Specifies the lower extent of squashing (or stretching) along the deformer’s localnegative Y-axis. Use the slider to select values from -10.000 to 0.000. Default is -1.000.

High Bound Specifies the upper extent of squashing (or stretching) along the deformer’s localpositive Y-axis. Use the slider to select values from 0.000 to 10.000. Default is 1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0.000 to 1.000. Default is1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

DELETING SQUASH DEFORMERS

To delete a Squash deformer:

1 Select the Squash deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

Page 137: Maya Character Setup

USING SQUASH NONLINEAR DEFORMERS | 11Examples

DEFORMERS CHARACTER SETUP

137

The squash deformer handle, squash deformer handle shape, and squash deformernodes are all deleted. However, the object still has the tweak node as an input node,so any tweaks you might have made are preserved. Also, note that the various inputnodes that structure the evaluation of the deformation are not deleted.

EXAMPLES

This section includes two examples of using squash deformers:

Squashing a sphere onto the groundBy default, Maya places nonlinear deformer handles at the center of the object to bedeformed. For instance, when you create a sphere and create a squash deformer forit, Maya places the squash deformer handle at the center of the sphere. Thedeformation will be relative to the sphere’s center. If you want to squash the sphereagainst the ground, you can adjust the squash deformer’s attributes and move thesquash deformer handle so that the deformation will be relative to where the spheretouches the ground. In general, you can make these adjustments so that thesquashing effect can occur relative to any location inside or outside of the sphere.

To set up the sphere and the deformer:

1 Create a primitive NURBS sphere.

2 Press 3 key to increase the display resolution.

3 Move the sphere so that it is sitting on the grid in a perspective view.

4 Create a squash deformer for the sphere.

Page 138: Maya Character Setup

CHARACTER SETUP PART 2

138

USING SQUASH NONLINEAR DEFORMERS | 11Examples

To edit the deformer:

1 Edit the squash deformer by setting squash1’s attributes as follows:

Low Bound 0

High Bound 0.75

2 Move the deformer handle so the lower boundary is where the sphere is makingcontact with the ground:

To squash the sphere against the ground:

1 Now, from the Channel Box, interactively change the Factor.

The squash deformation takes place relative to the bottom of the sphere, where thesphere is touching the ground.

Page 139: Maya Character Setup

USING SQUASH NONLINEAR DEFORMERS | 11Examples

DEFORMERS CHARACTER SETUP

139

Bouncing ball setup

You can create squash and stretch effects with the squash deformer. This exampleshows how you can set up a ball for a bouncing ball animation, a classic test of ananimator’s skills.

To create NURBS sphere with squash control:

1 Do the previous example.

2 Set squash1’s Factor attribute back to 0.

To create deformer for stretch control:

1 Create another squash deformer for the sphere to provide stretch control. Use thedefault creation options.

The squash1 deformer provides the squashing that occurs when the ball lands on theground. The deformer you’ve just created (squash2) will provide the stretching thatwill occur when the ball is in flight.

To define the ball:

1 Group the sphere (nurbsSphere1) and the deformer handles (squash1Handle andsquash2Handle).

2 Rename the group ball.

3 Open the Channel Control window (Window > General Editors > Channel Control),and make the following attributes Non Keyable:

• scaleX, scaleY, scaleZ

• visibility

The Channel Box now lists only the following keyable attributes for ball: Translate X,Translate Y, Translate Z, Rotate X, Rotate Y, and Rotate Z.

4 Close the Channel Control window.

Now you will add two attributes to the ball for squashing and stretching.

5 With the ball selected, select Modify > Add Attribute.

• Add a keyable attribute called flyStretch, with the following Min/Max Values:Minimum 0, Maximum 10, Default 0.

• Add a keyable attribute called landSquash, with the following Min/Max Values:Minimum 0, Maximum 10, Default 0.

Page 140: Maya Character Setup

CHARACTER SETUP PART 2

140

USING SQUASH NONLINEAR DEFORMERS | 11Examples

6 Close the Add Attribute window.

To set driver and driven keys for stretching:

1 Open the Set Driven Key window (Animate > Set Driven Key > Set ❒).

2 Load ball as driver, select flyStretch attribute, and set the attribute to 0.

3 Load squash2 as driven, select factor attribute, and set the attribute to 0.

4 Click Key.

5 Set ball’s flyStretch attribute to 10.

6 Set squash2’s factor attribute at 0.6.

7 Click Key.

To set driver and driven keys for squashing:

1 Open the Set Driven Key window if it is not already opened.

2 Load ball as driver, select landSquash attribute, and set the attribute to 0.

3 Load squash1 as driven, select factor attribute, and set the attribute to 0.

4 Click Key.

5 Set ball’s landSquash attribute to 10.

6 Set squash1’s factor attribute at -2.

7 Click Key.

8 Click Close to close the editor.

Now the ball is ready for a bouncing ball animation with squash and stretch effects.

Animate the ball

You’ve now set up the ball for animation. Try creating an animation of the ballbouncing. Include stretch effects when the ball is in flight and squash effects whenthe ball hits the ground. For example, your animation might look something like thefollowing:

Ball starting to stretch as itfalls towards the ground.

Page 141: Maya Character Setup

USING SQUASH NONLINEAR DEFORMERS | 11Examples

DEFORMERS CHARACTER SETUP

141

Ball stretching while inflight (increasing FlyStretch attribute).

Ball lands on the ground.Fly Stretch attribute is 0,and Land Squash attributeis 10.

Page 142: Maya Character Setup

CHARACTER SETUP PART 2

142

USING SQUASH NONLINEAR DEFORMERS | 11Examples

These images show just a simple example of a bouncing ball. As you develop youranimation of a bouncing ball, try to see how much “character” you can give to theball’s movements.

Ball leaving the groundwith reduced squashingand increased stretching.

Ball in flight again at fullstretch.

Page 143: Maya Character Setup

DEFORMERS CHARACTER SETUP

143

12 USING TWIST NONLINEARDEFORMERS

The twist deformer twists the shape of an object.

UNDERSTANDING TWIST DEFORMERS

Twist deformers enable you to twist any deformable object about an axis. They areuseful both for character setup and modeling. Twist deformers include handles thatenable you to control the extent and degree of the twisting effects in an intuitivemanner.

Related MEL commandsMEL commands related to twist deformers include the following:

• nonLinear

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a twist deformer can include the following:

Twist deformeracting on a box

Page 144: Maya Character Setup

CHARACTER SETUP PART 2

144

USING TWIST NONLINEAR DEFORMERS | 12Creating twist deformers

• Twist deformer algorithm node (default name: twistn; also note deformTwist andnonLinear nodes)

• Twist deformer handle node (default name: twistnHandle)

• Twist deformer handle shape node (default name: twistnHandleShape)

• Twist deformer set node (default name: twistnSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING TWIST DEFORMERS

When creating twist deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Twist ❒.

The Create Twist Deformer Options window is displayed.

Basic

Low Bound Specifies the position of the start angle twisting on the deformer’s local Y-axis.Values must be negative numbers or zero. Use the slider to select values from -10.0000 to 0.0000. Default is -1.0000.

High Bound Specifies the position of the end angle twisting on the deformer’s local Y-axis. Valuesmust be positive numbers. Use the slider to select values from 0.0000 to 10.0000.Default is 1.0000.

Start Angle Specifies the degree of twisting at the low bound position on the deformer handle’slocal negative Y-axis. Use the slider to select values from -10.0000 to 10.0000. Defaultis 0.0000.

End Angle Specifies the degree of twisting at the high bound position on the deformer handle’slocal positive Y-axis. Use the slider to select values from -10.0000 to 10.0000. Defaultis 0.0000.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 145: Maya Character Setup

USING TWIST NONLINEAR DEFORMERS | 12Editing twist deformation effects

DEFORMERS CHARACTER SETUP

145

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a twist deformer.

or

• Click Save to save creation options without creating a twist deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a twist deformer

To create a twist deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Twist.

Maya creates a twist deformer with the previously set creation options.

In the scene, the twist deformer handle is displayed as the currently selected object.The twist deformer handle (and its pivot point) are placed at the center of the object.In the Outliner, the twist deformer handle is listed (default name: twistnHandle). Inthe Channel Box, the twistnHandle and twistnHandleShape nodes are selected.

EDITING TWIST DEFORMATION EFFECTS

After you create the twist deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the twist handle node(default name: twistnHandle), the twist handle shape node (twistnHandleShape),and the Twist deformer node (default name: twistn).

You can edit the effects of the twist deformer by editing the twist handle node andthe twist deformer node. You can move (translate), rotate, and scale the twist handleto edit the effects of the deformation. You can also edit the twist deformer node’skeyable attributes (channels), which are displayed in the Channel Box.

Manipulating twist deformer handles

To edit by using handle manipulators:

1 Select the twist deformer node (default name: twistn).

2 Select the Show Manipulator Tool (default shortcut: t key).

3 Note the manipulators on the twist deformer handle. These enable you to editattributes interactively.

Page 146: Maya Character Setup

CHARACTER SETUP PART 2

146

USING TWIST NONLINEAR DEFORMERS | 12Editing twist deformation effects

4 In the scene, select one of the manipulators on the twist deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

To edit by moving, rotating, or scaling handle:

1 Select the twist deformer handle node (default name: twistnHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Remember that you can access the deformer handle’s local axes (Display >Component Display > Local Rotation Axes), rotate and scale pivots (Display >Component Display > Rotate Pivots or Scale Pivots) and selection handle (Display >Component Display > Selection Handle).

Editing twist deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a twist deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing twist deformer attributes"on page 147).

To edit with the Channel Box:

1 Select the twist deformer node (default name: twistn).

One quick way to select the twist deformer node is to select the object beingdeformed, and then select the twist deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Start Angle indicator

High Bound

Low Bound

Twist deformer handle manipulators

End Angle indicator

Page 147: Maya Character Setup

USING TWIST NONLINEAR DEFORMERS | 12Editing twist deformation effects

DEFORMERS CHARACTER SETUP

147

Start Angle Specifies the degree of twisting at the low bound position on the deformer handle’slocal negative Y-axis. Default is 0.

End Angle Specifies the degree of twisting at the high bound position on the deformer handle’slocal positive Y-axis. Default is 0.

Low Bound Specifies the position of the start angle twisting on the deformer’s local Y-axis.Values must be negative numbers or zero. Default is -1.

High Bound Specifies the position of the end angle twisting on the deformer’s local Y-axis. Valuesmust be positive numbers. Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing twist deformer attributes

To edit with the Attribute Editor:

1 Select the twist deformer node (default name: twistn).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Nonlinear Deformer Attributes

Start Angle Specifies the degree of twisting at the low bound position on the deformer handle’slocal negative Y-axis. Use the slider to select values from -859.437 to 859.437. Defaultis 0.000.

End Angle Specifies the degree of twisting at the high bound position on the deformer handle’slocal positive Y-axis. Use the slider to select values from -859.437 to 859.437. Defaultis 0.000.

Low Bound Specifies the position of the start angle twisting on the deformer’s local Y-axis. Usethe slider to select values from -10.000 to 0.000. Default is -1.000.

High Bound Specifies the position of the end angle twisting on the deformer’s local Y-axis. Usethe slider to select values from 0.000 to 10.000. Default is 1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0.000 to 1.000. Default is1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Page 148: Maya Character Setup

CHARACTER SETUP PART 2

148

USING TWIST NONLINEAR DEFORMERS | 12Deleting twist deformers

DELETING TWIST DEFORMERS

To delete a Twist deformer:

1 Select the twist deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

The twist deformer handle, twist deformer handle shape, and twist deformer nodesare all deleted. However, the object still has the tweak node as an input node, so anytweaks you might have made are preserved. Also, note that the various input nodesthat structure the evaluation of the deformation are not deleted.

EXAMPLE

Spiral staircase modeling

The foundation, rail, and moldings of the staircase’s model were shaped with thetwist deformer.

Image by Peter Miller

Page 149: Maya Character Setup

DEFORMERS CHARACTER SETUP

149

13 USING WAVE NONLINEARDEFORMERS

The wave deformer deforms an object based on a circular sine wave for rippleeffects. If you’d like to explore an example now, see "Example" on page 154.

UNDERSTANDING WAVE DEFORMERS

The wave deformer is similar to the sine deformer. The sine deformer’s sine wavepropagates in the deformer’s local Y-axis, with the amplitude along the X-axis. Thewave deformer’s sine wave propagates along the deformer’s local X and Z axes, withthe amplitude along the Y-axis. Wave deformers include handles that enable you tocontrol the extent, amplitude, and wavelength of the wave effects in an intuitivemanner.

Related MEL commandsMEL commands related to wave deformers include the following:

• nonLinear

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a wave deformer can include the following:

Wave deformer actingon a plane

Page 150: Maya Character Setup

CHARACTER SETUP PART 2

150

USING WAVE NONLINEAR DEFORMERS | 13Creating wave deformers

• Wave deformer algorithm node (default name: waven; also note deformWave andnonLinear nodes)

• Wave deformer handle node (default name: wavenHandle)

• Wave deformer handle shape node (default name: wavenHandleShape)

• Wave deformer set node (default name: wavenSet)

• Tweak node (default name: tweakn)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING WAVE DEFORMERS

When creating wave deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Wave ❒.

The Create Wave Deformer Options window is displayed.

Basic

Min Radius Specifies the minimum radius of the circular sine wave. Use the slider to selectvalues from 0.0000 to 1.0000. Default is 0.0000.

Max Radius Specifies the maximum radius of the circular sine wave. Use the slider to selectvalues from 0.0000 to 10.0000. Default is 1.0000.

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Use slider toselect values from -5.0000 to 5.0000. Default is 0.0000 (no wave).

Wavelength Specifies the frequency of the sine wave. For greater frequency, decrease thewavelength; for lesser frequency, increase the wavelength. Use the slider to selectvalues from -0.1000 to 10.0000. Default is 1.0000.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 151: Maya Character Setup

USING WAVE NONLINEAR DEFORMERS | 13Editing wave deformation effects

DEFORMERS CHARACTER SETUP

151

Dropoff Specifies how the amplitude decays. Negative values specify a decay towards thecenter of the deformer handle (maximum is -1.0000), and positive values specify adecay away from the center of the deformer handle (maximum is 1.0000). Use theslider to select values from -1.0000 to 1.0000. Default is 0.0000 (no decay).

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a rippling effect. Use the slider to select values from -10.0000 to 10.0000. Default is 0.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a wave deformer.

or

• Click Save to save creation options without creating a wave deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Creating a wave deformer

To create a wave deformer:

1 Select the object(s) you want to deform.

2 Select Deform > Create Nonlinear > Wave.

Maya creates a wave deformer with the previously set creation options.

In the scene, the wave deformer handle is displayed as the currently selected object.The wave deformer handle (and its pivot point) are placed at the center of the object.In the Outliner, the wave deformer handle is listed (default name: wavenHandle). Inthe Channel Box, the wavenHandle and wavenHandleShape nodes are selected.

EDITING WAVE DEFORMATION EFFECTS

After you create the wave deformer, its handle is displayed in your scene and itsnodes are listed in the Channel Box. The nodes include the wave handle node(default name: wavenHandle), the wave handle shape node (wavenHandleShape),and the wave deformer node (default name: waven).

You can edit the effects of the wave deformer by editing the wave handle node andthe wave deformer node. You can move (translate), rotate, and scale the wave handleto edit the effects of the deformation. You can also edit the wave deformer node’skeyable attributes (channels), which are displayed in the Channel Box.

Manipulating wave deformer handles

To edit by using handle manipulators:

1 Select the wave deformer node (default name: waven).

2 Select the Show Manipulator Tool (default shortcut: t key).

Page 152: Maya Character Setup

CHARACTER SETUP PART 2

152

USING WAVE NONLINEAR DEFORMERS | 13Editing wave deformation effects

3 Note the manipulators on the wave deformer handle. These enable you to editattributes interactively.

4 In the scene, select one of the manipulators on the wave deformer handle. Press themiddle mouse button and move the mouse to edit interactively. Note that theChannel Box updates the values you are changing.

Note that the Offset and Min Radius manipulators are both located at the center ofthe handle by default.

To edit by moving, rotating or scaling handle:

1 Select the wave deformer handle node (default name: wavenHandle).

2 Move (translate), rotate, or scale the handle to change the effect of the deformation.

3 Move or rotate the handle pivot point by pressing the Insert key, moving the pivotpoint, and then pressing the Insert key again.

Remember that you can access the deformer handle’s local axes (Display >Component Display > Local Rotation Axes), rotate and scale pivots (Display >Component Display > Rotate Pivots or Scale Pivots) and selection handle (Display >Component Display > Selection Handle).

Editing wave deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a twist deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing wave deformer attributes"on page 153).

To edit with the Channel Box:

1 Select the wave deformer node (default name: waven).

Amplitude

Offset and Min Radius

Max Radius

Wave deformer handle manipulators

Wavelength

Note: Offset and Min Radiusmanipulators are both at thecenter of the handle by default.

Note: adjust Dropoff from theChannel Box.

Page 153: Maya Character Setup

USING WAVE NONLINEAR DEFORMERS | 13Editing wave deformation effects

DEFORMERS CHARACTER SETUP

153

One quick way to select the wave deformer node is to select the object beingdeformed, and then select the wave deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Default is 0 (nowave).

Wavelength Specifies the frequency of the sine wave. For greater frequency, decrease thewavelength; for lesser frequency, increase the wavelength. Default is 1.

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a rippling effect. Default is 0.

Dropoff Specifies how the amplitude decays. Negative values specify a decay toward thecenter of the deformer handle (maximum is -1), and positive values specify a decayaway from the center of the deformer handle (maximum is 1). Default is 0 (nodecay).

Dropoff Position Specifies the location of the maximum amplitude between the minimum radius andthe maximum radius (only has effect when Dropoff is not 0). The value can rangefrom 0 to 1, with 0 specifying the dropoff position at the minimum radius, and 1specifying the dropoff position at the maximum radius. A value of 0.5 places thedropoff position halfway between the minimum radius and maximum radius.Default is 0.

Min Radius Specifies the minimum radius of the circular sine wave. Minimum value is 0;Maximum value is 1. Default is 0.

Max Radius Specifies the maximum radius of the circular sine wave. Minimum value is 0;Maximum value is 1. Default is 1.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing wave deformer attributes

To edit with the Attribute Editor:

1 Select the wave deformer node (default name: waven).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

The following sections make available attributes: Nonlinear Deformer Attributes,Deformer Attributes, Node Behavior, and Extra Attributes.

Nonlinear Deformer Attributes

Amplitude Specifies the amplitude (maximum wave amount) of the sine wave. Use the slider toselect values from -5.000 to 5.000. Default is 0.000 (no wave).

Page 154: Maya Character Setup

CHARACTER SETUP PART 2

154

USING WAVE NONLINEAR DEFORMERS | 13Deleting wave deformers

Wavelength Specifies the frequency of the sine wave. For greater frequency, decrease thewavelength; for lesser frequency, increase the wavelength. Use the slider to selectvalues from 0.100 to 10.000. Default is 1.000.

Offset Specifies the location of the sine wave relative to the center of the deformer handle.Changing this value can create a rippling effect. Use the slider to select values from -10.000 to 10.000. Default is 0.000.

Dropoff Specifies how the amplitude decays. Negative values specify a decay towards thecenter of the deformer handle (maximum is -1.000), and positive values specify adecay away from the center of the deformer handle (maximum is 1.000). Use theslider to select values from -1.000 and 1.000. Default is 0.000 (no decay).

Min Radius Specifies the minimum radius of the circular sine wave. Minimum value is 0.000;Maximum value is 1.000. Use the slider to select values from 0.000 to 10.000. Defaultis 0.000.

Max Radius Specifies the maximum radius of the circular sine wave. Minimum value is 0.000;Maximum value is 1.000. Use the slider to select values from 0.000 to 10.000. Defaultis 1.000.

Deformer Attributes

Envelope Specifies the deformation scale factor. Select values from 0.000 to 1.000. Default is1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

DELETING WAVE DEFORMERS

To delete a wave deformer:

1 Select the wave deformer handle.

2 Select Edit > Delete (default shortcut: Backspace key).

The wave deformer handle, wave deformer handle shape, and wave deformer nodesare all deleted. However, the object still has the tweak node as an input node, so anytweaks you might have made are preserved. Also, note that the various input nodesthat structure the evaluation of the deformation are not deleted.

EXAMPLE

Ripple animationYou can create ripple effects by using a wave deformer on a NURBS or polygonalsurface. This example shows how you can create a simple ripple effect on a NURBSplane.

Page 155: Maya Character Setup

USING WAVE NONLINEAR DEFORMERS | 13Example

DEFORMERS CHARACTER SETUP

155

To create the NURBS plane:

Create a NURBS plane, using the default creation options except set Width to 20, UPatches to 40, and V Patches to 40.

To create a wave deformer:

With the plane selected, create a wave deformer for the plane with the followingcreation options:

Min Radius 0

Max Radius 1

Amplitude 0.2

Wavelength 0.4

Dropoff 1

Offset 0

The result follows:

Next, you will set keys at frames 1, 10, and 20.

To key ripple at frame 1:

1 In the Timeline, select frame 1.

2 In the Channel Box, set wave1’s attributes as follows:

Amplitude 0.0

Max Radius 0.1

Page 156: Maya Character Setup

CHARACTER SETUP PART 2

156

USING WAVE NONLINEAR DEFORMERS | 13Example

3 Set keys for all of wave1’s attributes.

To key ripple at frame 10:

1 In the Timeline, select frame 10.

2 In the Channel Box, set wave1’s attributes as follows:

Amplitude -0.2 (negative value allows first wavelet to go down)

Dropoff Position 0.5

Max Radius 1

The result is as follows:

3 Set keys for all of wave1’s attributes.

To key ripple at frame 20:

1 In the Timeline, select frame 20.

2 In the Channel Box, set wave1’s attributes as follows:

Min Radius 1

Amplitude -0.1

The result is as follows:

Ripple at frame 1

Ripple at frame 10

Page 157: Maya Character Setup

USING WAVE NONLINEAR DEFORMERS | 13Example

DEFORMERS CHARACTER SETUP

157

3 Set keys for all of wave1’s attributes.

To see the ripple:

1 Scrub or play the animation.

2 You can create more intricate and complicated rippling effects by continuing toadjust the wave deformer’s attributes. You can also apply additional wave or sinedeformers to the plane for more complex results.

Using an expression for wave dropoff

Instead of animating the Dropoff Position attribute, you could write anexpression that drives the drop off of the wave. The expression would beas follows:

wave1.offset = wave1.wavelength * .25;

Ripple at frame 20

Page 158: Maya Character Setup

CHARACTER SETUP PART 2

158

USING WAVE NONLINEAR DEFORMERS | 13Example

Page 159: Maya Character Setup

DEFORMERS CHARACTER SETUP

159

14 USING SCULPT DEFORMERS

With sculpt deformers, you can deform objects with a spherical influence objectcalled a sculpt sphere.

UNDERSTANDING SCULPT DEFORMERS

Sculpt deformers are useful for creating any kind of rounded deformation effect. Forexample, in setting a character for facial animation, you could use sculpt deformersto control the character’s chin, brow, or cheek actions.

Sculpt sphereThe sculpt sphere is the spherical wireframe influence object you manipulate tocreate deformation effects. The sculpt sphere’s deformation effects depend on themode of the sculpt deformer. Sculpt deformer modes include flip, project, andstretch.

Flip modeA sculpt deformer in flip mode has an implicit locator in the center of the sculptsphere. When the sculpt sphere is near the geometry, deformation occurs. This modeis called flip mode because as the center of the sculpt sphere passes through thesurface, the deformed surface flips to the other side of the sculpt sphere.

Page 160: Maya Character Setup

CHARACTER SETUP PART 2

160

USING SCULPT DEFORMERS | 14Understanding sculpt deformers

Project modeIn project mode the sculpt deformer projects the geometry onto the surface of thesculpt sphere. The extent to which the projection takes place depends on the sculptdeformer’s Dropoff Distance attribute.

While the Dropoff Distance specifies the extent of the projection directly onto thesculpt sphere, the Maximum Displacement attribute specifies whether the projectiontakes place directly onto the sculpt sphere, inside the sculpt sphere, or outside of thesculpt sphere.

With a Maximum Displacement of 1.0, the projection takes place on the surface ofthe sculpt sphere. This is the effect you would usually want to achieve with projectmode. However, by changing the Maximum Displacement you can displace theprojection from the surface of the sculpt sphere. With a Maximum Displacementbetween 0 and 1.0, the projection takes place within the sculpt sphere. With aMaximum Displacement greater than 1.0, the projection takes place outside of thesurface of the sculpt sphere. Finally, with a Maximum Displacement of 0, thegeometry is projected into the center of the sculpt sphere.

Finally, with a Maximum Displacement of less than 0, the projected geometry turnsinside out as it is projected through the center of the sculpt sphere.

Stretch modeIn stretch mode, as you move the sculpt sphere away from the geometry, the affectedsurface of the geometry stretches or bulges to stay with the sculpt sphere. The stretchdirection extends from the point marked by a stretch origin locator to the surface ofthe sculpt sphere.

When you create a sculpt deformer in stretch mode, you can select and move thestretch origin locator as you do any object, or parent it to the sculpt sphere and movethem in combination. Depending on the effect you want to create, you could alsoparent the locator to some other object in the animation.

Related MEL commandsMEL commands related to sculpt deformers include the following:

• sculpt

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a sculpt deformer can include the following:

• Sculpt deformer node, which is the algorithm node for the sculpt deformer (defaultname: sculptn).

• Sculpt sphere node (default name: sculptnSphere).

• Sculpt sphere shape node (default name: sphereShapen).

• Stretch origin locator node, which is the locator’s transform node (default name:sculptnStretchOrigin).

• Stretch origin locator shape, which is the locator’s shape node (default name:sculptnStretchOriginShape).

Page 161: Maya Character Setup

USING SCULPT DEFORMERS | 14Creating sculpt deformers

DEFORMERS CHARACTER SETUP

161

• A deformer set node (default name: sculptnSet).

• Tweak node (default name: tweakn).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING SCULPT DEFORMERS

When creating sculpt deformers, you can first set creation options and then create adeformer, or you can immediately create a deformer with the current creationoptions. If you’re not sure what the current creation options are, checking thembefore you create a deformer can save you some time adjusting the deformer’sattributes afterwards.

Setting creation options

To set creation options:

1 If you also want to create a sculpt deformer now, select one or more deformableobjects.

2 Select Deform > Create Sculpt Deformer ❒.

3 The Sculpt Options window is displayed.

4 Click the Basic and Advanced tabs to set the creation options:

Basic

Mode Specifies the sculpt deformer’s mode. Select Flip, Project, or Stretch. Default isStretch.

Inside Mode Specifies how the deformer influences the deformable object’s points located insidethe sculpt sphere. There are two modes: Ring and Even.

Ring mode pushes inside points outside of the sculpt sphere, creating a contoured,ring-like effect around the sculpt sphere.

Even mode spreads the inside points all around the sculpt sphere evenly, creating asmooth, spherical effect.

Select Ring or Even. Default is Even.

MaxDisplacement Specifies the distance that the sculpt sphere can push a deformable object’s points

from the sphere’s surface. Use the slider to select values from -10.000 to 10.000.Default is 0.100.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 162: Maya Character Setup

CHARACTER SETUP PART 2

162

USING SCULPT DEFORMERS | 14Editing sculpt deformation effects

Dropoff Type Specifies how the sculpt sphere’s range of influence declines or drops off. (The rangeof influence is specified with the Dropoff Distance.) There are two Dropoff Types:None and Linear.

None specifies no decline, providing a sudden dropoff effect.

Linear specifies a gradual decline, providing a dropoff effect that decreases linearly.

Select None or Linear. (Default is Linear.)

DropoffDistance Specifies the sculpt sphere’s range of influence. (How the range of influence can

decline is specified by Dropoff Type.)

Positioning Specifies the placement of the sculpt sphere. Click Positioning on to center sculptsphere within the deformable object. Click off to place sculpt sphere at theworkspace origin. Note that if you are creating a stretch sculpt deformer (Mode is setto Stretch), the stretch origin locator will be placed with the sculpt sphere. Default ison, which centers the sculpt sphere within the deformable object.

Grouping If you are creating a stretch sculpt deformer (Mode is set to Stretch), you can choosewhether the stretch origin locator will be put in a group with the sculpt sphere. Clickon to group the sculpt sphere with the stretch origin locator. Default is off.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create if you want to create a sculpt deformer now.

or

• Click Save to save the creation options.

or

• Click Reset to reset to the default creation options.

or

• Click Close to close the Sculpt Options window.

Creating a sculpt deformer

To create a sculpt deformer:

1 Select one or more deformable objects.

2 Select Deform > Create Sculpt.

A sculpt deformer is created with the currently set creation options.

EDITING SCULPT DEFORMATION EFFECTS

You can create sculpt deformation effects as described in the following topics:

Manipulating the sculpt sphere

To manipulate the sculpt sphere:

1 In the workspace or the Outliner, select the sculpt sphere (default name:sculptnSphere).

Page 163: Maya Character Setup

USING SCULPT DEFORMERS | 14Editing sculpt deformation effects

DEFORMERS CHARACTER SETUP

163

2 To create deformation effects, move, rotate, or scale the sculpt sphere.

Manipulating the stretch origin locatorIf the sculpt deformer is in stretch mode (Mode attribute is set to Stretch), you cancreate deformation effects by directly manipulating the stretch origin locator as wellas the sculpt sphere.

To manipulate the stretch origin locator:

1 In the workspace or the Outliner, select the stretch origin locator (default name:sculptnStretchOrigin).

2 To create deformation effects, move, rotate, or scale the stretch origin locator.

Editing sculpt deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a sculpt deformer’s channels.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

To edit all attributes, use the Attribute Editor (see "Editing sculpt deformerattributes" on page 164).

To edit channels with the Channel Box:

1 Select a sculpt deformer node (default name: sculptn).

One quick way to select the sculpt deformer node is to select the object beingdeformed, and then select the sculpt deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control.)

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Values can vary from 0 to 1. Default is 1.

MaximumDisplacement

Specifies the distance that the sculpt sphere can push a deformable object’s pointsfrom the sphere’s surface. Enter values from -10.000 to 10.000. Default is 0.100.(When you created the deformer, Maximum Displacement was set to the MaxDisplacement creation option’s value.) The effect can depend on the deformer’sMode attribute setting. For instance, if Mode is set to Project, see "Project mode" onpage 160.

DropoffDistance Specifies the sculpt sphere’s range of influence. How the range of influence can

decline is specified by Dropoff Type attribute. The effect can depend on thedeformer’s Mode attribute setting. For instance, if Mode is set to Project, see "Projectmode" on page 160.

3 Click on a channel name with the left mouse button.

Page 164: Maya Character Setup

CHARACTER SETUP PART 2

164

USING SCULPT DEFORMERS | 14Editing sculpt deformation effects

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing sculpt deformer attributesYou can edit all of a sculpt deformer’s attributes with the Attribute Editor.

To edit attributes with the Attribute Editor:

1 Select the sculpt deformer node (default name: sculptn).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Sculpt History, DeformerAttributes, Node Behavior, and Extra Attributes.

Sculpt History

Mode Specifies the sculpt deformer’s mode. To create a flip, project, or stretch sculptdeformer, select Flip, Project, or Stretch. Default is Stretch.

Inside Mode Specifies how the deformer influences the deformable object’s points located insidethe sculpt sphere. There are two modes: Ring and Even.

Ring mode pushes inside points outside of the sculpt sphere, creating a contoured,ring-like effect around the sculpt sphere.

Even mode spreads the inside points all around the sculpt sphere evenly, creating asmooth, spherical effect. Select Ring or Even. Default is Even.

MaxDisplacement Specifies the distance that the sculpt sphere can push a deformable object’s points

from the sphere’s surface. Use the slider to select values from -10.000 to 10.000.Default is 0.100. (Max Displacement corresponds to the Maximum Displacementchannel.) The effect can depend on the deformer’s Mode attribute setting. Forinstance, if Mode is set to Project, see "Project mode" on page 160.

Dropoff Type Specifies how the sculpt sphere’s range of influence declines or drops off. (The rangeof influence is specified with the Dropoff Distance.) There are two Dropoff Types:None and Linear.

None specifies no decline, providing a sudden dropoff effect.

Linear specifies a gradual decline, providing a dropoff effect that decreases linearly.

Select None or Linear. (Default is Linear.)

DropoffDistance Specifies the sculpt sphere’s range of influence. Note that Dropoff Type specifies

how the range of influence can decline. The effect can depend on the deformer’sMode attribute setting. For instance, if Mode is set to Project, see "Project mode" onpage 160.

Deformer Attributes

Envelope Specifies the deformation scale factor. Values can vary from 0 to 1. Default is 1.

Page 165: Maya Character Setup

USING SCULPT DEFORMERS | 14Deleting sculpt deformers

DEFORMERS CHARACTER SETUP

165

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Editing sculpt deformer setsFor more information, see "Editing deformer set membership" on page 46.

Pruning sculpt deformer setsBy pruning sculpt deformer sets, you can remove points from the set that are notpresently being affected by the deformer. You can prune the deformer set to avoidunnecessary calculations for points that are not part of the deformation effect.

To prune deformer set membership:

1 Select deformable objects whose currently unaffected points you want to prune fromthe deformation.

2 Select Deform > Prune Membership > Sculpt.

Maya removes the deformable object’s points currently unaffected points from thesculpt deformer set.

DELETING SCULPT DEFORMERS

To delete a sculpt deformer:

1 Select the sculpt deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 166: Maya Character Setup

CHARACTER SETUP PART 2

166

USING SCULPT DEFORMERS | 14Deleting sculpt deformers

Page 167: Maya Character Setup

DEFORMERS CHARACTER SETUP

167

15 USING WIRE DEFORMERS

Wire deformers are like the armatures used by sculptors to shape objects. With awire deformer, you use one or more NURBS curves to change the shape of objects.For a quick example of creating a wire deformer, see "Quick start" on page 167.

QUICK START

This section shows you how to create a typical wire deformer as quickly as possible.

Wire deformer providingsubtle effects aroundcharacter’s eyebrow

Page 168: Maya Character Setup

CHARACTER SETUP PART 2

168

USING WIRE DEFORMERS | 15Quick start

In this example, you will deform a surface with an S-shaped curve, limiting thedeformation region with a circle.

To create a NURBS plane:

Create a NURBS plane with Width 40, Length Ratio 1, Patches U 40, Patches V 40,and Degree Cubic.

To create a curve for an influence wire:

Draw an S-shaped curve on the center area of the plane. (Use the CV Curve Tool orEP Curve Tool.)

To create a circle for limiting the deformation region:

Create a circle that surrounds the S-shaped curve on the plane.

Page 169: Maya Character Setup

USING WIRE DEFORMERS | 15Quick start

DEFORMERS CHARACTER SETUP

169

You’ll use the circle to limit the deformation region. A curve that limits thedeformation region is called a holder.

To create the wire deformer:

1 Select Deform > Wire Tool.

2 In the Tool Settings window, click Holders on (default is off).

3 Close the Tool Settings window.

In the workspace, note the cursor is now cross-shaped, indicating you are using theWire Tool.

Be sure you do the next four steps in exactly the following order:

4 Select the plane and press Enter.

5 Select the S-shaped curve, and press Enter.

6 Select the circle, and press Enter.

7 Finally, select nothing in the workspace, and press Enter.

You can use as many holders as you like; selecting nothing tells Maya you are doneselecting holders, and tells it to create the wire deformer.

Maya now creates a wire deformer. You can now manipulate the S-shaped curve tocreate deformation effects. Note that only the region within the circle can be affected.

To create deformations:

1 Select the S-shaped curve.

2 Move the S-shaped curve up.

Page 170: Maya Character Setup

CHARACTER SETUP PART 2

170

USING WIRE DEFORMERS | 15Understanding wire deformers

The plane deforms upwards as if attracted to the S-curve.

The wire deformer uses the S-shaped curve to influence the shape of thedeformation, so this curve is called an influence wire. Meanwhile, because the circleis limiting the deformation region, it’s called a holder.

3 Rotate the S-shaped curve to get a swirling “chakra” deformation effect.

UNDERSTANDING WIRE DEFORMERS

Wire deformers enable you to change the shapes of deformable objects with one ormore NURBS curves. In character setup, wire deformers are especially useful forsetting up lip and eyebrow deformations. To create further wrinkling effects, you canalso use the wrinkle deformer. Wire deformers can also be useful for shapingNURBS or polygonal objects during modeling.

Influence wires and base wiresThe NURBS curves you use to create deformations are called influence wires, orsimply wires. When you create a wire deformer, another curve, called a base wire, iscreated for each influence wire. The deformation effect provided by an influencewire is based on the difference between the influence wire and the base wire.

HoldersHolders are curves that you can use to limit the deformation region. As with othercurves, you can move, rotate, or scale holders. You can also edit a holder’s shape.Moving, rotating, scaling, or editing holders can change the deformation effect.

Page 171: Maya Character Setup

USING WIRE DEFORMERS | 15Creating wire deformers

DEFORMERS CHARACTER SETUP

171

Wire dropoff locatorsWire dropoff locators provide a way for you to create localized deformation effectsalong an influence curve.

Related MEL commandsMEL commands related to wire deformers include the following:

• wire

• wireContext

• dropoffLocator

• reorderDeformers

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a wire deformer can include the following:

• Wire deformer node, which is the algorithm node for the wire deformer (defaultname: wiren).

• Base wire nodes for each influence wire (default names: influenceWireBaseWire, andinfluenceWireBaseWireShape).

• A deformer set node (default name: wirenSet).

• Wire dropoff locator shape nodes (default name: locatorShapen) for each wiredropoff locator.

• Wires group nodes that parent influence wires and their base wires (default name:influenceWireWires)

• Tweak node (default name: tweakn).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING WIRE DEFORMERS

To create a wire deformer, you use the Wire Tool. The characteristics of the wiredeformer you create depend on the Wire Tool’s tool settings. By default, the WireTool is set to create a wire deformer with holders. After you’ve set the Wire Tool’stool settings, you can create wire deformers that include one or more influencewires, and one or more holders.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 172: Maya Character Setup

CHARACTER SETUP PART 2

172

USING WIRE DEFORMERS | 15Creating wire deformers

Specifying Wire Tool’s tool settings

To specify tool settings:

1 Select Deform > Wire Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s Wire Options as follows:

Wire Options

Holders Specifies whether you want to create a wire deformer with holders. Holders arecurves that you can use to limit the deformation region. Click on or off. Default isoff.

Envelope Specifies the deformation scale factor. Use the slider to select a value between 0.0000and 2.0000. A value of 0 specifies no deformation effect. Default is 1.0000.

Crossing Effect Specifies the amplitude of the deformation effect where two of the deformer’sinfluence wires cross. Use the slider to select values from 0.0000 to 2.0000. Default is0.0000, which specifies a smooth, not additive, effect.

Local Influence Specifies the localization of the deformation effect of two or more influence wires.Use the slider to select values from 0.0000 to 2.0000. Default is 0.0000.

DropoffDistance Specifies the range of influence of each influence wire. Use the slider to select values

from 0.0000 to 10.0000. Default is 1.0000.

DeformationOrder Specifies the placement of the deformer node in the deformable object’s history.

Placement selections include Default, Before, After, Split, or Parallel. Defaulttypically places the deformer immediately upstream of the current final shape node.Before places the deformer immediately upstream of (before) the current final shapenode. (Default and Before typically provide the same placement.) After places thedeformer immediately downstream of (after) the current final shape node, andcreates a new final shape node. Split splits the upstream deformation history intotwo separate deformation chains, providing two final shapes originating from thesame deformable object. Parallel creates a final shape that blends the object’s currentupstream history in parallel with the new deformer. Select Default, Before, After,Split, or Parallel.

Exclusive Specifies whether the deformer set will be in a partition. If a deformer set is in apartition, the points in the set cannot be in any other set. The result is that only thedeformer you are about to create can influence the points. Check on or off (default isoff). If on, the Exclusive Partition and Existing Partitions options become available.

ExclusivePartition Specifies the name of the partition. (Default name is deformPartition.) Available if

Exclusive is on.

ExistingPartitions Specifies an existing partition. (Default existing partition is characterPartition.)

Available if Exclusive is on.

• Click Reset Tool to reset to the default tool settings.

or

• Click Close to close the Tool Settings window.

Page 173: Maya Character Setup

USING WIRE DEFORMERS | 15Creating wire deformers

DEFORMERS CHARACTER SETUP

173

Note that you can change the tool settings whenever you are using the Wire Tool byselecting Window > General Editors > Tool Settings.

Creating a wire deformer without holdersYou can create a wire deformer without holders or with holders. Holders are curvesthat you can use to limit the deformation region. The workflow for creating wiredeformers without holders is shorter than the workflow for creating wire deformerswith holders. Further, you can limit the deformation region by adding holders later,or by using a variety of other methods (see "Limiting the wire deformation region"on page 182).

To create a wire deformer without holders:

1 Be sure the Wire Tool’s tool setting for Holders is off (the default is off).

2 Create the curve(s) you want to use as influence wire(s). For best results, place themon or near the deformable object(s).

3 Select Deform > Wire Tool.

The cursor changes to a crosshair icon, and the Wire Tool icon is displayed in theTool Box. You are now ready to use the Wire Tool to create a wire deformer with theWire Tool’s current tool settings.

The prompt line displays information to lead you through the process of creating awire deformer.

4 Select the object(s) you want to deform, and press the Enter key.

Now you are ready to select the one or more curves you want to use as wires.

5 Select all of the curves you want to use as influence wires.

If the only curves on the object’s surface are the curves you want to use as influencewires, drag the cursor over all the curves on the object. The Wire Tool knows toselect only the curves.

6 Press the Enter key.

A wire deformer is created based on the Wire Tool’s tool settings. The curves youselected are now influence wires that you can use to deform the object(s) youselected.

A base wire is created for each influence wire. The base wire(s) are listed in theOutliner. By default, they are not shown in the scene, but they do influence thedeformation effect. The wire node calculates the deformation effect based ondifferences between each influence wire and its base wire.

A deformer set is created. The deformer set includes all the deformable object’spoints that can be influenced by the wire deformer.

To create deformation effects:

1 Move, rotate, or scale the influence wire(s).

2 Edit the wire deformer’s channels.

For more information on creating and editing deformation effects, see "Editing wiredeformation effects" on page 175.

Page 174: Maya Character Setup

CHARACTER SETUP PART 2

174

USING WIRE DEFORMERS | 15Creating wire deformers

Creating a wire deformer with holdersCreating a wire deformer with holders is similar to creating a wire deformer withoutholders. The main difference is that after you select the curves you want to use asinfluence wires, you then select the other curves you want to use as holders for eachinfluence wire. Consequently, the process for creating a wire deformer with holderscan be somewhat longer than the process for creating a wire deformer withoutholders.

Keep in mind that you can assign holders to each of the wire deformer’s influencewires, and you can assign a holder to more than one influence wire.

After you create the wire deformer, you can add or remove holders.

To create a wire deformer with holders:

1 Specify the Wire Tool’s tool settings so that Holders is on (this is the default).

2 On or near the deformable object(s), create the curve(s) you want to use as influencewire(s).

3 On or near the deformable object(s), create the curve(s) you want to use as holders.

4 Select Deform > Wire Tool.

The cursor changes to a cross-hair, and the Wire Tool icon is displayed in theToolBox. You are now ready to use the Wire Tool to create a wire deformer with the WireTool’s current tool settings.

Note that the prompt line displays information to lead you through the process ofcreating a wire deformer.

5 Select the object(s) you want to deform, and press the Enter key.

6 Select a curve that you want to use as an influence wire, and press the Enter key.

7 For each holder that you want to assign to the influence wire, select a holder curve,and press Enter. If you don’t want to assign any holders to the influence wire, clearthe selection list by selecting empty space, and then press Enter.

8 When you’re done selecting holders for the influence wire, clear the selection list byselecting empty space, and then press Enter.

9 For each influence wire you want to create, repeat steps 6 through 8.

10 When you are ready to create the wire deformer, clear the selection list by selectingempty space, and then press Enter.

A wire deformer is created based on the Wire Tool’s tool settings. The curves youselected are now influence wires that you can use to deform the object(s) youselected.

Assigning a holder to more than one influence wire

You can assign a holder to more than one influence wire. To do so, pick acurve that will be an influence wire, press Enter, then select the curve thatwill be a holder, and press Enter again. Pick the next curve that will be aninfluence wire, press Enter, then select the same holder curve, and pressEnter again. Continue this process for each influence wire curve that willbe assigned the holder curve.

Page 175: Maya Character Setup

USING WIRE DEFORMERS | 15Editing wire deformation effects

DEFORMERS CHARACTER SETUP

175

A base wire is created for each influence wire. The base wire(s) are listed in theOutliner. By default, they are not shown in the scene, but they do influence thedeformation effect. The wire node calculates the deformation effect based ondifferences between each influence wire and its base wire.

A deformer set is created. The deformer set includes all the deformable object’spoints that can be influenced by the wire deformer.

To create deformation effects:

1 Move, rotate, or scale the influence wire(s).

2 Edit the wire deformer’s channels.

For more information on creating and editing deformation effects, see the nextsection, "Editing wire deformation effects" on page 175.

EDITING WIRE DEFORMATION EFFECTS

After you have created a wire deformer, you can edit a wire deformer’s effects asdescribed in the following pages.

Moving, rotating, and scaling influence wiresYou can create deformation effects by moving, rotating, or scaling the influencewires individually or as a group. You can move, rotate, or scale an influence wire inthe same way that you would move, rotate, or scale any object in Maya.

Moving, rotating, and scaling deformable objectsYou can also create deformation effects by moving, rotating, or scaling thedeformable object(s) through the influence wires. You can move, rotate, or scale adeformable object in the same way that you would move, rotate, or scale any objectin Maya.

Editing the shape of influence wiresYou can create deformation effects by editing the influence wires. You edit the shapeof the influence wires in the same way that you edit NURBS curves duringmodeling.

Moving, rotating, and scaling base wiresYou can move, rotate, or scale the base wires to create various deformation effects.

The base wires are hidden by default. However, you can select them in the Outliner,display them, and then directly manipulate them.

In case of no deformation effects

If a wire deformer does not deform an object when you manipulate theinfluence wire(s), the influence wire curve(s) may not have been placedclose enough to the object when you created the wire deformer. You canget deformation effects by moving the base wire(s).

Page 176: Maya Character Setup

CHARACTER SETUP PART 2

176

USING WIRE DEFORMERS | 15Editing wire deformation effects

Note that you cannot edit the shape of the base wires, though you can edit the shapeof the influence wires.

Adding influence wiresAfter you have created a wire deformer with one or more influence wires, you mightdecide you need more influence wires to get the effect you want.

To add an influence wire:

1 Select the curves you want to add to the deformer.

2 Shift-click on any wire in the deformer to select the deformer to which you want addthe curves as influence wires.

3 Select Deform > Edit Wire > Add.

The selected curves become influence wires for the wire deformer.

Removing influence wiresYou can remove influence wires from a wire deformer. Note that removing all of awire deformer’s influence wires also removes the wire deformer node from thedeformed object’s history.

To remove an influence wire:

1 Select the curves that you want to remove as influence wires.

2 Select Deform > Edit Wire > Remove.

3 The selected curves are no longer influence wires.

Controlling the effects of crossed influence wiresIf a wire deformer includes more than one influence wire, you can create someinteresting deformation effects by positioning the wires so that they cross. When twowires cross, you can get an additive deformation effect where the wires cross. This isbecause both wires are influencing some of the same points.

Getting an additive effect where wires crossYou can control to what extent the deformation effect is the sum of the influences ofboth wires by editing the wire deformer’s Crossing Effect attribute. The CrossingEffect attribute can have a value from 0 to 1. A value of 1 makes the total influencethe sum of the influence of the two wires, creating an additive deformation effectwhere the wires cross. A value of 0 smooths out the deformation, so that there is noadditive deformation effect where the wires cross. By default, Crossing Effect is 0,resulting in a smooth rather than an additive effect. You can edit Crossing Effectfrom the Channel Box or the Attribute Editor.

Localizing the influence of crossed wires at different distancesIf the wires are at different distances from the deformed object, you can controlwhich wires influence the deformation effect more by editing the wire deformer’sLocal Influence attribute. The Local Influence attribute controls how localized eachwire’s influence is. The greater the Local Influence, the more the points closest eachwire are influenced by the wire closest to them. You can edit Local Influence fromthe Channel Box or the Attribute Editor.

Page 177: Maya Character Setup

USING WIRE DEFORMERS | 15Editing wire deformation effects

DEFORMERS CHARACTER SETUP

177

Resetting influence wiresYou can reset an influence wire so that it does not create deformation effects. Byresetting an influence wire, you put the influence wire in the same position as thebase wire.

To reset influence wires

1 Select the influence wire(s) you want to reset.

2 Select Deform > Edit Wire > Reset.

Creating wires groups that parent influence wires to base wiresAfter you create a wire deformer, by default the base wire will not move when youmove the influence wire. Because the deformation effect is based on the relationshipbetween the influence wire and the base wire, when you move the influence wireyou get an effect that always originates from the base wire’s location. This is usefulfor creating effects that always originate from the same place. However, you canhave the base wire move with the influence wire.

To create a wires group:

1 Select the influence wire.

2 Select Deform > Edit Wire > Parent Base Wire.

A wires group is created that includes the influence wire and the base wire. Thewires group is named after the influence wire and listed in the Outliner.

Editing wire deformer channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a wire deformer’s channels.

To edit all attributes, use the Attribute Editor (see "Editing wire deformer attributes"on page 178).

To edit channels with the Channel Box:

1 Select a wire deformer node (default name: wiren).

One quick way to select the wire deformer node is to select the object beingdeformed, and then select the wire deformer node in its history from the ChannelBox (under INPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Values range from 0 to 1. Default is 1.

Crossing Effect Specifies the amplitude of the deformation effect when two influence wires cross.Values range from 0 (smooth effect) to 1 (additive effect). Default is 0.

Tension Specifies the influence wire’s attraction strength. Values specify how strongly theinfluence wire can attract the deformable object’s points away from the base wire.The attraction strength therefore expresses a tension between the influence wire andthe base wire. Values range from -10 (weakest) to 10 (strongest). Default is 1.

Page 178: Maya Character Setup

CHARACTER SETUP PART 2

178

USING WIRE DEFORMERS | 15Editing wire deformation effects

Local Influence Specifies the localization of the deformation effect of two or more influence wires.Values range from 0 and 1, with 1 specifying greatest localization. Default is 0.

Rotation Specifies an effect that varies between shearing and tangency. Values range from 0and 1, with 0 indicating maximum shearing and 1 maximum tangency.

DropoffDistance[n] Specifies the range of influence for each influence wire. The value of n indicates

which influence wire. As the value of Dropoff Distance increases, more points withinthe deformation region are influenced by the influence wire. Default is 1.

Scale[n] Specifies the scale of influence for each influence wire. The value of n indicateswhich influence wire. Scale controls the strength of an influence wire’s attraction topoints in the deformation region. Scale’s value has the effect of scaling a surfaceradially around an influence wire. The scaling effect can be gradually reduced by theDropoff Distance.

LocatorEnvelope[n] Specifies the deformation scale factor for a wire dropoff locator. The value of n

indicates which wire dropoff locator. Default is 1. These channels are only displayedif you have created wire dropoff locators (see "Using wire dropoff locators forlocalized deformation effects" on page 180).

Wire LocatorTwist[n] Specifies localized twisting effects around a wire dropoff locator. The value of n

indicates which wire dropoff locator. As you increase or decrease the value, you seea twisting of the region of the surface influenced by the wire dropoff locator. Incharacter setup, changing Wire Locator Twist can provide subtle effects for lip andeyebrow action. Default is 0, which specifies no twisting effects. These channels aredisplayed only if you have created wire dropoff locators (see "Using wire dropofflocators for localized deformation effects" on page 180).

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key will give you finercontrol, and pressing the Shift key will give you coarser control.

Editing wire deformer attributesYou can edit all of a wire deformer’s attributes with the Attribute Editor.

To edit attributes with the Attribute Editor:

1 Select the wire deformer node (default name: wiren).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Parameters, Scale, DropoffDistance, Locators, Deformer Attributes, Node Behavior, and Extra Attributes.

Parameters

Rotation Specifies an effect that varies between shearing and tangency. Values range from 0and 1, with 0 indicating maximum shearing and 1 maximum tangency. Use theslider to select values from 0.000 to 1.000. Default is 1.000.

Page 179: Maya Character Setup

USING WIRE DEFORMERS | 15Editing wire deformation effects

DEFORMERS CHARACTER SETUP

179

Crossing Effect Specifies the amplitude of the deformation effect when two influence wires cross.Values can vary from 0 (smooth effect) to 1 (additive effect). Default is 0. Use theslider to select values from 0.000 to 1.000. Default is 0.000.

Local Influence Specifies the localization of the deformation effect of two or more influence wires.Values range from 0 and 1, with 1 specifying greatest localization. Use the slider toselect values from 0.000 to 1.000. Default is 0.000.

Tension Specifies the influence wire’s attraction strength. Values specify how strongly theinfluence wire can attract the deformable object’s points away from the base wire.The attraction strength is therefore expresses a tension between the influence wireand the base wire. Use the slider to select values from -10.000 to 10.000. Default is1.000.

FreezeGeometry Specifies whether to freeze the wire deformation effect. If frozen (checked on),

components (for example, CVs) of objects being deformed that are under theinfluence of the influence wire become fixed and affected only by the influence wire,even if you transform (move, rotate, or scale) the object or the base wire. The reasonyou would want to freeze geometry is to improve performance. Note that youshould not move geometry objects relative to the base wire with freeze geometrychecked on. Check on or off. Default is off.

Scale

curven Specifies the scale of influence for each influence wire. The value of n indicateswhich influence wire. Default is 1.00.

Dropoff Distance

curven Specifies the range of influence for each influence wire. The value of n indicateswhich influence wire. Default is 1.00.

Locators

If you have created any wire dropoff locators, this section lists the attributes for eachwire dropoff locator on each influence wire.

curveShapen->locatorn

Identifies the influence wire shape (default name: curveShapen) and the wire dropofflocators (default name: locatorn) on that wire. The locators are numbered in theorder that they were created, starting with 1.

Param[n] Specifies the location of the wire dropoff locator on the influence wire curve. Thevalue of n indicates which wire dropoff locator, numbered in the order created,starting with 0. The value is in terms of the curve’s U parameter.

Percent[n] Specifies the local effect the locator has on the influence wire’s dropoff. The value ofn indicates which wire dropoff locator, numbered in the order created, starting from0. By default, the influence wire has two implicit locators at each end with a Percentof 1.000; other locators have an effect relative to the Percent of those locators. Use theslider to select values from 0.000 to 1.000. Default is 1.000.

Twist[n] Specifies localized twisting effects around a wire dropoff locator. The value of nindicates which wire dropoff locator, numbered in the order created, starting with 0.As you increase or decrease the value, you see a twisting of the region of the surfaceinfluenced by the wire dropoff locator. In character setup, changing Twist can

Page 180: Maya Character Setup

CHARACTER SETUP PART 2

180

USING WIRE DEFORMERS | 15Editing wire deformation effects

provide subtle effects for lip and eyebrow action. Default is 0, which specifies notwisting effects. (Note that this attribute corresponds to the Wire Dropoff Twistchannel.)

Envelope[n] Specifies the deformation scale factor for a wire dropoff locator. The value of nindicates which wire dropoff locator, numbered in the order created, starting with 0.Default is 1. (Note that this attribute corresponds to the Locator Envelope channel.)

Deformer Attributes

Envelope Specifies the deformation scale factor. Values range from 0.000 to 1.000.

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Using wire dropoff locators for localized deformation effectsYou can vary the deformation effect at specific points along an influence wire byusing wire dropoff locators.

Wire dropoff locators are locators that you place along an influence wire. Eachlocator has attributes that you can then edit to create localized deformation effects.For each influence wire, you can add as many locators as you like.

To add a wire dropoff locator, you identify a curve point on the influence wirecurve. You then specify that the point is a wire dropoff locator.

To add a wire dropoff locator:

1 To select a curve point on the influence wire, right-click the influence wire curve andselect Curve Point from the marking menu.

2 Click the influence wire curve roughly where you would like to put the wire dropofflocator. The curve point is displayed as a small yellow box.

3 Drag along the curve to adjust the point’s position on the curve.

As you drag, you move the curve point. The curve point’s position is defined interms of the curve’s U parameter.

Now you need to specify the curve point as a wire dropoff locator.

4 Select Deform > Wire Dropoff Locator.

The curve point is now a wire dropoff locator.

5 To add more wire dropoff locators, repeat steps 2 through 5.

To move a wire dropoff locator:

1 Be sure you are in components selection mode, with the parameter points selectionmask on.

2 Select the wire dropoff locator shape node.

3 Select the Move Tool.

4 You can now move the dropoff locator along the influence wire curve.

Page 181: Maya Character Setup

USING WIRE DEFORMERS | 15Editing wire deformation effects

DEFORMERS CHARACTER SETUP

181

To edit a wire dropoff locator’s channels:

1 Select the wire dropoff locator shape node (default name: locatorShapen).

2 In the Channel Box, the following channels are listed:

Percent Specifies the local effect the locator has on the influence wire’s dropoff. By default,the influence wire has two implicit locators at each end with a Percent of 1; otherlocators have an effect relative to the Percent of those locators.

Param Specifies the location of the wire dropoff locator on the influence wire curve. Thevalue is in terms of the curve’s U parameter.

3 Note the wire deformer also includes Locator Envelope and Wire Locator Twistchannels for each wire dropoff locator (see "Editing wire deformer channels" onpage 177). These channels correspond to the wire deformer’s Envelope and Twistattributes (see "Editing wire deformer attributes" on page 178; refer to the AttributeEditor’s Locators section).

To edit a wire dropoff locator’s attributes:

1 Select a wire dropoff locator (default name: locatorShapen).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Dropoff Locator Attributes, RenderStats, Object Display, Node Behavior, and Extra Attributes.

Dropoff Locator Attributes

Along with the Percent, Param, and Local Position attributes listed here, two otherattributes are available to control the deformation effects of a wire dropoff locator:the Twist attribute and the Envelope attribute. These attributes are available asattributes of the wire deformer. For more information, see "Editing wire deformerattributes" on page 178; refer to the Attribute Editor’s Locator section.

Percent Specifies the local effect the locator has on the influence wire’s dropoff. By default,the influence wire has two implicit locators at each end with a Percent of 1.000; otherlocators have an effect relative to the Percent of those locators. Use the slider to selectvalues from 0.000 to 1.000. Default is 1.000. Note that this attribute is also availableas an attribute of the wire deformer. (See "Editing wire deformer attributes" on page178; refer to the Attribute Editor’s Locators section.)

Param Specifies the location of the wire dropoff locator on the influence wire curve. Thevalue is in terms of the curve’s U parameter. Note that this attribute is also availableas an attribute of the wire deformer. (See "Editing wire deformer attributes" on page178; refer to the Attribute Editor’s Locator section.)

Local Position Specifies the local position of the wire dropoff locator on the influence wire curve.

Render Stats

This section includes settings for rendering. For more information about rendering,see Using Maya: Rendering.

Object Display

This section includes settings for the dropoff locator’s visibility (the Visibilityattribute) and templating (the Template attribute).

Page 182: Maya Character Setup

CHARACTER SETUP PART 2

182

USING WIRE DEFORMERS | 15Editing wire deformation effects

Node Behavior

See "Editing node behavior to improve performance" on page 54.

Extra Attributes

(No extra attributes by default.)

Smoothing jagged effectsIn certain situations, a wire deformer can produce an undesirable jagged effect alongthe surface of an object.

An influence wire placed diagonally along a NURBS surface can create a jaggedeffect if the spacing between the surface’s control vertices is too large for the value ofthe wire deformer’s dropoff distance attribute.

In general, the spacing of a deformable object’s points should be at least twice asdense as the Dropoff Distance.

To smooth jagged effects:

• Increase the wire deformer’s Dropoff Distance attribute (see "Editing wire deformerattributes" on page 178).

or

• Add more points to the object’s surface. For example, if the object is a NURBSsurface, increase the number of control vertices.

Limiting the wire deformation regionTo limit the deformation region, you can use a wire deformer with holders, edit thedeformer set, or prune the deformer set.

Holders are curves you can use to limit the deformation region. To create a wiredeformer with holders, see "Creating a wire deformer with holders" on page 174. Toadd or remove holders, see "Adding and removing holders" on page 182. To edithow the deformation region is limited by holders, you can move, rotate, or scale theholders. To move, rotate, or scale holders, see "Moving, rotating, scaling holders" onpage 183. You can also edit the shape of holders. To edit the shape of holders, see"Editing the shape of holders" on page 183.

A wire deformer set includes the points of a deformable object that are influenced bya wire deformer. To limit the wire deformation region, you can edit which points arein the wire deformer set. To edit a deformer set, see "Editing wire deformer sets" onpage 183.

You can also prune all of the points that are not currently being deformed from theset. Pruning the set is a quick way to limit the deformation region because you cando it as you interact with the influence wires. To prune a deformer set, see "Pruningwire deformer sets" on page 183.

Adding and removing holdersHolders are curves that limit the deformation region. Adding or removing a holdercan sometimes lead to unexpected changes in the deformation region. You canremedy these effects by editing and pruning the wire deformer set.

Page 183: Maya Character Setup

USING WIRE DEFORMERS | 15Deleting wire deformers

DEFORMERS CHARACTER SETUP

183

To add holders:

1 Select the curves you want to add to the deformer as holders.

2 Shift-click on any wire in the deformer to select the deformer to which you want addthe curves as holders.

3 Select Deform > Edit Wire > Add Holder.

The selected curves become holders for the wire deformer.

To remove holders:

1 Select the curves that you want to remove as holders.

2 Select Deform > Edit Wire > Remove.

The selected curves are no longer holders.

Moving, rotating, scaling holdersMoving, rotating, or scaling holders can change the deformation effect and thedeformation region. You can move, rotate, or scale a holder in the same way that youwould move, rotate, or scale any object in Maya.

Editing the shape of holdersEditing the shape of holders can change the deformation effect and the deformationregion. You edit the shape of holders in the same way that you edit NURBS curvesduring modeling.

Editing wire deformer setsFor more information, see "Editing deformer set membership" on page 46.

Pruning wire deformer setsPruning is useful for quickly limiting the deformation region as you manipulateinfluence wires.

To prune deformer set membership:

1 Select a wire deformer node.

2 Move the influence wire(s) so that only those points you want to keep in thedeformer set are being affected.

3 Select Deform > Prune Membership > Wire.

The undeformed points are removed from the deformer set.

DELETING WIRE DEFORMERS

To delete a wire deformer:

1 Select the wire deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 184: Maya Character Setup

CHARACTER SETUP PART 2

184

USING WIRE DEFORMERS | 15Deleting wire deformers

Page 185: Maya Character Setup

DEFORMERS CHARACTER SETUP

185

16 USING WRINKLE DEFORMERS

A wrinkle deformer combines a cluster deformer with one or more wire deformers.Wrinkle deformers are useful for creating detailed wrinkling effects.

UNDERSTANDING WRINKLE DEFORMERS

A wrinkle deformer provides a cluster of wire deformers. You can createdeformation effects by controlling the entire cluster of wire deformers, or bymanipulating individual influence wires.

Wrinkledeformer actingon character’smouth

Wrinkle deformerconsisting ofcluster deformercontrolling wiredeformers

Page 186: Maya Character Setup

CHARACTER SETUP PART 2

186

USING WRINKLE DEFORMERS | 16Understanding wrinkle deformers

Because a wrinkle deformer is a combination of a cluster deformer and one or morewire deformers, animating a wrinkle deformer involves animating the attributes ofthe cluster deformer and the wrinkle deformers rather than the attributes of thewrinkle deformer.

For wrinkling a single NURBS surface, you can use three types of wrinkle deformers:radial wrinkles, tangential wrinkles, and custom wrinkles.

Radial wrinkle deformersRadial wrinkle deformers combine influence wires that branch from a single point,like spokes on a wheel. A radial wrinkle deformer can only deform a single NURBSsurface.

Tangential wrinkle deformersTangential wrinkle deformers combine influence wires that are roughly parallel. Atangential wrinkle deformer can only deform a single NURBS surface.

Custom wrinkle deformersCustom wrinkle deformers combine influence wires you have created in the fashionthat best suits the effect you would like to make. A custom wrinkle deformer candeform a single NURBS surface or many NURBS surfaces. A custom wrinkledeformer can also deform polygonal surfaces and lattices. In short, a custom wrinkledeform can deform any deformable object.

Related MEL commandsMEL commands related to wrinkle deformers include the following:

• wrinkle

• wrinkleContext

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a wrinkle deformer can include the following:

• Cluster deformer node, which is the algorithm node for the wire deformer (defaultname: clustern).

• Cluster handle node (default name: clusterHandlen).

• Wire deformer nodes, which are the algorithm nodes for the wire deformer (defaultname: wiren).

• Tweak node (default name: tweakn).

• Base wire nodes for each influence wire (default names: influenceWireBaseWire andinfluenceWireBaseWireShape).

• Cluster deformer set node (default name: clusternSet).

• Wire deformer set nodes (default names: wirenSet).

• Wire dropoff locator shape nodes (default name: locatorShapen) for each wiredropoff locator.

Page 187: Maya Character Setup

USING WRINKLE DEFORMERS | 16Creating wrinkle deformers

DEFORMERS CHARACTER SETUP

187

• Wires group nodes that parent influence wires and their base wires (default name:influenceWireWires).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING WRINKLE DEFORMERS

To create a wrinkle deformer, you use the Wrinkle Tool. The characteristics of thewrinkle deformer you create depend on the Wrinkle Tool’s tool settings.

Specifying Wrinkle Tool’s tool settings

To specify tool settings:

1 Select Deform > Wrinkle Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s Wrinkle Options as follows:

Wrinkle Options

Type Specifies the type of wrinkle deformer. Select Tangential, Radial, or Custom. Defaultis Radial.

Amount Specifies the number of parent influence wires in the wrinkle deformer. (The totalnumber of influence wires can also include child influence wires specified by RadialBranch Amount and Radial Branch Depth). Use the slider to select value between 0and 20. Default is 3.

Thickness Specifies the surface dropoff, which is the area influenced by each influence wire.Use the slider to select values from 0.0000 to 2.0000. Default is 1.0000.

Randomness Specifies how close the wrinkle deformer conforms to the specified Amount,Intensity, Radial Branch Amount, and Radial Branch Depth. Use the slider to selectvalues from 0.0000 to 1.0000. Default is 0.2000.

Intensity Specifies the sharpness of the creases created by the influence wires. The minimumintensity (0) specifies smooth creases. The maximum intensity (1) specifies sharp,steep creases. Use slider to select values from 0.0000 to 1.0000. Default is 0.5000.

Radial BranchAmount

Specifies the number of child influence wires that branch from each parent influencewire. Applies to radial wrinkle deformers only. Use slider to select values from 0 to10. Default is 2.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later.

Page 188: Maya Character Setup

CHARACTER SETUP PART 2

188

USING WRINKLE DEFORMERS | 16Editing wrinkle deformation effects

Radial BranchDepth Specifies the depth of the influence wire hierarchy, which is the number of levels of

child influence wires that branch from each parent influence wire. Increasing theRadial Branch Depth exponentially increases the total number of influence wires.Applies to radial wrinkle deformers only. Use slider to select values from 0 to 4.Default is 0.

• Click Reset Tool to reset to default options.

or

• Click Close to close the Tool Settings window.

Note that you can change the tool settings whenever you are using the Wire Tool byselecting Windows > General Editors > Tool Settings.

Creating a wrinkle deformer

To create a wrinkle deformer:

1 Select one or more deformable objects. Typically, the deformable object is a NURBSsurface.

2 Select Deform > Wrinkle Tool.

A UV region of the surface is highlighted, allowing you to shape a wire cluster fordeforming the surface.

3 Using the middle mouse button, shape the UV region. Scale it using the circle in themiddle of each side, rotate it using the corners, and move it using the dot in themiddle of the UV region.

4 Press Enter when the UV region fits the area of the deformable object.

The “C” icon is the wrinkle deformer’s cluster deformer handle.

To create wrinkle deformation effects:

1 Move, rotate, or scale the cluster deformer handle (the “C” icon).

2 Move, rotate, or scale the influence wires.

For more information on creating and editing deformation effects, see "Editingwrinkle deformation effects" on page 188.

EDITING WRINKLE DEFORMATION EFFECTS

After you have created a wrinkle deformer, you can edit the deformer’s effects asdescribed in the following topics:

Manipulating the wrinkle deformer’s cluster deformer handleThe techniques for manipulating a wrinkle deformer’s cluster deformer handle (theC icon) are the same as the techniques for manipulating a regular cluster deformerhandle. For information on manipulating cluster deformer handles, see"Manipulating the cluster handle (C icon)" on page 89.

Page 189: Maya Character Setup

USING WRINKLE DEFORMERS | 16Deleting wrinkle deformers

DEFORMERS CHARACTER SETUP

189

Moving, rotating, and scaling the influence wires

To move, rotate, or scale influence wires:

1 In the Outliner, select the influence wires you want to move, rotate, or scale. Theinfluence wires are listed under the wrinkle deformer’s cluster deformer handle.

2 Select Display > Show > Show Selection.

Now you can manipulate each influence wire in the same way that you would ifworking with a wire deformer. For example, you can even move the base wires oradd wire dropoff locators.

Editing the wrinkle deformer’s cluster deformerThe techniques for editing a wrinkle deformer’s cluster deformer are the same as thetechniques for editing a regular cluster deformer. For information on editing clusterdeformers, see "Editing cluster deformation effects" on page 89.

Editing the wrinkle deformer’s wire deformersThe techniques for editing a wrinkle deformer’s wire deformers are the same as thetechniques for editing regular wire deformers. For information on editing wiredeformers, see "Editing wire deformation effects" on page 175.

DELETING WRINKLE DEFORMERS

To delete a wrinkle deformer:

1 Select the wrinkle deformer’s cluster deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 190: Maya Character Setup

CHARACTER SETUP PART 2

190

USING WRINKLE DEFORMERS | 16Deleting wrinkle deformers

Page 191: Maya Character Setup

DEFORMERS CHARACTER SETUP

191

17 USING WRAP DEFORMERS

With wrap deformers, you can shape deformable objects with NURBS or polygonalobjects. The shapes of the NURBS or polygonal objects you use provide the shapes ofthe deformation. If you’d like to explore some examples now, see "Examples" onpage 201.

UNDERSTANDING WRAP DEFORMERS

A wrap deformer can deform deformable objects with NURBS surfaces, NURBScurves, or polygonal surfaces (meshes).

Deformable objectsA deformable object is any object whose structure is defined by NURBS controlvertices (CVs), polygonal vertices, or lattice points. NURBS curves, NURBS surfaces,polygonal surfaces (meshes), and the lattices of lattice deformers are all deformableobjects.

Cone and cube acting aswrap influence objects todeform head with wrapdeformer

Cone wrap influence object

Cube wrap influence object

Page 192: Maya Character Setup

CHARACTER SETUP PART 2

192

USING WRAP DEFORMERS | 17Creating wrap deformers

Wrap influence objects and wrap base objectsA wrap influence object is a NURBS or polygonal object being used by a wrapdeformer (the wrap deformer algorithm node) to deform an object. The shape andthe transformations of the wrap influence objects and their points provide the shapeof the deformation.

When you create a wrap influence object, Maya makes a copy of the influence objectand uses it as a base shape for the deformation. Any difference in position,orientation, or shape between the base shape and the wrap influence object results ina deformation of the surface being influenced by the wrap deformer.

A wrap deformer can include one or more influence objects. You’ll often use severalwrap influence objects to create deformation effects based on the competinginfluences of the objects.

You can influence one or more deformable objects with the same wrap influenceobjects. When you create a wrap deformer, Maya creates a wrap deformer node foreach deformable object.

Note that wrap influence objects are themselves deformable objects. You can deformthem with other deformers, or use them with smooth or rigid skinning.

Dependency graph nodesThe dependency graph nodes for a wrap deformer can include the following:

• Wrap deformer algorithm node, created for each object being deformed (defaultname: wrapn)

• Wrap influence object node, a shape node that provides the shape for wrap influenceobjects (default name example: nurbsObjectName).

• Wrap base object node, a shape node for each wrap influence object’s base shape(default name: wrapInfluenceObjectBase)

• Tweak node (default name: tweakn). The tweak node provides a way for Maya tocarry out point tweaking on the deformable object before any deformation orskinning effects are carried out. (This node is created when you create the firstdeformation node that affects a given deformable object.)

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING WRAP DEFORMERS

Creating a wrap deformer includes creating the objects you want to use as wrapinfluence objects, setting creation options, and then creating the wrap deformer.

Page 193: Maya Character Setup

USING WRAP DEFORMERS | 17Creating wrap deformers

DEFORMERS CHARACTER SETUP

193

Creating objects to use as wrap influence objects

To create objects to use as wrap influence objects:

1 Model one or more NURBS surfaces, NURBS curves, or polygonal surfaces that youwant to use as wrap influence objects.

Note that the shape and distribution of CVs or vertices can affect the wrapdeformation effect. Typically, you would want to have fewer points (CVs, forexample) in the influence object(s) than in the objects you want to deform.

2 Position the object or objects that you want to use as wrap influence objects. Placethem around the object(s) you want to deform so that they can influence theobject(s).

3 If you are going to use more than one object as a wrap influence object, group thoseobjects together now. You must group all those objects together before you create thewrap deformer. However, note that you can also add wrap influence objects afteryou have created a wrap deformer (see "Adding and removing wrap influenceobjects" on page 200).

Setting creation options

To set creation options:

1 If you also want to create a deformer now, select the object(s) you want to deform.

2 Select Deform > Create Wrap ❒.

The Create Wrap Deformer Options window is displayed.

3 Click the Basic and Advanced tabs to set the creation options.

Avoid changing number of object points after you create deformers

You should avoid changing the number of a deformable object’s points (forexample, CVs, vertices, or lattice points) after you create a deformer.Changing the number of points can lead to unexpected deformation effects.Try to be sure you are happy with the deformable object’s topology beforeyou begin using deformers. You might want to save a copy of the object incase you want to do further modeling later. You should also avoidchanging the number of a wrap influence object’s points (CVs or vertices)after you create a wrap deformer.

Rendering wrap influence objects

If you want to render a wrap influence object, be sure that you first turn onthe object’s Primary Visibility (in the Attribute Editor’s Render Statssection). When you tell Maya to use some object as a wrap influence object,Maya turns off the Primary Visibility attribute because typically you wouldnot want to render a wrap influence object. However, in some situations,you might want to render the wrap influence object. For example, youmight use a cloth garment as a wrap influence object, and then wish torender both the action of the garment and the wrap deformer’s effects.

Page 194: Maya Character Setup

CHARACTER SETUP PART 2

194

USING WRAP DEFORMERS | 17Creating wrap deformers

Basic

WeightThreshold Specifies the influence of the wrap influence objects’ shapes based on the proximity

of their components to the objects being deformed. Depending on the point density(for example, the number of CVs) of the wrap influence objects, changing the WeightThreshold can change the overall smoothness of the deformation effect. Values rangefrom 0.000 (smooth) to 1.000 (sharp). Use the slider to select values from 0.000 to1.000. Default is 0.000.

Limit InfluenceArea Click Use Max Distance on to set the Max Distance.

Max Distance Specifies the influence area of wrap influence object points. By limiting the influencearea with Max Distance, you can limit how much memory Maya requires to performthe deformation. The less memory required, the better the performance. Using MaxDistance is especially useful when you are working with high-resolution wrapinfluence objects.

Max Distance’s value is in terms of Maya’s linear units, which are by defaultcentimeters (select Options > General Preferences; click Units tab). The default forMax Distance is 0, which provides the default performance of the wrap deformer.The default value of 0 does not specify no influence area. A value of 0 specifies thateach point has an infinite influence area, with the influence area constrained by theWeight Threshold attribute. However, a Max Distance setting such as 0.1 wouldgreatly limit the influence area to within a distance of 0.1 units from each point. Sucha setting would require less memory than 0 or a setting greater than 0.1.

Note that Weight Threshold takes effect within the influence area indicated by MaxDistance.

Maya allocates memory for the wrap deformer when it is created. You can changeMax Distance after you create the wrap deformer. That can also improveperformance, but for best results try to set the desired value as a creation option. Ofcourse, deciding on the best Max Distance value may require some experimentation.In general, for best performance, you’ll want to try minimize Max Distance to somevalue greater than 0. Note that setting Max Distance to 0 would be better than settingit to a relatively large number (for example, 30), and then lowering the WeightThreshold as desired. This is because a relatively large number will cause morememory allocation than the default setting of 0, even though 0 specifies an infiniteinfluence area. To find the best value, start with 0 or a very small value, and thenwork up towards the desired value.

Advanced

See "Editing advanced deformer creation options" on page 52.

• Click Create to create a wrap deformer.

or

• Click Save to save creation options without creating a wrap deformer.

or

• Click Reset to reset to default creation options.

or

• Click Close to close the window.

Page 195: Maya Character Setup

USING WRAP DEFORMERS | 17Editing wrap deformation effects

DEFORMERS CHARACTER SETUP

195

Creating a wrap deformerBefore you create a wrap deformer, you need to create the objects you want to use aswrap influence objects. (For more information, see the previous section.)

Unlike most other deformers, wrap deformers do not have any creation options. Youcan create wrap deformers immediately without having to consider the defaultcreation options.

Note that the time required to create a wrap deformer can vary depending on theresolution of the wrap influence object(s). The resolution can also affect thedeformation calculation time as you manipulate the wrap deformer.

To create a wrap deformer:

1 Select the object(s) you want to deform.

2 Select the previously created object or group of objects you want to use as wrapinfluence objects.

For more information on creating wrap influence objects, see "Creating objects to useas wrap influence objects" on page 193.

3 Select Deform > Create Wrap.

Maya creates a wrap deformer node for each object you want to deform. Maya alsocreates wrap base objects for each wrap influence object. The Outliner lists the wrapbase objects, which are hidden by default. Note that if you are using more than oneinfluence object and have therefore grouped them together, the base objects areplaced in the same group as the influence objects.

The creation time can vary, depending on the number and resolution of thedeformable objects and wrap influence objects.

To create deformation effects:

1 Move, rotate, or scale the wrap influence object(s).

2 Move the points of the wrap influence object(s).

3 Edit channels added to the wrap influence objects, and edit the channels of the wrapdeformer(s).

For more information on creating and editing deformation effects, see the nextsection.

EDITING WRAP DEFORMATION EFFECTS

You can edit wrap deformation effects as described in the following topics:

Moving, rotating, or scaling wrap influence objectsYou can produce deformation effects by manipulating the wrap influence objects.

If you have a group of influence objects, note that moving, rotating, or scaling thegroup node will not produce deformation effects because the base objects are in thesame group as the influence objects. Maya provides deformation effects based ondifferences between the influence objects and the base objects. To producedeformation effects, you have to manipulate the influence objects individually. If youwant to manipulate all the influence objects as a group, you can create a new group

Page 196: Maya Character Setup

CHARACTER SETUP PART 2

196

USING WRAP DEFORMERS | 17Editing wrap deformation effects

that includes only the influence objects and not the base objects. Alternatively, youcan remove the base objects from the already existing group. To do so, select the baseobject(s), and then select Edit > Unparent.

To move, rotate, or scale a wrap influence object:

1 Select the wrap influence object.

2 Move, rotate, or scale the wrap influence object.

Manipulating wrap influence object pointsYou can produce further deformation effects by manipulating the points of wrapinfluence objects. For example, you can create effects by moving one or more CVs ofa NURBS wrap influence object, or by rotating or scaling several CVs.

To edit by manipulating wrap influence object points:

1 Select points (CVs or vertices) of the wrap influence object.

2 Move, rotate, or scale the vertices.

Moving, rotating, or scaling deformed objectYou can produce deformation effects by manipulating the deformed object in thevicinity of the wrap influence object(s).

To move, rotate, or scale the deformed object:

1 Select the deformed object.

2 Move, rotate, or scale the deformed object.

Editing NURBS wrap influence object channelsNURBS curves or surfaces acting as wrap influence objects get two attributes addedto them: the Dropoff and Wrap Samples attributes. The most convenient way to editthese channels is to use the Channel Box, but these attributes are also listed by thewrap influence object’s Attribute Editor, under the Extra Attributes tab.

To edit channels with the Channel Box:

1 Select the NURBS curve or surface acting as a wrap influence object.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are included:

Dropoff Specifies how rapidly the wrap influence object’s influence decreases with distance.The greater the value, the more rapid the decrease in influence with distance, andthe less the extent of the object’s influence. The lower the value, the further theinfluence and the greater the extent of the object’s influence. Varying the Dropoffvalue is particularly useful when you want to vary the influence of several wrapinfluence objects. Values range from 0 (no dropoff, maximum extent of influence) to20 (rapid dropoff, minimal extent of influence). Default is 4.

Page 197: Maya Character Setup

USING WRAP DEFORMERS | 17Editing wrap deformation effects

DEFORMERS CHARACTER SETUP

197

Wrap Samples Specifies the number of samples of the wrap influence object’s shape the wrapalgorithm uses to evaluate the object’s shape. The greater the value, the more thedeformation reflects the resolution of the wrap influence object. Default is 10. Youcan specify values greater than 10, but more than 10 may not be necessary for goodresults, and the greater the number, the more calculation time required.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing polygonal wrap influence object channelsPolygonal surfaces acting as wrap influence objects get three attributes added tothem: the Dropoff, Smoothness, and Infl Type attributes. The most convenient wayto edit these channels is with the Channel Box, but these attributes are also listed bythe wrap influence object’s Attribute Editor, under the Extra Attributes tab.

To edit channels with the Channel Box:

1 Select the polygonal surface acting as a wrap influence object.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control.)

2 In the Channel Box, the following channels are included:

Dropoff Specifies how rapidly the wrap influence object’s influence decreases with distance.The greater the value, the more rapid the decrease in influence with distance, andthe lesser the extent of the object’s influence. The lower the value, the further theinfluence, and the greater the extent of the object’s influence. Varying the Dropoffvalue is particularly useful when you want to vary the influence of several wrapinfluence objects. Values can range from 0 (no dropoff, maximum extent ofinfluence) to 20 (rapid dropoff, minimal extent of influence). Default is 4.

Smoothness Specifies how much the deformation effect accurately reflects or smooths over thefaces of the wrap influence object. Useful when a low-resolution wrap influenceobject is deforming a high-resolution object. Default is 0.000.

Infl Type Specifies whether the deformation takes place based on the wrap influence object’sfaces or vertices. 1 specifies vertices, 2 specifies faces. Default is 2.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing wrap deformer channels

To edit channels with the Channel Box:

1 Select a wrap deformer node (default name: wiren).

Page 198: Maya Character Setup

CHARACTER SETUP PART 2

198

USING WRAP DEFORMERS | 17Editing wrap deformation effects

One quick way to select the wrap deformer node is to select the object beingdeformed, and then select the wrap deformer node in its history from the ChannelBox (under INPUTS).

Each object being deformed has its own upstream wrap deformer node.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control.)

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1. Values less than zero invert thedeformation effect, and values greater than 1 magnify the deformation effect.

WeightThreshold Specifies the influence of the wrap influence objects’ shapes based on the proximity

of their components to the objects being deformed. Depending on the point density(for example, the number of CVs) of the wrap influence objects, changing the WeightThreshold can change the overall smoothness of the deformation effect. Values rangefrom 0 (smooth) to 1 (sharp).

For example, consider a polygonal wrap influence object. A value of 0 means allfaces have an influence. Values between 0 and 1 limit influence based on componentproximity. For instance, 0.5 specifies that only the closest half of the faces haveinfluence. A value of 1 indicates that only the closest faces have influence. A value of1 provides sharper effects, reflecting the immediate changes from one polygonal faceto another. A setting of 0 provides smoother effects, more reflective of the overallshape of the polygonal wrap influence object than of its individual faces.

For each wrap influence object, the effect of this attribute can be further controlled bychanging the Dropoff and Wrap Samples values (see "Editing NURBS wrapinfluence object channels" on page 196).

Max Distance Specifies the influence area of wrap influence object points. By limiting the influencearea with Max Distance, you can limit how much memory Maya requires to performthe deformation. The less memory required, the better the performance. Using MaxDistance is especially useful when you are working with high-resolution wrapinfluence objects.

Max Distance’s value is in terms of Maya’s linear units, which are by defaultcentimeters (select Window > Settings/Preferences > Preferences; click Settingscategory). The default for Max Distance is 0, which provides the default performanceof the wrap deformer. The default value of 0 does not specify no influence area. Avalue of 0 specifies that each point has an infinite influence area, with the influencearea constrained by the Weight Threshold attribute. However, a Max Distancesetting such as 0.1 would greatly limit the influence area to within a distance of 0.1units from each point. Such a setting would require less memory than 0 or a settinggreater than 0.1.

Note that the Weight Threshold attribute takes effect within the influence areaindicated by Max Distance.

Maya allocates memory for the wrap deformer when it is created. You can set MaxDistance as a creation option. You can also change Max Distance after you create thewrap deformer. That can also improve performance, but for best results try to set thedesired value as a creation option. Of course, deciding on the best Max Distancevalue may require some experimentation. In general, for best performance, you’llwant to try minimize Max Distance to some value greater than 0. Note that setting

Page 199: Maya Character Setup

USING WRAP DEFORMERS | 17Editing wrap deformation effects

DEFORMERS CHARACTER SETUP

199

Max Distance to 0 would be better than setting it to a relatively large number (forexample, 30), and then lowering the Weight Threshold as desired. This is because arelatively large number will cause more memory allocation than the default settingof 0, even though 0 specifies an infinite influence area. To find the best value, startwith 0 or a very small value, and then work up towards the desired value.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing wrap deformer attributes

To edit attributes with the Attribute Editor:

1 Select a wrap deformer node (default name: wrapn).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Wrap Attributes, DeformerAttributes, Node Behavior, and Extra Attributes.

Wrap Attributes

WeightThreshold Specifies the influence of the wrap influence objects’ shapes based on the proximity

of their components to the objects being deformed. Depending on the point density(for example, the number of CVs) of the wrap influence objects, changing the WeightThreshold can change the overall smoothness of the deformation effect. Values rangefrom 0.000 (sharp) to 1.000 (smooth). Use the slider to select values from 0.000 to1.000. Default is 0.000.

Max Distance Specifies the influence area of wrap influence object points. By limiting the influencearea with Max Distance, you can limit how much memory Maya requires to performthe deformation. The less memory required, the better the performance. Using MaxDistance is especially useful when you are working with high-resolution wrapinfluence objects.

Deformer Attributes

Envelope Specifies the deformation scale factor. Default is 1.000. Values less than zero invertthe deformation effect, and values greater than 1.000 magnify the deformation effect.

Node Behavior

For more information, see "Editing node behavior to improve performance" on page54.

Extra Attributes

(By default, there are no extra attributes.)

• Click Select to select the node you are now editing as the currently selected object inyour scene.

Page 200: Maya Character Setup

CHARACTER SETUP PART 2

200

USING WRAP DEFORMERS | 17Deleting wrap deformers

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding and removing wrap influence objectsYou can add more wrap influence objects at any time after you create wrapdeformers.

In removing a wrap influence object, what you remove is the object’s role as a wrapinfluence object. Removing does not delete the object.

To add influence objects:

1 If needed, create the objects you want to use as wrap influence objects. For moreinformation, see "Creating objects to use as wrap influence objects" on page 193.

2 Select the deformed object(s), or their wrap deformer nodes, to which you want toadd the wrap influence object.

3 Now also select the object or group of objects that you want to add as wrap influenceobjects.

4 Select Deform > Edit Wrap > Add Influence.

To remove influence objects:

1 Select the deformed object(s), or their wrap deformer nodes, from which you want toremove the wrap influence object.

2 Now also select the wrap influence objects whose influence you want to remove.

3 Select Deform > Edit Wrap > Remove Influence.

Improving performanceYou can improve the performance of a wrap deformer with the Max Distancecreation option, channel, and attribute. For more information, see "Setting creationoptions" on page 193, "Editing wrap deformer channels" on page 197, and "Editingwrap deformer attributes" on page 199.

You can also improve performance by changing dependency graph evaluationperformance, and by changing node behavior. For more information, see “Changingevaluation performance” on page 51 in Chapter 3, and "Editing node behavior toimprove performance" on page 54.

DELETING WRAP DEFORMERS

To delete a wrap deformer:

1 Select the wrap deformer node.

2 Select Edit > Delete (default shortcut: Backspace key).

The deformer nodes are all deleted. However, the object still has the tweak node asan input node, so any tweaks you might have made are preserved.

Page 201: Maya Character Setup

USING WRAP DEFORMERS | 17Skinning with wrap deformers

DEFORMERS CHARACTER SETUP

201

SKINNING WITH WRAP DEFORMERS

Skinning is the process of binding deformable objects to a skeleton. Typically, thedeformable objects that are bound are NURBS or polygonal surfaces (meshes). Thesegeometry objects become the character’s surface, or skin, and their shapes areinfluenced by the action of the skeleton’s joints. Once you’ve built a skeleton for acharacter, you can skin your character by using a smooth skinning method or a rigidskinning method.

Because wrap influence objects are themselves deformable objects, you can also bindthem to a skeleton by smooth or rigid skinning. In turn, these can influence theNURBS or polygonal surfaces that provide the character’s skin.

In skinning with wrap deformers, you create wrap deformers for the deformableobjects that you want to use for the character’s skin. Then you bind the wrapinfluence objects to the skeleton. The result is that the skeleton’s movementinfluences the objects being deformed by the wrap influence objects indirectly.Meanwhile, you can manipulate the wrap influence objects for more control over thedeformation. This approach, skinning with wrap deformers, is called wrap skinning.

EXAMPLES

This section offers some examples of using wrap deformers:

• "Deforming high-res sphere with low-res sphere" on page 201

• "Deforming plane with five cones" on page 202

Deforming high-res sphere with low-res sphereIn this short example, you will use a low-resolution sphere to deform a high-resolution sphere.

To create high-res sphere:

Create a NURBS sphere with the default options, except set Sections to 40 and Spansto 20.

To create low-res sphere:

Create a NURBS sphere with the default options, except set Radius to 3.

The low-res sphere surrounds the high-res sphere, whose resolution is five times thatof the low-res sphere.

Page 202: Maya Character Setup

CHARACTER SETUP PART 2

202

USING WRAP DEFORMERS | 17Examples

To create wrap deformer:

1 Select the high-res sphere, and then select the low-res sphere.

2 Select Deform > Create Wrap.

The low-res sphere is now a wrap influence object. To find out more about creatingwrap deformers, see "Creating wrap deformers" on page 192.

To create deformation effects:

1 Select some of the CVs of the low-res sphere and move them.

The high-res sphere deforms in response to the changes to the other sphere’s CVs.

2 Switch to object selection mode, keeping the low-res sphere selected.

In the Channel Box, note the sphere’s two new channels: Dropoff and Wrap Samples.

3 Set Dropoff to 20.

The deformation becomes more pronounced.

If you’d like to experiment further with Dropoff and Wrap Samples, see "EditingNURBS wrap influence object channels" on page 196.

Deforming plane with five cones

To create plane:

• Create a NURBS plane with all the default options, except set Width to 20, U Patchesto 20, and V Patches to 20.

Page 203: Maya Character Setup

USING WRAP DEFORMERS | 17Examples

DEFORMERS CHARACTER SETUP

203

To create cones:

1 Create five NURBS cones with all default options. Arrange them on the plane asfollows:

2 Group all the cones together.

To create wrap deformer:

1 Select the plane, then select the cones group.

2 Select Deform > Create Wrap.

To deform plane by moving cones:

Move, rotate, or scale the cones to deform the plane.

You can create a wide variety of deformation effects just by manipulating the cones.

To edit deformation effects:

1 Experiment with each cone’s Dropoff channel.

Page 204: Maya Character Setup

CHARACTER SETUP PART 2

204

USING WRAP DEFORMERS | 17Examples

For more information on the Dropoff and Wrap Samples channels, see "EditingNURBS wrap influence object channels" on page 196.

2 In the Channel Box, note that the wrap deformer node (wrap1) is listed in theOUTPUTS for the cones and in the INPUTS for the plane. Select the wrap deformernode. Experiment with wrap1’s Weight Threshold channel, which can providesharper or smoother deformation effects.

For more information on the wrap deformer channels, see "Editing wrap deformerchannels" on page 197.

Note that you can also move the plane away from or into the influence of the cones.You could create an animation in which the plane goes through a deformation whenit gets close to the cones.

Weight Thresholdchannel set to 0.5.

Page 205: Maya Character Setup

PART 3

SKELETONS

Page 206: Maya Character Setup
Page 207: Maya Character Setup

SKELETONS CHARACTER SETUP

207

18 INTRODUCING SKELETONS

Skeletons are hierarchical, articulated structures for posing and animatingdeformable objects.

UNDERSTANDING SKELETONS

Skeletons are hierarchical, articulated structures for posing and animatingdeformable objects that have been skinned. (For more information on skinning, seeChapter 25, “Introducing Skinning.”) Skeletons provide structures for animatinghierarchical actions in much the same way that a human skeleton determines how ahuman body can move.

For more information about a skeleton’s structure, including its joints, bones, jointchains, limbs, and hierarchical organization, see "Understanding skeletonconstruction" on page 212.

A skeleton used to animatea human character

Page 208: Maya Character Setup

CHARACTER SETUP PART 3

208

INTRODUCING SKELETONS | 18Editing node behavior to improve performance

EDITING NODE BEHAVIOR TO IMPROVE PERFORMANCE

You don’t need to know about node behavior in order to use skeletons effectively. Ifyou are new to skeletons, you can skip this section. However, familiarity with nodebehavior can provide you with more control over skeleton manipulation andperformance.

For each object in your scene, if there has been any change to its node or any of thenodes in its history (its upstream or downstream nodes), Maya will evaluate thenodes and update the display. You can improve performance by editing the nodebehavior attributes.

Understanding node behavior attributesThe node behavior attributes include Caching and Node State.

Caching Specifies that Maya store the results of upstream evaluations, and then provide thoseresults to the node. This saves Maya from having to re-evaluate the upstream nodesevery time the node needs the results. If there are no changes to the upstream nodes,then this setting can improve display performance with no loss of results. However,note that caching uses more memory than would otherwise be used, which couldadversely affect performance. Also, if there are changes to upstream nodes, morememory is allocated and then freed during each deformation, which could alsoadversely affect display performance.

Node State Set Node State to Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, or Waiting-Blocking.

Normal Specifies that Maya evaluate the node and display the results. Maya will evaluate thenode as usual. This is the default.

HasNoEffect Specifies that Maya prevent the evaluation of the node, but still display the node.Maya will evaluate the nodes in the node’s history, but not the node itself.

Blocking Specifies that Maya not evaluate or display the node. Maya will not report the resultsof any evaluations of upstream nodes to this node.

Waiting-Normal (For Maya internal use only.) Specifies that if the dependency graph evaluationrefresh performance setting (Window > Settings/Preferences > PerformanceSettings) is set to Demand or Release, the node will take the Normal state when youclick Update or release the mouse button.

Waiting-HasNoEffect (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theHasNoEffect state when you click Update or release the mouse button.

Waiting-Blocking (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theBlocking state when you click Update or release the mouse button.

Editing node behavior

To set node behavior:

1 Open the node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

Page 209: Maya Character Setup

INTRODUCING SKELETONS | 18Workflow summary

SKELETONS CHARACTER SETUP

209

3 Click Caching on or off.

4 Select the Node State as Normal, HasNoEffect, or Blocking. (The Waiting-Normal,Waiting-HasNoEffect, and Waiting-Blocking states are for Maya’s internal use.)

5 Close the Attribute Editor.

WORKFLOW SUMMARY

After you’ve created a model for your character, the next step is to build a skeleton.The skeleton provides a way to create articulated deformation effects on the modelafter you skin the model’s deformable objects to the skeleton. (For more informationon skinning, see Chapter 25, “Introducing Skinning.”)

In setting up a skeleton, the first thing to do is to build the skeleton. For moreinformation on building skeletons, see Chapter 19, “Building Skeletons.” Afteryou’ve built the skeleton, you can pose it either before or after skinning. For moreinformation on posing skeletons, see Chapter 20, “Posing Skeletons.”

Page 210: Maya Character Setup

CHARACTER SETUP PART 3

210

INTRODUCING SKELETONS | 18Workflow summary

Page 211: Maya Character Setup

SKELETONS CHARACTER SETUP

211

19 BUILDING SKELETONS

Building skeletons is the process of constructing hierarchical, articulated structuresmade of joints and bones. Once you’ve built a skeleton, you can use it to skin acharacter with smooth or rigid skinning. You can also group or parent objects tojoints and bones, and use the skeleton to control the objects’ movements.

Skeleton for humanhand with local rotationaxes displayed foreach jointSkeleton for

human character

Page 212: Maya Character Setup

CHARACTER SETUP PART 3

212

BUILDING SKELETONS | 19Understanding skeleton construction

UNDERSTANDING SKELETON CONSTRUCTION

As you construct a skeleton, use multiple camera views to make sure that yourskeleton fits the deformable objects appropriately in all three dimensions.

Additionally, the grid can be quite useful for judging the size and shape of theskeleton. You can position and rescale the grid to suit your work.

Page 213: Maya Character Setup

BUILDING SKELETONS | 19Understanding skeleton construction

SKELETONS CHARACTER SETUP

213

In skinning, you bind deformable objects to skeletons. In building a skeleton, youshould be thinking about which skinning method you will be using. Building askeleton for smooth skinning could suggest a somewhat different skeletonconstruction strategy than building a skeleton for rigid skinning, lattice skinning, orwrap skinning.

For example, because smooth skinning enables gradual deformations that can beinfluenced by several joints, you could use joints to create deformation effects thatindicate breathing or muscle action. Using joints for this might not work very wellwith rigid skinning, and instead you might use flexors for such effects.

Joints and bones

Joints are the building blocks of skeletons. Each joint can have one or more bonesattached to it. The action of a bone attached to a joint is controlled by the joint’srotation and movement. Various joint attributes specify how the joint can act. Forexample, you can specify limitations on how far a joint can rotate.

Ball joint

A ball joint is a joint that can rotate about all three of its local axes.

Joints

Bones of joints

Page 214: Maya Character Setup

CHARACTER SETUP PART 3

214

BUILDING SKELETONS | 19Understanding skeleton construction

Universal joint

A universal joint is a joint that can rotate only about any two of its local axes. Ahuman wrist would be a good example of a universal joint, though a wrist haslimitations on the extent it can rotate.

Hinge joint

A hinge joint is a joint that can rotate only about one of its local axes. A human kneewould be a good example of a hinge joint.

Joint chainsA joint chain is any group of joints and their bones connected in a series. The jointsare connected linearly; you could draw a line through a joint chain’s series of jointsand their bones without having to retrace your path. A given joint chain begins atthe highest joint in the joint chain’s action hierarchy. This joint is the joint chain’sparent joint.

As you create joint chains for your character, think about how you are going to useIK handles to pose the joint chains. Joint chains that consist of four or fewer joints aremuch easier to pose with IK handles than those that have many more joints.

When you create joint chains, avoid joint chains that are in straight lines. Havingsome of the joints rotated slightly at various appropriate angles will make the jointchain easier to pose with IK handles.

LimbsA limb is any group of one or more connected joint chains. The chains may branchoff from one another, forming a tree-like structure. Unlike a joint chain, a limb’sjoints may not be connected linearly; you may not be able to draw a line through allof a limb’s joints and their bones without doubling back. A given limb begins at thehighest joint in the limb’s action hierarchy. This joint is the limb’s parent joint.

Joint chain

Joint chain

Joint chain

Page 215: Maya Character Setup

BUILDING SKELETONS | 19Understanding skeleton construction

SKELETONS CHARACTER SETUP

215

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

Skeleton hierarchyA root joint is the highest joint in a skeleton’s hierarchy. A skeleton can have onlyone root joint.

A parent joint is any joint higher in a skeleton’s action hierarchy than any of theother joints that are influenced by that joint’s action. Joints below a given parent jointin the action hierarchy are called child joints.

Related MEL commandsMEL commands related to building skeletons include the following:

• disconnectJoint

• insertJoint

• insertJointCtx

• joint

Limbs consist of one or moreconnected joint chains

Root joint

Page 216: Maya Character Setup

CHARACTER SETUP PART 3

216

BUILDING SKELETONS | 19Creating joint chains and limbs

• jointCtx

• jointDisplayScale

• mirrorJoint

• removeJoint

• reroot

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for joints include:

• Joint nodes (default name: jointn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING JOINT CHAINS AND LIMBS

You begin building a skeleton by creating a joint chain is a series of joints and theirbones. You can then add to the joint chain by continuing that joint chain or bycreating new joint chains starting from any of the joint chain’s joints. In this way youcan create a complex structure of various joint chains and limbs. These joint chainsand limbs define a skeleton’s action hierarchy.

Specifying Joint Tool’s tool settings

To specify tool settings:

1 Select Skeleton > Joint Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s Joint Options as follows:

Joint Options

Degrees ofFreedom Specifies which of the joint’s local axes the joint can rotate about during inverse

kinematics (IK) posing. Click X, Y, or Z. The default setting allows the joint to rotateabout all three of its local axes during IK posing.

Auto JointOrient Specifies the orientation of a joint’s local axis. Selections include none, xyz, yzx, zxy,

xzy, yxz, zyx.

The none selection specifies that the joint’s local axis have the orientation of theworld axis.

The other selections specify that the joint’s local axis be oriented so that the first axis(for example, the X-axis for the xyz selection) points into the joint’s bone. (If the jointhas more than one child joint, the first axis points into the bone that connects to thechild joint created first.) The third axis points sideways from the joint and its boneconnecting the child joint, and the second axis points at right angles to the first axisand third axis. All three axes are aligned according to the right hand rule.

Page 217: Maya Character Setup

BUILDING SKELETONS | 19Creating joint chains and limbs

SKELETONS CHARACTER SETUP

217

The default selection is xyz. In this orientation, the positive X-axis points into thejoint’s bone and towards the joint’s first child joint. The Z-axis points sideways fromthe joint and its bone connecting the child joint, and the Y-axis points at right anglesto the X-axis and Z-axis.

Note that if you want to have a hinge joint rotate about a particular axis (forexample, the joint’s local X-axis), you must be sure that axis is not the axis that pointsinto the joint’s bone. For example, if you want the joint to rotate about its local X-axisand Auto Joint Orient is xyz, the joint won’t be able to rotate.

ScaleCompensate Specifies whether the joints you create can be scaled automatically when you scale

joints above them in the skeleton’s hierarchy. (Note that when you scale a joint, youchange the size of the joint’s bone.) If Scale Compensate is on, the joints will not beaffected if you scale their parents.

Having Scale Compensate on can prevent undesirable shearing effects that can occurafter you’ve skinned a character and then decide to scale a joint along one or two ofits axes. Also, having Scale Compensate on can make it easier for you to change thelength of individual bones. Default is on.

Auto JointLimits Specifies that Maya automatically limit the extent a joint can rotate about its axes

according to the angles at which you build the skeleton’s joints. With Auto JointLimits on, the smaller inner angle of a joint rounded off to 180 degrees is set as theallowable range of rotation. For example, when you are creating a knee joint, if youcreate the joint slightly bent back, the joint will automatically not be able to swingthe lower leg bone forward of the upper leg bone, nor will it be able to wobble fromside to side. The joint will not be able to rotate in any other way except through theinner angle rounded off to 180 degrees. However, note that this limitation does notchange the joint’s Degrees of Freedom setting.

This setting does not apply to a joint chain’s start and end joints.

Create IKHandle Specifies that Maya create an IK handle when you are done creating a joint chain.

The IK handle will run from the joint chain’s start joint to its end joint. If you create alimb, Maya creates an IK handle only for the most recently built joint chain in thelimb.

Note that a more typical workflow is to create a complete skeleton, and then lateradd IK handles where desired. If on, the IK Handle Options section is displayed.

IK Handle Options

Specifies the creation options for the IK handle that Maya will create when you aredone creating a joint chain. (Available only if Create IK Handle is on). For moreinformation on these options, see Chapter 21, “Using IK Rotate Plane Handles” andChapter 22, “Using IK Single Chain Handles”.

• Click Reset Tool to reset to the default tool settings.

or

• Click Close to close the Tool Settings window.

Note that you can change the tool settings whenever you are using the Joint Tool byselecting Window > Settings Preferences > Tool Settings.

Page 218: Maya Character Setup

CHARACTER SETUP PART 3

218

BUILDING SKELETONS | 19Editing joints

Creating a joint chain

To create a joint or joint chain:

1 Select Skeleton > Joint Tool.

2 In the workspace, click where you want to create a joint.

3 Click again where you want to create the next joint in the joint chain.

4 Continue until you’ve created all the joints you want in the joint chain.

5 Press the Enter key.

To position the most recently created joint while using Joint Tool:

1 While using the Joint Tool, press the middle mouse button.

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

After you’ve positioned the current joint, you can continue creating joints bypressing the left mouse button.

Another way to position the most recently created joint is to press the Insert key,drag by pressing the left or middle mouse button, and then press the Insert keyagain. You can then continue with using the Joint Tool.

Creating a limbCreating a limb is similar to creating a joint chain. While you are using the Joint Toolto create joints, you can traverse the hierarchy of joints you’ve already created bypressing the arrow keys. By using the arrow keys, you can go back to any previouslycreated joint and create new joints that branch off from current joint chains. As withcreating a joint chain, press the Enter key when you are done.

EDITING JOINTS

You can edit joints as described in the following topics:

Editing joint attributes

To edit joint attributes with the Attribute Editor:

1 Select the joint node (default name: jointn).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, Joint, JointRotation Limit Dampening, Limit Information, Scale, Display, Node Behavior, andExtra Attributes.

Transform Attributes

Translate Specifies the joint’s translation (Translate X, Y, and Z) attribute values in worldspace.

Rotate Specifies the rotation (Rotate X, Y, and Z attribute values) of the joint’s bone(s) aboutthe joint in world space.

Page 219: Maya Character Setup

BUILDING SKELETONS | 19Editing joints

SKELETONS CHARACTER SETUP

219

Scale Specifies the joint’s scale (Scale X, Y, and Z) attribute values in world space.

Rotate Order Specifies the joint’s rotation order. For example, if the rotation order is xyz, the jointfirst rotates about its X-axis, then its Y-axis, and finally its Z-axis. Select xyz, yzx,zxy, xzy, yxz, zyx. Default is xyz.

Rotate Axis Specifies the orientation of the joint’s bone(s) relative to the orientation of the joint’slocal rotation axis.

InheritsTransform Specifies whether the joint can be affected by the translation, rotation, or scaling of

its parent joint.

Joint

Degrees ofFreedom Specifies which of its local axes the joint can rotate about during inverse kinematics

(IK) posing and animation. Click on or off X, Y, or Z. Default allows the joint torotate about all three axes during IK posing and animation.

Stiffness Specifies a joint’s resistance to rotation, or stiffness, during inverse kinematics (IK)posing. Set the Stiffness only if it’s important that certain joints in a joint chaincontrolled by an IK handle rotate less freely than others. For example, you mightwant joints in the mid-back of a human to rotate less freely than those in the lowerback.

Stiffness operates relatively between joints in a joint chain controlled by IK handles.IK solver calculations for stiffness can require a little more time than usuallyrequired, so use stiffness only when its effect is particularly important.

You set the stiffness for each axis separately. You can use this for joints that move inseveral directions. For example, a wrist joint moves more freely bending toward theforearm than it does from side to side.

When stiffness is specified, the IK solver adjusts the internal energy strictly underthe constraint that the end effectors stay fixed. Therefore, if there are no redundantdegrees of freedom, the stiffness won’t modify the single chain IK solver’s solution.

Specify values from 0 to 100 for the X-axis, Y-axis, and Z-axis of the joint’s local axis.The effect of the values is relative to the values assigned to other joints in the jointchain. For example, in a joint chain with two joints, if joint1 has a Stiffness of 1.0 andjoint2 has 2.0, joint2 will be twice as stiff as joint1. With stiffness set to 0, no stiffnessis specified. In general, this is the recommended setting for all of a skeleton’s joints.However, remember that the Stiffness values for each joint in a joint chain controlledby an IK handle are relative to the values for all the other joints in the joint chain.Consequently, if you set the Stiffness for at least one of the joints, you should also setthe Stiffness values for the other joints in the chain so that they do not have thedefault (0). For example, you might set the Stiffness values for all the joints in thechain to 1, and then set the Stiffness values for the very stiff joints to 2 (twice as stiffas the rest), or 3 (three times as stiff), and so forth. If some of the joints in the chainstill have the default setting of 0, the joints can lock up during IK posing.

Preferred Angle Specifies how an inverse kinematics (IK) handle will prefer to rotate a joint during IKposing.

The IK solver often can rotate a joint in a number of different ways in order to reachthe goal. Similarly, when more than one IK handle passes through a joint, the firstpriority of all the IK solvers is to make all the IK handles reach their goals. Often avariety of joint rotations can allow the IK handles to reach their goals.

Page 220: Maya Character Setup

CHARACTER SETUP PART 3

220

BUILDING SKELETONS | 19Editing joints

Depending on how you want your character to move, some rotations are moreappropriate than others. You can identify preferred angles for your character’sactions. Two types of IK solvers, the single chain IK solver and the rotate plane IKsolver, will then give those angles priority over other possible angles during jointrotation. The angles you give priority to are the preferred angles.

Joint Orient Specifies the orientation of the joint’s local rotation axis.

Segment ScaleCompensate

Specifies whether the scaling (the Scale X, Y, and Z attribute values) of the joint’sparent joint affects the joint. If on, the joint compensates for the scaling of its parentjoint, and so is not affected. Click on or off. Default is on.

Joint Rotation Limit Damping

For most living creatures, when a joint rotates as far as it can, it tends to slow downor “dampen” before reaching its limit. For example, an elbow does not snap straight,but gradually slows down as the lower arm aligns with the upper arm. In animationterminology, the effect is that of an “ease-in.”

Joint dampening applies resistance to a joint as it approaches its joint limits. Insteadof the joint abruptly stopping when it reaches its limits, you can use damping toslow it down smoothly. Depending on the strength and range you set, a joint withdampening will not reach its limit boundary, unless forced.

The dampening factor for joints affects only the solution computed by an IK solver; itdoes not affect joints that are animated by other means.

Min DampRange Specifies the angles (relative to the minimum joint limit angles) at which resistance

begins to occur.

Max DampRange Specifies the angles (relative to the maximum joint limit angles) at which resistance

begins to occur.

Min DampStrength Specifies the amount of increasing resistance within the Min Damp Range. Values

can range from 0, which takes the joint all the way to its limit with no resistance, to100, which halts the joint at the outer edge of the damp range. A value of 50 wouldspecify a gradually increasing resistance as the joint rotates past the Min DampRange angle.

Max DampStrength Specifies the amount of increasing resistance within the Max Damp Range. Values

can range from 0, which takes the joint all the way to its limit with no resistance, to100, which halts the joint at the outer edge of the damp range. A value of 50 wouldspecify a gradually increasing resistance as the joint rotates past the Max DampRange angle.

Limit Information

Select the Translate, Rotate, or Scale sections.

Page 221: Maya Character Setup

BUILDING SKELETONS | 19Editing joints

SKELETONS CHARACTER SETUP

221

Translate

Trans Limit X Specifies translation limits on the joint’s local X-axis. Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Trans Limit Y Specifies translation limits on the joint’s local Y-axis.Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Trans Limit Z Specifies translation limits on the joint’s local Z-axis. Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Rotate

Rot Limit X Specifies rotation limits about the joint’s local X-axis.Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Rot Limit Y Specifies rotation limits about the joint’s local Y-axis.Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Rot Limit Z Specifies rotation limits about the joint’s local Z-axis. Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Scale

Scale Limit X Specifies scaling limits along the joint’s local X-axis.Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Scale Limit Y Specifies scaling limits along the joint’s local Y-axis. Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Scale Limit Z Specifies scaling limits along the joint’s local Z-axis.Use the < and > icon buttons togive the Min or Max limits the value in the Current field. Check on or off to activatethe Min or Max limit.

Display

Selections for the joint’s selection handle display attributes, including handledisplay, local axis display, selection handle position (relative to current Translate X,Y, and Z attribute values), default manipulator display selections, visibility, andtemplate. Bounding Box Information and Drawing Overrides not applicable.

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

Page 222: Maya Character Setup

CHARACTER SETUP PART 3

222

BUILDING SKELETONS | 19Editing joints

Displaying a joint’s local axis

To display a joint’s local rotation axis:

1 Select the joint.

2 Select Display > Component Display > Local Rotation Axes.

Orienting a joint’s local axis

To orient a local axis:

1 Select the joint.

2 Display the joint’s local axis (select Display > Component Display > Local RotationAxes).

3 To select a joint’s local axis, you need to be in components selection mode, with themiscellaneous selection mask for local rotation axes on:

• Select by component type (Default hotkey: F8.)

• Select by component type: Miscellaneous.

• Move the cursor over the Miscellaneous icon, and click the right mouse button. Besure that Local Rotation Axes is checked on.

4 Select the local axis.

5 Select the Rotate Tool (default hotkey: e).

Use the Rotate Tool to orient the local axis by hand.

To enter precise values, you can use a command such as the following:

rotate -r -os 180 0 0;

This command rotates the local axes 180 degrees about the X-axis.

Moving, rotating, or scaling a joint and its boneYou can move, rotate, or scale joints by selecting them and then using the MoveTool, Rotate Tool, or Scale Tool. You can also move, rotate, or scale by using theChannel Box or the Attribute Editor.

You can lengthen a joint’s bone by scaling it along local axis that points into thebone, or widen the bone by scaling it along the local axis that is perpendicular to thebone’s direction.

When you move a joint, you also move any joints below it in the skeleton’shierarchy. However, you can also move one joint only if you want to adjust a certainjoint’s location.

To move one joint only:

1 Select the joint you want to position.

2 Select the Move Tool (default shortcut: w key).

3 Press the Insert key.

The transform manipulator appears at the selected joint.

4 Move any joint in the skeleton by selecting and dragging it with the left mousebutton.

Page 223: Maya Character Setup

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

SKELETONS CHARACTER SETUP

223

EDITING JOINT CHAINS, LIMBS, AND SKELETONS

The following topics describe how to edit joint chains, limbs, and skeletons.

Many of the tasks for editing joint chains, limbs, and skeletons can have seriouseffects on IK handles and skinning. If you edit joints that have IK handles passingthrough them, or edit joints involved in skinning, you may have to redo the IKhandles or the skinning.

Viewing skeleton hierarchyYou can view a skeleton’s hierarchy in the Outliner or Hypergraph.

With the Hypergraph, you can arrange the display of joints in any way you like. Forexample, you might arrange the display so that the joint hierarchy looks like theactual structure of the skeleton.

Selecting joints and navigating the skeleton’s hierarchyYou can select any joint and then use the arrow keys to navigate through theskeleton’s hierarchy. The arrow keys provide a handy way to select joints when youare editing a skeleton. You can also use these keys when you are creating joints withthe Joint Tool.

When selecting a joint directly, you’ll find that it is often easier to select a joint byselecting its bone.

Whenever you select a joint, all the joints below it in the hierarchy are highlighted bydefault. They are highlighted because what you do to the selected joint can affect allthe joints below the selected joint. However, only the joint you selected is currentlyselected. To select all of the joints below the selected joint as well, use the followingMEL command:

select -hi;

Because this is a command you will use frequently, you might want to create ahotkey or custom shelf button for it.

Displaying all the local axes in a limb or skeleton

To display all local axes:

1 Select a joint (a limb’s parent joint, or a skeleton’s root joint).

2 To select all the joints in the hierarchy below the selected joint, enter the followingMEL command:

select -hi;

3 Select Display > Component Display > Local Rotation Axes.

All the local axes are displayed.

Reorienting all local axes in limb or skeletonWhen you change the positions of joints (for instance, by using the Move Tool), theorientation of their local rotation axes are not affected. Because the local rotation axesare not affected, the axes may no longer be aligned with the bones when you changethe positions of joints.

Page 224: Maya Character Setup

CHARACTER SETUP PART 3

224

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

For instance, with the Joint Tool’s Auto Joint Orient tool setting set to xyz (thedefault), the X-axis of each joint’s local rotation axis will point into each joint’s bone.But if you then move (translate) a joint, the local rotation X-axis will no longer pointinto the bone. Consequently, after moving the joint, you need to reorient the localrotation axis so that the local rotation X-axis once again points into the bone.

The fastest way to reorient joints is to go ahead and move the joints you want tomove within some hierarchy (for example, a hand), and then reorient all the joints inthat hierarchy using a MEL command.

To reorient all local axes back to default auto orientation:

1 Select a joint (a limb’s parent joint, or a skeleton’s root joint).

2 To select all the joints in the hierarchy below the selected joint, enter a MELcommand such as the following:

joint -e -oj xyz -zso -ch;

All the local axes are reoriented according to the default setting for the Auto JointOrient tool setting. (For more information on the Auto Joint Orient tool setting, see"Specifying Joint Tool’s tool settings" on page 216.)

In the command, the -oj flag stands for orient joints, xyz specifies the orientation,and -zso specifies that the local scale axes also be reoriented. The -ch flag specifiesthat the command act on the selected joint and on all the joints below it (all the childjoints) in the skeleton’s hierarchy. If you only want to reorient the selected joint,don’t include the -ch flag. Because this is a command you will use frequently, youmight want to create a hotkey or custom shelf button for it.

Inserting a jointYou can insert a joint into any joint chain. To insert joints, use the Insert Joint Tool(Skeleton > Insert Joint Tool). In general, inserting joints should be done before youadd IK handles or do skinning. Inserting joints into joint chains with IK handlesmight also require you to redo the IK handles. Also, inserting joints after skinningcan led to undesirable deformation effects.

To insert a joint:

1 Select Skeleton > Insert Joint Tool.

(Unlike the Joint Tool, the Insert Joint Tool has no tool settings.)

2 Move the cursor to the joint that you want to be the parent of the new joint.

3 While pressing the left mouse button, drag to where you want the new joint.

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

Removing a jointWith the exception of the root joint, you can remove any joint so that the parentjoint’s bone extends to the joint’s child joint. Note that you should not remove anyskinned joints.

To remove a joint:

1 Select the joint you want to remove.

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

Page 225: Maya Character Setup

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

SKELETONS CHARACTER SETUP

225

2 Select Skeleton > Remove Joint.

The joint is removed. The bone of the joint above the removed joint is extended tothe joint below the removed joint.

Disconnecting joints to create new skeletonsYou can break up a skeleton into two skeletons by disconnecting any joint other thanthe root joint. The disconnected joint will become the root joint of a new skeleton.Note that if you disconnect a joint in a joint chain that has an IK handle, the IKhandle will be deleted.

To disconnect:

1 Select the joint you want to disconnect. This joint will become the root joint of thenew skeleton.

2 Select Skeleton > Disconnect Joint.

The joint is disconnected, and is the root joint of a new skeleton.

Connecting joints to combine two skeletonsYou can connect skeletons by combining joints or by connecting joints with a bone.

You can connect two skeletons by combining the root joint of one skeleton with anyjoint of another skeleton except that skeleton’s root joint. The skeleton that becomes alimb of the other skeleton will change its position in the scene so that it is directlyconnected to the other skeleton’s joint.

Alternatively, 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 other skeleton.The skeleton that becomes a limb of the other skeleton will not have to move.

Both of these approaches involve selecting Skeleton > Connect Joint ❒.

To connect skeletons by combining joints:

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 Skeleton > Connect Joint ❒.

The Connect Joint Options window is displayed.

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

5 In the Connect Joint Options window, click Connect. (Alternatively, select Skeleton >Connect Joint.)

Maya connects the skeletons.

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 Skeleton > Connect Joint ❒.

Page 226: Maya Character Setup

CHARACTER SETUP PART 3

226

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

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 between theselected root joint and the joint you’re connecting it to. The two skeletons do notmove.

5 In the Connect Joint Options window, click Connect. (Alternatively, select Skeleton >Connect Joint.)

Maya connects the skeletons with a bone.

Note that connecting skeletons using Parent Joint mode is identical to the result youget by selecting Edit > Parent.

Mirroring limbs or skeletonsA group of one or more connected joint chains is called a limb. You can duplicate ormake mirror copies of limbs. A mirror copy is a copy that is symmetrical about aselected plane; in effect, the reflection of the original in the plane is turned into a realcopy of the original, but with all the aspects of the limb mirrored accordingly. Theorigin of the plane is at the parent joint of the limb. Joint attributes and IK handlesare mirrored as well as the joints and their bones.

Mirroring is useful when you are creating the limbs for a character. For example, youcan build a right arm and hand, and then create a mirrored copy of it for the left armand hand. Mirroring affects all aspects of the creation of the left arm, including thejoint limits. You don’t have to reset the joint limits so that the left arm’s joint limitswill be symmetrical to the 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 the same asfor creating mirror copies of limbs, except that the skeleton will be mirrored aboutthe scene’s world origin.

To mirror a limb or skeleton:

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

2 To choose the plane for mirroring, first select Skeleton > Mirror Joint ❐ to open theMirror Joint Options window.

3 Click the desired Mirror Across option to choose the plane in which you want thejoint chain mirrored.

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

4 Set the desired Mirror Function:

If you choose Behavior, the new joints have the opposite orientation of the original.The local rotation axis of each joint points in the opposite direction of its counterpart.

This setting is handy for animating opposing movements in a pair of counterpartlimbs. For instance, if you select a pair of ankles and use the Rotate tool on both atthe same time, you can rotate the feet point symmetrically inward or outward with asingle manipulation.

Page 227: Maya Character Setup

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

SKELETONS CHARACTER SETUP

227

If you choose Orientation, the new joints to have the same orientation of the original.With this setting, you can copy animation from one limb to another and get identicalbehavior. For instance, if you want to animate a skier racing down a slope with legsturning in the same direction, use this setting.

5 Click Mirror in the Mirror Joint Options window, or select Skeleton > Mirror Joint.

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

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

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

Note that any IK handles that pass through the joint selected to be the new root jointwill be deleted. Also, any animation of the skeleton’s root joint will be affected whenyou reroot.

To reroot:

1 Click the joint where you want the new root.

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

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

2 Select Skeleton > Reroot Skeleton.

Setting display size of all jointsYou can resize the display of a skeleton’s joints. Increasing the display size can makethe joints and their bones easier to pick. Decreasing the display size can make otherobjects such as flexors easier to pick.

To resize joint display:

1 Select Display > Joint Size.

2 Select from the percentages listed to resize the joints by 25%, 50%, 75%, or 100%.Alternatively, select Custom to select some other percentage with the slider in theJoint Display Scale window.

The percentages are relative to the default setting is always 100% or 1.00.

Displaying joints as boxes rather than bonesYou can display a joint that has multiple child joints as a box rather than asinterconnected bones.

Page 228: Maya Character Setup

CHARACTER SETUP PART 3

228

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

Some users find that boxes give a better representation of the relationship betweenjoints in a multiple child-joint hierarchy. For example, in the skeletons in the priorfigure, you can rotate hip joints to rotate the legs, but you cannot rotate the root ofthe spine to swivel the legs. The box makes this more self-evident that the bones.

Note that in human characters, multiple child-joint hierarchies typically occur at theupper back, root, and possibly lower neck.

To display boxes:

1 Select the joint.

2 Display the Attribute Editor.

3 For the Draw Style, select Box.

Setting and assuming preferred anglesSetting the preferred angles can assure smoother motion during IK posing andanimation.

In a skeleton, each joint’s preferred angle indicates the preferred initial rotation ofthe joint during inverse kinematics (IK) posing. When you build a skeleton, youshould create the joints so that they are somewhat rotated into the angles you wouldwant them to move into during IK posing. For example, when creating a leg, youshould not create the joints so that they are all in a straight line. Rather, there shouldbe a slight bend at the knee joint. This bend will be the joint’s preferred angle for IKposing.

When you’re done building a skeleton and are ready to add IK handles, set thepreferred angles for the skeleton. Even after you’ve rotated some joints, you can seewhat the preferred angles are by telling the skeleton to assume its preferred angles.

To set a skeleton’s preferred angles:

1 Select the skeleton’s root joint.

2 Select Skeleton > Set Preferred Angle.

Boxes

Bones

Hip jointRoot of

Hip joint

spineRoot ofspine

Page 229: Maya Character Setup

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

SKELETONS CHARACTER SETUP

229

To have a skeleton assume its preferred angles:

1 Select the skeleton’s root joint.

2 Select Skeleton > Assume Preferred Angle.

To set a joint’s preferred angle:

1 Move the cursor over the joint, and press the right mouse button.

2 From the pop-up menu, select Set Preferred Angle.

To have a joint assume its preferred angle:

1 Move the cursor over the joint, and press the right mouse button.

2 From the pop-up menu, select Assume Preferred Angle.

Page 230: Maya Character Setup

CHARACTER SETUP PART 3

230

BUILDING SKELETONS | 19Editing joint chains, limbs, and skeletons

Page 231: Maya Character Setup

SKELETONS CHARACTER SETUP

231

20 POSING SKELETONS

Posing skeletons involves the use of either forward or inverse kinematics techniques.

Page 232: Maya Character Setup

CHARACTER SETUP PART 3

232

POSING SKELETONS | 20Understanding skeleton posing

UNDERSTANDING SKELETON POSING

When you pose and animate a skeleton, you are specifying the skeleton’s motion.The term for the specification of motion is kinematics. Posing and animatingskeletons involves two types of kinematics: forward kinematics (FK) and inversekinematics (IK). Although the terms sound complicated, what they refer to is easy tounderstand. Forward kinematics is ideal for creating detailed arc motions because itrequires the direct specification of each joint rotation. Inverse kinematics is ideal forcreating goal-directed motion because it only requires the specification of a positionand orientation that the joints in a joint chain will rotate to reach.

Forward kinematics (FK)

In forward kinematics (FK), when you pose a joint chain you rotate each jointindividually. For example, if you want a joint chain to reach for a particular locationin space, you have to rotate each joint individually so that the joint chain can reachthe location. To do this, you would rotate the joint chain’s parent joint, then the nextjoint, and so on down the joint chain. When you animate a skeleton posed withforward kinematics, Maya interpolates the joint rotations starting with the root joint,then the root’s child joints, and so on down through the skeleton’s action hierarchy.Maya proceeds “forward” through the action hierarchy, starting at the root joint.

Page 233: Maya Character Setup

POSING SKELETONS | 20Understanding skeleton posing

SKELETONS CHARACTER SETUP

233

Posing and animating skeletons with forward kinematics is an excellent approach forspecifying detailed arc motions, but it can take a fair amount of time if you areanimating a large, complicated skeleton. Also, forward kinematics is often not veryintuitive for specifying goal-directed motion. When you think about moving yourhand to some location in space, you don’t normally think about how you are goingto rotate all the joints in your arm.

For more information on forward kinematics (FK) posing, see "Posing with forwardkinematics (FK)" on page 236.

Inverse kinematics (IK)

In inverse kinematics (IK), you can pose a joint chain based on a location in spaceyou want the joint chain to reach. Inverse kinematics is more intuitive for goal-directed motion than forward kinematics because you can focus on the goal youwant a joint chain to reach without worrying about how each joint will have torotate. However, unlike forward kinematics, inverse kinematics requires that youuse special tools for posing and animating. These tools are called IK handles and IKsolvers.

An IK handle is like a wire that can run through a joint chain, providing a way foryou to pose the entire joint chain in one action. As you pose and animate the jointchain with the IK handle, the IK handle automatically figures out how to rotate allthe joints in the joint chain by using its IK solver.

The IK solver is the motor intelligence behind the IK handle. For example, if youwant a joint chain to reach a particular location in space, you can move the entirechain by using the IK handle that runs through the chain. Given where you want thejoint chain to reach, the IK solver figures out how to rotate all the joints in the jointchain for you by means of Maya’s inverse kinematics methods.

For more information on inverse kinematics (IK) posing, see "Posing with inversekinematics (IK)" on page 236.

Page 234: Maya Character Setup

CHARACTER SETUP PART 3

234

POSING SKELETONS | 20Understanding skeleton posing

IK handles and IK chains

An IK handle runs through a selected joint chain like a wire, providing you with away to move the entire joint chain. The joint the IK handle starts at is called the startjoint. The last joint in the joint chain controlled by the IK handle is called the endjoint.

The start joint could be the skeleton’s root joint, or any joint in the skeleton’s actionhierarchy above the end joint. The IK handle can pose all the joints in the chain, fromthe start joint to the end joint. A joint chain that has an IK handle is called an IKchain. IK chains are easy to use. However, some background on how they work canhelp you get the most out of posing and animating with inverse kinematics.

Page 235: Maya Character Setup

POSING SKELETONS | 20Understanding skeleton posing

SKELETONS CHARACTER SETUP

235

The end of the IK handle, which is located at the end joint by default, is called theend effector. The reason the end of the IK handle is called the “end effector” isbecause it helps to bring about how the IK handle rotates the joints in the joint chainso that the end of the chain can reach some location in space. By telling the IKhandle’s IK solver where the end of the IK handle is, the end effector providesinformation the IK solver needs to figure out how to rotate all the joints for you.

When you are posing and animating an IK chain, you also need to tell the IK solverthe position and orientation in space where you would like the end effector to moveto next. That information is provided by the IK handle’s goal. When youinteractively pose an IK chain, what you are really doing is moving the IK handle’sgoal. The IK solver looks at where the goal is, looks at where the end effector is, andfigures out how to rotate all the joints in the IK chain to get the end effector to bewhere the goal is.

A skeleton can have as many IK handles as you think you need for posing andanimating its joint chains. However, be sure you are happy with which joint is theskeleton’s root joint before you begin creating IK handles. The skeleton’s root mustnot be between an IK chain’s start joint and end joint. You cannot create an IK chainthat includes the root joint unless that joint is the start joint. Also, if you changewhich joint is the root joint, you will invalidate IK chains that include the new rootjoint unless the joint is the start joint of an IK chain.

IK solvers and systemsIK solvers provide the motor intelligence of IK handles. IK solvers figure out how torotate all the joints in a joint chain controlled by an IK handle. Maya’s interface offersthree types of solvers:

• IK Rotate plane (RP) solver

• IK Single chain (SC) solver

• Spline IK solver

Additionally, two other IK solvers, the IK multi-chain (MC) solver and the IK PowerAnimator (PA) solver are available only through MEL commands. The rotate plane,single-chain, and IK spline solvers are the best choices for IK solvers.

Maya’s default IK solvers are organized by an IK system that controls how Mayaevaluates the solvers. For more information on using IK solvers and systems, see"Using IK solvers and systems" on page 237.

Related MEL commandsMEL commands related to posing with IK handles include the following:

• ikHandle

• ikHandleCtx

• ikHandleDisplayScale

• ikSolver

• ikSplineHandleCtx

• ikSplineManipCtx

• ikSystem

• ikSystemInfo

• createNode

Page 236: Maya Character Setup

CHARACTER SETUP PART 3

236

POSING SKELETONS | 20Posing with forward kinematics (FK)

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for inverse kinematics posing can include thefollowing:

• IK handle node (default name: ikHandlen).

• IK solver node (default name: ikSolvern).

• IK rotate plane solver node (default name: ikRPSolver).

• IK single chain solver node (default name: ikSCsolver).

• IK multi-chain solver node (default name: ikMCsolver).

• IK Power Animator solver node (default name: ikPAsolver).

• IK two bone solver node (default name: ik2Bsolver).

• IK system node (default name: ikSystem).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

POSING WITH FORWARD KINEMATICS (FK)Posing with forward kinematics involves moving and rotating joints directly withoutusing any IK handles. You can move and rotate joints by selecting them and thenusing the Move Tool or Rotate Tool. You can also scale the selected joints and theirbones with the Scale Tool. Note that moving a joint will affect that joint and anyjoints below it in the skeleton’s hierarchy. However, you can move only the selectedjoint while keeping the joints below it in place. For more information, see "Moving,rotating, or scaling a joint and its bone" on page 222.

POSING WITH INVERSE KINEMATICS (IK)Posing with inverse kinematics involves using IK handles to pose joint chains. Theeffect of the IK handle on the joint chain depends on the type of IK solver the IKhandle is using.

Maya provides three types of IK handles: the IK rotate plane handle, the IK singlechain handle, and the IK spline handle. Each type of IK handle uses a different typeof IK solver. An IK rotate plane handle uses an IK rotate plane solver, an IK single-chain handle uses an IK single chain solver, and an IK spline handle uses an IKspline solver.

Additionally, dependency graph nodes are available for two other types of IKsolvers: the IK multi-chain solver (the ikMCsolver node), and the IK PowerAnimator solver (the ikPAsolver node).

IK rotate plane handles and solversFor more information on using IK rotate plane handles and solvers, see Chapter 21,“Using IK Rotate Plane Handles.”

Page 237: Maya Character Setup

POSING SKELETONS | 20Using IK solvers and systems

SKELETONS CHARACTER SETUP

237

IK single chain handles and solversFor more information on using IK single chain handles and solvers, see Chapter 22,“Using IK Single Chain Handles.”

IK spline handles and solversFor more information on using IK spline handles and solvers, see Chapter 23, “UsingIK Spline Handles.”

USING IK SOLVERS AND SYSTEMS

Using IK solvers and systems includes the following:

• "Creating IK solvers" on page 237

• "Editing IK system attributes" on page 238

• "Disabling and enabling all IK solver nodes" on page 239

Creating IK solversWhen you create joints and IK handles, you use the Joint Tool and the IK HandleTool. By default, the Joint Tool and the IK Handle Tool offer two IK solvers: an IKrotate plane solver (the ikRPsolver node), and an IK single chain solver (theikSCsolver node).

By default, each IK rotate plane handle you create uses the same IK rotate planesolver (default name: ikRPsolver). Similarly, each IK single chain handle you createuses the same IK single chain solver (default name: ikSCsolver). Consequently, if youedit the attributes of the default ikRPsolver, all the IK rotate plane handles areaffected by the editing. You might want to create different IK solvers for different IKhandles so that you can fine-tune the IK solvers for certain IK handles only while notaffecting other IK handles. Further, you might want to activate an IK solver type thatis not available from the interface by default. For example, you might want to use theIK multi-chain (MC) solver. You can create these additional IK solvers with thecreateNode MEL command.

To create additional IK rotate plane solvers:

Enter the following MEL command:

createNode ikRPsolver;

A new IK rotate plane solver node is created with the default name ikRPsolvern.This solver is available from the Joint Tool, the IK Handle Tool, and the AttributeEditor for any IK handle, in the IK Solver Attribute section.

To create additional IK single chain solvers:

Enter the following MEL command:

createNode ikSCsolver;

A new IK single chain solver node is created with the default name ikSCsolvern.This solver is available from the Joint Tool, the IK Handle Tool, and the AttributeEditor for any IK handle, in the IK Solver Attribute section.

Page 238: Maya Character Setup

CHARACTER SETUP PART 3

238

POSING SKELETONS | 20Using IK solvers and systems

To create IK multi-chain (MC) solvers:

By default, IK multi-chain (MC) solvers are not available from the interface (forexample, from the IK Handle Tool). To access an IK multi-chain solver, you firstmust enter the following MEL command:

createNode ikMCsolver;

A new IK multi-chain solver node is created with the default name ikMCsolvern.The solver is available from the Joint Tool, the IK Handle Tool, and the AttributeEditor for any IK handle, in the IK Solver Attribute section.

For more information about using the IK multi-chain solver, refer to the descriptionof the ikMCsolver node in the online Node and Attribute Reference documentation.Note that an IK handle’s Priority and Weight attributes apply only to the IK multi-chain solver. The IK multi-chain solver is useful for imparting motion capture datato a skeleton, but in general is not appropriate for most animation situations. Theresults of the IK multi-chain solver can be difficult to predict and control. However,an example of where using the IK multi-chain solver would be appropriate is inanimating the tentacles of an octopus, where many limbs are undergoing complexmotions.

Editing IK system attributesMaya’s default IK system organizes Maya’s default IK solvers. The IK systemcontrols whether all the IK handles using IK solvers in the system snap to their endeffectors, whether the IK solvers are active, and the order in which Maya evaluatesthe solvers.

To edit attributes with the Attribute Editor:

1 Select the IK system node (default name: ikSystem).

The IK system node organizes all the IK solvers available for IK handles. The IKsystem node is downstream of the available IK solver nodes.

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: ikSystem, Node Behavior, andExtra Attributes.

ikSystem

The ikSystem window lists the IK solvers in the IK system. By default, the availableIK solvers are the ikRPsolver (for IK rotate plane handles), the ikSCsolver (for IKsingle chain handles), and the ikSplineSolver (for IK spline handles). The order inwhich the IK solvers are listed informs you of the order in which Maya evaluates thesolvers.

Global Snap Specifies whether all the IK handles using any of the IK system’s solvers will snapback to their end effectors. Turning Global Snap off has the effect turning off each IKhandle’s Snap Enable attribute. Click on or off. Default is on.

Global Solver Specifies whether all the IK handles using any of the IK system’s solvers are active. Ifoff, you can only use forward kinematics (FK) posing to pose the joint chainscontrolled by the IK handles. Click on or off. Default is on.

Page 239: Maya Character Setup

POSING SKELETONS | 20Switching between IK and FK

SKELETONS CHARACTER SETUP

239

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

Disabling and enabling all IK solver nodesYou can quickly disable or enable all the IK solvers.

To disable all IK solvers:

Turn off Modify > Enable Nodes > IK Solvers.

To enable all IK solvers:

Turn on Modify > Enable Nodes > IK Solvers.

SWITCHING BETWEEN IK AND FKIK is the easiest way to position the end of a joint chain on a particular object orpoint in space. FK is the easiest way to animate joint chains with detailed arcmotions.

In any joint chain that has an IK handle, you can switch conveniently between IKand FK (or vice versa) with a smooth transition between the motions. The followingmenu items and options make this possible:

Animate > IK/FK Switching Keys > Enable IK Solver

This menu item controls whether an IK handle’s Solver Enable attribute is on or off.By default, an IK handle’s Solver Enable attribute is on, which means you can usethe handle to manipulate the joint chain. If you turn off the Solver Enable attribute,you can manipulate the joint chain by rotating the joints directly. You can use IKagain by turning on the Solver Enable attribute.

To conveniently display whether a selected IK handle’s Solver Enable attribute is onor off, turn on Display > Heads Up Display > Animation Details.

Animate > IK/FK Switching Keys > Set IK/FK Key

You must use this menu item rather than Animate > Set Key when you want to keyIK animation followed by FK animation (or vice versa) on the same joint chain.When you use Set IK/FK Key while an IK handle or its joint chain is selected, Mayakeys all attributes of the handle and all joints in the chain. Maya does additionaloperations to ensure the transition between IK and FK works correctly.

Animate > IK/FK Switching Keys > Connect to IK/FK

You can use geometry, a group node, or some other node to manipulate an IKhandle rather than the IK handle itself. For example, you can point-constrain a coneto an IK handle with the objective of using the cone as an easily selectable object formanipulating the IK handle.

To do this, select the cone and then the handle, and then select Animate > IK/FKSwitching Keys > Connect to IK/FK.

Page 240: Maya Character Setup

CHARACTER SETUP PART 3

240

POSING SKELETONS | 20Switching between IK and FK

Thereafter, you can select and manipulate the cone and then use Animate > IK/FKSwitching Keys > Set IK/FK Key. There is no need to select the handle.

Note that if you turn on Display > Heads Up Display > Animation Details while thecone is selected, the Enable State of the handle is displayed in the scene view just asif the handle were selected.

Animate Key > Set Key ❒

If you turn on Set IK/FK Keys in the options window for Animate Key > Set Key ❒,you can subsequently use Animate Key > Set Key as an alternative to Animate > IK/FK Switching Keys > Set IK/FK Key.

Note that if you use Animate Key > Set Key for an object that’s not an IK handle, ajoint controlled by an IK handle, or an object connected to an IK handle, the Set IK/FK Keys option is ignored.

Procedures for switching between IK and FKSeveral common ways to switch between FK and IK follow:

To use IK followed by FK:

1 Animate the IK animation sequence using Animate > IK/FK Switching Keys > SetIK/FK Key.

2 At the right-most frame in the Time Slider where you used Set IK/FK Key, select theIK handle and turn off Animate > IK/FK Switching Keys > Enable IK Solver.

3 Select Set IK/FK Key again.

4 Continue using Set IK/FK Key for the remaining frames of the FK animation, asdesired.

To use FK followed by IK:

1 At the first frame where you want to use FK, select the IK handle and turn offAnimate > IK/FK Switching Keys > Enable IK Solver.

2 Select Animate > IK/FK Switching Keys > Set IK/FK Key.

3 Rotate the joints and use Set IK/FK Key as desired for the remaining frames of theFK animation.

4 At the right-most frame in the Time Slider where you used Set IK/FK Key, select theIK handle and turn on Animate > IK/FK Switching Keys > Enable IK Solver.

5 Select Animate > IK/FK Switching Keys > Set IK/FK Key.

6 Manipulate the IK handle and continue using Set IK/FK Key as desired for theremaining frames of the IK animation.

See "Example of switching from FK to IK" on page 242 for a detailed example.

To insert IK within FK animation (whether or not the FK is controlled by Set IK/FK Key):

1 At the beginning frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

Page 241: Maya Character Setup

POSING SKELETONS | 20Switching between IK and FK

SKELETONS CHARACTER SETUP

241

2 At the ending frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

We refer to the keys you set in the prior two steps as bounding keys, because theyensure that any keys you set between them will not spoil animation outside theirrange.

3 Turn on Animate > IK/FK Switching Keys > Enable IK Solver.

4 Manipulate the IK handle and use Set IK/FK Key as desired for the frames betweenthe bounding keys.

To insert FK within IK animation controlled by Set IK/FK Key:

1 At the beginning frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

2 At the ending frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

We refer to the keys you set in the prior two steps as bounding keys. They ensure thatany keys you set between them will not inadvertently spoil animation outside oftheir range.

3 Turn off Animate > IK/FK Switching Keys > Enable IK Solver.

4 Rotate the desired joints and use Set IK/FK Key as necessary for the frames betweenthe bounding keys.

To insert FK within IK animation not controlled by Set IK/FK Key:

1 At the first frame of the animation, select the IK handle, turn on Solver Enable, andset a key for Solver Enable.

2 At the ending frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

3 At the beginning frame of the time range where you want to insert IK, select the IKhandle and set a key by selecting Animate > IK/FK Switching Keys > Set IK/FKKey.

We refer to the keys you set in the prior two steps as bounding keys. They ensure thatany keys you set between them will not inadvertently spoil animation outside oftheir range.

4 Turn off Animate > IK/FK Switching Keys > Enable IK Solver.

5 Rotate the desired joints and use Set IK/FK Key as necessary for the frames betweenthe bounding keys.

To eliminate unexpected joint flipping after enabling the IK Solver:

After FK animation, a joint chain might flip to an undesired position when you turnon Animate > IK/FK Switching Keys > Enable IK Solver. (You turn on Enable IKSolver when you want to start using IK.) To undo the joint flipping and prevent itfrom occurring when you turn on Enable IK Solver, do these steps:

Page 242: Maya Character Setup

CHARACTER SETUP PART 3

242

POSING SKELETONS | 20Switching between IK and FK

1 Undo the Enable IK Solver menu item to return the joint chain to the position it hadbefore flipping.

2 Select the IK handle and then Skeleton > Set Preferred Angle.

3 Select Animate > IK/FK Switching Keys > Enable IK Solver.

4 Select Animate > IK/FK Switching Keys > Set IK/FK Key.

5 Continue using IK as desired.

About the Graph Editor display resulting from Set IK/FK KeyWhen you switch between IK and FK (and vice versa), the Graph Editor displays theanimation curves of an IK handle and its joints partly as solid lines and partly asdotted lines.

When you display an animation curve for Translate X, Y, or Z of an IK handle, thecurve is displayed as a solid line when IK Solver Enable is on. The curve is a dottedline when Solver Enable is off. In other words, the solid line show where the IKhandle controls the joint chains animation. The dotted line shows where FK (keyedjoint rotations) controls the animation.

The reverse is true for a selected joint in the handle’s joint chain. When you displayan animation curve for Rotate X, Y, or Z of a joint, the curve is displayed as a solidline when IK Solver Enable is off. The curve is a dotted line when Solver Enable ison. In other words, the solid line shows where FK controls the animation. The dottedline show where IK has control.

Example of switching from FK to IKSuppose you want to animate a character’s arm motion while bowling. Yourobjective is to have the arm move from the wind-up position to the ball-releaseposition, and then have the wrist move to the character’s mouth, as if he is anxiousto score a strike.

The arc of the arm from the wind-up position to the ball release position is easiest tocreate with FK. The follow-through motion of touching the mouth is easiest to createwith IK.

Solver Enable Solver Enableis on is off

Page 243: Maya Character Setup

POSING SKELETONS | 20Switching between IK and FK

SKELETONS CHARACTER SETUP

243

The following example shows how to do this. The example assumes you have askeleton with an IK handle from shoulder to wrist of the right arm.

To create an arm’s bowling motion:

1 Select the arm’s IK handle or any joint controlled by the handle.

2 Turn off Animate > IK/FK Switching Keys > Enable IK Solver. With this setting, youcan directly rotate any joint controlled by the handle.

3 At frame 1, rotate the shoulder and elbow joints to put the arm in the wind-upposition.

4 Make sure either the elbow or shoulder joint is selected, and then selectAnimate > IK/FK Switching Keys > Set IK/FK Key. Maya keys all joints controlledby the handle regardless of which joint of the handle is selected.

5 At frame 40, rotate the shoulder and elbow joints to put the arm in the ball-releaseposition.

6 Select Animate > IK/FK Switching Keys > Set IK/FK Key.

7 Turn on Animate > IK/FK Switching Keys > Enable IK Solver.

8 At frame 60, drag the IK handle so that the wrist touches the mouth.

9 Select Animate > IK/FK Switching Keys > Set IK/FK Key.

Note that you could have used the IK handle to move the arm to the wind-upposition. If you use an IK handle for the initial pose of a joint chain, you must turnoff Enable IK Solver if you thereafter want to rotate individual joints (FK) previouslycontrolled by the handle.

Wind-up position Ball-release position Wrist-on-mouth position

Page 244: Maya Character Setup

CHARACTER SETUP PART 3

244

POSING SKELETONS | 20Switching between IK and FK

Page 245: Maya Character Setup

SKELETONS CHARACTER SETUP

245

21 USING IK ROTATE PLANEHANDLES

IK rotate plane handles provide a way to pose joint chains. IK rotate plane handlesdirect the joint rotations of all the joints in the chain, but enable you to control theoverall rotation of a joint chain directly.

Page 246: Maya Character Setup

CHARACTER SETUP PART 3

246

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

UNDERSTANDING IK ROTATE PLANE HANDLES

The IK rotate plane handle is ideal for posing joint chains (such as arms and legs)that you would like to stay in more or less the same plane, even though that planecan rotate. For example, the shoulder, elbow, and wrist joints of an arm all staywithin the same plane, but that plane rotates as the shoulder joint rotates.

The rest of this section describes various features of an IK rotate plane handle. Youneed not understand all of these features to use IK rotate plane handles effectively;however, to get the most out of using IK rotate plane handles, you should eventuallybecome familiar with all these features.

Start and end joints

The start joint is where the IK handle begins. The start joint is the first joint in thejoint chain that is influenced by the IK handle.The start joint could be the skeleton’sroot joint, or any other joint in the skeleton’s action hierarchy above the end joint.

The start joint must be a ball joint. It must be free to rotate completely about all threeof its local axes.

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

Start joint

End joint

Page 247: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

SKELETONS CHARACTER SETUP

247

Handle position control gnomon

You control the IK rotate plane handle’s position by selecting the IK handle’sgnomon and moving it. The joint chain moves as you move the IK handle. (Note thatthe term “gnomon” refers to Maya’s axial icons; for example, a locator is also agnomon).

Note that with the IK single chain handle, you can move and rotate the IK handle’sgnomon. This is because the IK single chain solver can consider both position andorientation, but the IK rotate plane solver only considers position. The differencebetween an IK single chain handle and an IK rotate plane handle is that the IK rotateplane handle give you direct control over orientation rather than having theorientation calculated by the IK solver. You can exercise direct control bymanipulating the twist disc (see"Twist disc" on page 250) or by moving the polevector (see "Pole vector" on page 251).

When you move the IK rotate plane handle’s position, you indicate where you wantthe IK handle’s end effector to be.

End effector

By default, the end effector is not displayed, but it is located at the end joint’s localaxis. However, if you like, you can offset the end effector’s position from the endjoint. The end effector does not move from its location at the end joint (or at someoffset from the end joint) during posing and animating. The end effector is parentedto the parent joint of the end joint, influencing all the joints in the joint chain. Toview the hierarchical relationships between the end effector and the joints, you canview the scene hierarchy with the Hypergraph.

For an IK rotate plane handle, the goal of the end effector is to reach the IK handle’sposition. As you move the IK rotate plane handle’s position, the IK rotate planesolver calculates how to rotate all the joints in the joint chain so that the end effectorcan reach the IK handle’s position.

You can control the IK rotateplane handle’s position bymoving the handle’s gnomon

End effector located bydefault at the end joint’slocal rotation axis

Page 248: Maya Character Setup

CHARACTER SETUP PART 3

248

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

The end effector tries to keep up with the IK handle’s position at all times. However,depending on the rotational limits and fully extended length of the joint chain, theend effector might not be able to reach IK handle.

Handle wire

The handle wire is the line that runs through all the joints and bones in a joint chaincontrolled by the IK handle. The handle wire begins at the start joint’s local axis andends at the end effector, which is by default at the end joint’s local axis.

Handle vector

The handle vector is the line drawn from the start joint to the IK handle’s endeffector. The end effector is normally located at the IK chain’s end joint.

Handle wire runsthrough all the joints inthe joint chain controlledby the IK handle

Handle vector runsdirectly from start joint toend effector, which is atthe end joint by default.

Page 249: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

SKELETONS CHARACTER SETUP

249

Rotation disc

The rotation disc is located at the start joint. The rotation disc indicates how the jointchain can rotate.

The rotation disc includes the joint chain plane indicator (see "Joint chain planeindicator" on page 250), the reference plane indicator (see "Reference planeindicator" on page 252), and the twist indicator (see "Twist indicator" on page 252).

Joint chain plane

The joint chain plane is the plane that would best contain all the joints in the jointchain. By always containing the joints in the joint chain, the joint chain plane controlshow the joint chain can twist. The joint chain plane can rotate about the handlevector. Rotating the joint chain plane about the handle vector has the effect oftwisting the joint chain.

The joint chain plane is not displayed, but you can infer it from where the jointchain’s joints are located. The joint chain plane’s orientation is indicated by the jointchain plane indicator displayed in the rotation disc.

Rotation disc

Joint chain plane is theplane in which all thejoints approximately lie

Page 250: Maya Character Setup

CHARACTER SETUP PART 3

250

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

Joint chain plane indicator

The plane indicator can be thought of as the shadow of the joint chain plane in therotation disc. The plane indicator indicates the orientation of the joint chain planerelative to the reference plane.

Twist disc

The twist disc is located at the end joint. The twist disc is a manipulator for twistingthe joint chain by rotating the joint chain plane.

Joint chain plane indicatorindicates the orientation of thejoint chain plane

Use the twist disc tochange the jointchain’s orientation

Page 251: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

SKELETONS CHARACTER SETUP

251

Reference plane

For the joint chain plane to rotate and twist the joint chain, the plane must rotaterelative to some other plane so that the degree of twist can be measured. The planethat the joint chain plane rotates relative to is the reference plane. The differencebetween the two planes indicates the amount the joint chain twists. The referenceplane is defined by the handle vector and the pole vector.

Pole vector

The pole vector starts at the start joint, and with the handle vector defines thereference plane.

Because moving the pole vector changes the orientation of the reference plane,moving the pole vector can also change the orientation of the joint chain directly, justas manipulating the twist disc can change the orientation of the joint chain. This isbecause the joint chain’s degree of orientation, or twist, is defined as the difference inorientation between the reference plane and the joint chain plane.

During posing, if the handle vector and the pole vector happen to cross each other orpoint in exactly opposite directions, the joint chain can suddenly flip. The joint chaincan suddenly flip because when the vectors cross or point in opposite directions, theorientation of the reference plane relative to the joint chain plane suddenly changesby 180 degrees. You can prevent the flipping by moving the pole vector so that thehandle vector will not cross it or point in the opposite direction of it.

Reference plane

Pole vector

Page 252: Maya Character Setup

CHARACTER SETUP PART 3

252

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane handles

Reference plane indicator

The reference plane indicator is the green dot located on the twist disc. The referenceplane indicator indicates the orientation of the reference plane. You can think of theplane indicator as indicating the shadow of the reference plane in the rotation disc.

Twist indicator

On the rotation disc, the green arc between the reference plane indicator and thejoint chain plane indicator is the twist indicator. The twist indicator shows theorientation of the joint chain plane relative to the reference plane.

Related MEL commandsMEL commands related to IK rotate plane handles include the following:

• ikHandle

• ikHandleCtx

• ikHandleDisplayScale

• ikSolver

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for posing with IK rotate plane handles can includethe following:

• IK handle node (default name: ikHandlen).

• IK rotate plane solver node (default name: ikRPsolver).

Reference planeindicator

Twist indicator

Page 253: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Understanding IK rotate plane solver behavior

SKELETONS CHARACTER SETUP

253

For more information about these nodes, refer to the online Node and AttributeReference documentation.

UNDERSTANDING IK ROTATE PLANE SOLVER BEHAVIOR

The rotate plane solver first looks at the position (the translate x, y, and z attributes)of the goal. Next, the solver figures out how to move the position of the end effectoras close to the goal’s position as possible. To do that, the solver figures out how tobest rotate the joints in the IK handle’s joint chain. Unlike the single chain solver, therotate plane solver does not look at the orientation (the rotate x, y, and z attributes)of the goal. That is, the rotate plane solver figures out how to rotate the joints basedon the goal’s position, but not on the goal’s orientation. The orientation of the entirejoint chain can be controlled by twisting the joint chain with the twist disc. However,unlike the single chain solver, you cannot rotate the joint chain by rotating the IKhandle’s goal.

Joint chains that consist of between two and four joints are the easiest to pose withIK rotate plane handles. Extremely long IK chains can become awkward to pose andanimate.

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

CREATING IK ROTATE PLANE HANDLES

To create an IK handle, you use the IK Handle Tool. The characteristics of the IKhandle you create depend on the IK Handle Tool’s tool settings.

Specifying IK Handle Tool’s tool settings

To specify tool settings:

1 Select Skeleton > IK Handle Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s IK Handle Options as follows:

IK Handle Options

Current Solver Specifies the IK handle’s solver. To create an IK rotate plane handle, be sureikRPSolver is selected. Selecting ikSCSolver specifies that the IK handle be an IKsingle chain handle. If you want to use an IK single chain handle, see Chapter 22,“Using IK Single Chain Handles.” Default is ikRPSolver.

Autopriority (Does not apply to IK rotate plane handles.)

Solver Enable Specifies whether the IK solver will be on, enabling inverse kinematics (IK) posing.Default is on.

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector.Default is on.

Sticky Specifies that the IK handle will stick to its current position and orientation whileyou pose the skeleton with other IK handles or by translating, rotating, or scalingjoints directly. Default is off.

Page 254: Maya Character Setup

CHARACTER SETUP PART 3

254

USING IK ROTATE PLANE HANDLES | 21Posing IK rotate plane handles

Priority (Does not apply to IK rotate plane handles.)

Weight (Does not apply to IK rotate plane handles.)

POWeight (Does not apply to IK rotate plane handles.)

• Click Reset Tool to reset to the default tool settings.

or

• Click Close to close the Tool Settings window.

Note that you can change the tool settings whenever you are using the Joint Tool byselecting Window > Settings/Preferences > Tool Settings.

Creating an IK rotate plane handleBefore you create an IK rotate plane handle, be sure to check the IK Handle Tool’stool settings (select Skeleton > IK Handle Tool ❒). Current Solver should be set toikRPsolver. Also, note that the start joint must be a ball joint.

To create a IK rotate plane handle:

1 Select Skeleton > IK Handle Tool.

2 In the workspace, click on the joint where you want to start the IK rotate planehandle. Note that the start joint must be a ball joint: it must be free to rotatecompletely about all three of its local axes. Be sure the start joint has no rotationallimits or locked attributes.

3 Click on the joint where you want to end the IK rotate plane handle.

An IK rotate plane handle is created based on the IK Handle Tool’s previously settool settings.

Maya draws a box around the start joint if the joint is not a ball joint. For the IKhandle to work properly, the start joint must be a ball joint. Check if there are anyrotational limits or locked attributes that prevent the joint from rotating freely aboutall three of its local axes.

POSING IK ROTATE PLANE HANDLES

You can pose an IK rotate plane handle as described in the following topics:

Moving the handle

To move the handle:

1 Select the IK rotate plane handle (default name: ikHandlen).

2 Click the Move Tool on (default shortcut: w key).

3 In the workspace, while pressing the left or middle mouse button, move the IKhandle as desired. Doing so poses the joint chain controlled by the IK handle.

Manipulating the pole vector

To manipulate the pole vector:

1 Select the IK rotate plane handle (default name: ikHandlen).

Page 255: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Editing IK rotate plane handles

SKELETONS CHARACTER SETUP

255

2 Click the Show Manipulator Tool on (default shortcut: t key).

The IK handle’s pole vector, twist disc, and rotation disc are displayed.

3 In the workspace, while pressing the left or middle mouse button, move the polevector as desired. Doing so poses the joint chain controlled by the IK handle.

Note that as you move the pole vector, the rotation disc’s reference plane indicator(by default, a green dot along the disc) moves to reflect the movement of the polevector.

For most applications, such as controlling a character’s arm, you can fully control theaction of the IK handle by manipulating the pole vector. For convenience, you canconstrain the pole vector to some other object (for example, a locator) so that you canmore readily control the pole vector to pose the joint chain. For more informationabout constraining the pole vector to some other object, see Chapter 36, “Using PoleVector Constraints.”

Manipulating the twist disc

To manipulate the twist disc:

1 Select the IK rotate plane handle (default name: ikHandlen).

2 Click the Show Manipulator Tool on (default shortcut: t key).

The IK handle’s pole vector, twist disc, and rotation disc are displayed. Notice thatthe twist disc is blue by default.

3 Click on the twist disc.

The twist disc now turns yellow by default.

4 While pressing the left or middle mouse button, rotate the twist disc as desired.

The joint chain controlled by the IK handle rotates about the handle vector. Note thatthis action changes the value of the IK handle’s Twist channel.

Controlling joint chain flippingDuring posing, if the handle vector and the pole vector happen to cross each other orpoint in exactly opposite directions, the joint chain can suddenly flip. The joint chaincan suddenly flip because when the vectors cross or point in opposite directions, theorientation of the reference plane relative to the joint chain plane suddenly changesby 180 degrees. You can prevent the flipping by moving the pole vector so that thehandle vector will not cross it or point in the opposite direction of it (see"Manipulating the pole vector" on page 254).

EDITING IK ROTATE PLANE HANDLES

You can edit IK rotate plane handles as described in the following topics:

Editing IK rotate plane handle channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit an IK rotate plane handle’s channels.

Page 256: Maya Character Setup

CHARACTER SETUP PART 3

256

USING IK ROTATE PLANE HANDLES | 21Editing IK rotate plane handles

To edit channels with the Channel Box:

1 Select an IK handle (default name: ikHandlen).

Note that the Channel Box lists the IK handle’s IK solver under INPUTS. An IKrotate plane handle should have the ikRPsolver listed. You can edit the IK solverattributes with the Attribute Editor.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Translate X, Y, Z Specifies the position of the IK handle.

Rotate X, Y, Z Specifies the orientation of the IK handle.

Scale X, Y, Z Specifies the scaling of the IK handle. Note that the scale of the IK handle does notaffect how the IK handle poses the joint chain.

Visibility Specifies whether the IK handle is displayed. Enter on or off.

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain; the joint chain can only be posed by forward kinematics(FK). Enter on or off.

Pole Vector X,Y, Z Specifies the position of the pole vector’s end point. You can control the pole vector’s

position by moving it directly (see "Manipulating the pole vector" on page 254).

Offset (Does not apply to IK rotate plane handles.)

Roll (Does not apply to IK rotate plane handles.)

Twist Specifies the rotation of the joint chain plane relative to the reference plane. Theeffect of this is to rotate the joint chain controlled by the IK rotate plane handle. Youcan also control the rotation of the joint chain by manipulating the twist disc (see"Manipulating the twist disc" on page 255).

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing IK rotate plane handle attributes

To edit attributes with the Attribute Editor:

1 Select the IK handle node (default name: ikHandlen).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, SkeletonInfo, IK Handle Attributes, IK Solver Attributes, Pivots, Limit Information, Display,Node Behavior, and Extra Attributes.

Transform Attributes

Translate Specifies the position of the IK rotate plane handle.

Page 257: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Editing IK rotate plane handles

SKELETONS CHARACTER SETUP

257

Rotate Specifies the rotation of the IK rotate plane handle. Note that the rotation of thehandle does not affect the posing of the joint chain.

Scale Specifies the scaling of the IK rotate plane handle. Note that the scaling of the handledoes not affect the posing of the joint chain.

Shear Specifies the shearing of the IK rotate plane handle. Note that the shearing of thehandle does not affect the posing of the joint chain.

Rotate Order Specifies the IK handle’s rotation order. For example, if the rotation order is xyz, thehandle first rotates about its X-axis, then its Y-axis, and finally its Z-axis. Select xyz,yzx, zxy, xzy, yxz, zyx. Default is xyz.

Rotate Axis Specifies the orientation of the IK handle to the orientation of the start joint’s localrotation axis.

InheritsTransform Specifies whether the IK handle can be affected by the translation, rotation, or

scaling of a parent object.

Skeleton Info

Start Joint Informs you of the name of the start joint of the joint chain controlled by the IKrotate plane handle. Click on the > icon button to get the Attribute Editor for thestart joint.

End Effector Informs you of the name of the IK handle’s end effector. Click on the > icon button toget the Attribute Editor for the end effector. If you do so, note that the end effector’sTranslate X, Y, and Z attributes are locked. They are locked because the end effectoris parented to the end joint of the joint chain controlled by the IK rotate planehandle.

IK Handle Attributes

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector. Clickon or off. Default is on.

Stickiness Specifies that the IK handle will stick to its current position while you pose theskeleton with other IK handles or by translating, rotating, or scaling joints directly.Click on or off. Default is off.

Priority (Does not apply to IK rotate plane handles.)

Weight (Does not apply to IK rotate plane handles.)

Po Weight (Does not apply to IK rotate plane handles.)

IK Solver Attributes

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain. Turning Solver Enable off turns off IK posing so that youhave to use forward kinematics (FK) posing. Enter on or off.

IK Solver Specifies the IK handle’s solver. For an IK rotate plane handle, ikRPSolver should beselected. Selecting ikSCSolver specifies that the IK handle be an IK single chainhandle. If you want to use an IK single chain handle, see Chapter 22, “Using IKSingle Chain Handles.” Default is ikRPSolver.

Pole Vector Specifies the position of the pole vector’s end point. You can control the pole vector’sposition by moving it directly (see "Manipulating the pole vector" on page 254).

Page 258: Maya Character Setup

CHARACTER SETUP PART 3

258

USING IK ROTATE PLANE HANDLES | 21Editing IK rotate plane handles

Twist Specifies the rotation of the joint chain plane relative to the reference plane. Theeffect of this is to rotate the joint chain controlled by the IK rotate plane handle. Youcan also control the rotation of the joint chain by manipulating the twist disc (see"Manipulating the twist disc" on page 255).

Pivots

Specifies whether to display the IK handle’s rotate pivot and scale pivot. The LocalSpace and World Space sections specify the pivot positions in local space (relative tothe IK handle) and world space.

Limit Information

Specifies limits on the IK handle’s translation, rotation, and scaling attributes. Selectthe Translate, Rotate, or Scale sections.

Translate

Trans Limit X Specifies translation limits on the IK handle’s Translate X attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Y Specifies translation limits on the IK handle’s Translate Y attribute.Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Z Specifies translation limits on the IK handle’s Translate Z attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Rotate

Rot Limit X Specifies rotation limits on the IK handle’s Rotate X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Y Specifies rotation limits on the IK handle’s Rotate Y attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Z Specifies rotation limits on the IK handle’s Rotate Z attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale

Scale Limit X Specifies scaling limits on the IK handle’s Scale X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Y Specifies scaling limits on the IK handle’s Scale Y attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Z Specifies scaling limits on the IK handle’s Scale Z attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Page 259: Maya Character Setup

USING IK ROTATE PLANE HANDLES | 21Editing IK rotate plane handles

SKELETONS CHARACTER SETUP

259

Display

Specifies display attributes for the IK handle’s selection handle, local axis, positionoffset values for the selection handle, the show manipulator default, visibility, andtemplate. Bounding Box Information and Drawing Overrides not applicable.

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

Editing IK rotate plane solver attributes

To edit attributes with the Attribute Editor:

1 Select the IK rotate plane solver (default name: ikRPsolver).

Note that changes to solver will affect all the IK handles that use it.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: IK Solver Attributes, NodeBehavior, and Extra Attributes.

IK Solver Attributes

Max Iterations Specifies the maximum number of iterations the IK solver will take in calculatinghow the end effector reaches the IK handle. If the Tolerance cannot be meet afterMax Iterations, the IK solver will stop. Default is 2147483647. A large value such asthe default value means that the IK solver will typically stop when the Tolerance ismet.

Tolerance Specifies the precision sought by the IK solver in calculating how the end effectorreaches the IK handle. Once the IK solver meets the Tolerance, the IK solver stopscalculating. Default is 0.0001.

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

Page 260: Maya Character Setup

CHARACTER SETUP PART 3

260

USING IK ROTATE PLANE HANDLES | 21Deleting IK rotate plane handles

DELETING IK ROTATE PLANE HANDLES

To delete an IK rotate plane handle:

1 Select the IK rotate plane handle (default name: ikHandlen).

2 Select Edit > Delete (default shortcut: Backspace key).

The IK handle is deleted. However, note that the handle’s IK rotate plane solver isnot deleted. The solver is still available for the other IK rotate plane handles that useit.

Page 261: Maya Character Setup

SKELETONS CHARACTER SETUP

261

22 USING IK SINGLE CHAINHANDLES

IK single chain handles provide a way to pose joint chains. IK single chain handlesdirect the rotations of all the joints in the chain and the overall orientation of the jointchain.

Page 262: Maya Character Setup

CHARACTER SETUP PART 3

262

USING IK SINGLE CHAIN HANDLES | 22Understanding IK single chain handles

UNDERSTANDING IK SINGLE CHAIN HANDLES

The IK single chain handle is a straightforward tool for posing and animating a chainanywhere the joint chain can reach in the scene’s world space. The joint chain willtend to stay within the plane that best includes all the joint chain’s joints. Note thatthe IK rotate plane handle provides you with direct control over the joint chain’sorientation (see Chapter 21, “Using IK Rotate Plane Handles”), whereas the IK singlechain handle uses its IK solver to calculate the joint chain orientation.

The rest of this section describes various features of an IK single chain handle. Youneed not understand all of these features to use IK single chain handles effectively;however, to get the most out of using IK single chain handles, you should eventuallybecome familiar with all these features.

Start and end joints

The start joint is where the IK handle begins. The start joint is the first joint in thejoint chain that is influenced by the IK handle. The start joint could be the skeleton’sroot joint or any other joint in the skeleton’s action hierarchy above the end joint.

The start joint must be a ball joint. It must be free to rotate completely about all threeof its local axes.

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

End joint

Start joint

Page 263: Maya Character Setup

USING IK SINGLE CHAIN HANDLES | 22Understanding IK single chain handles

SKELETONS CHARACTER SETUP

263

Handle position and orientation control gnomon

You control the IK single chain handle’s position and orientation by selecting the IKhandle’s gnomon and moving or rotating it. The joint chain moves or rotates as youmove or rotate the IK handle. (Note that the term “gnomon” refers to Maya’s axialicons; for example, a locator is also a gnomon).

When you move or rotate the IK single chain handle’s gnomon, you indicate whereyou want the IK handle’s end effector to be.

End effector

By default, the end effector is not displayed, but it is located at the end joint’s localaxis. However, if you like, you can offset the end effector’s position from the endjoint. The end effector does not move from its location at the end joint (or at someoffset from the end joint) during posing and animating. The end effector is parentedto the parent joint of the end joint, influencing all the joints in the joint chain. Toview the hierarchical relationships between the end effector and the joints, you canview the scene hierarchy with the Hypergraph.

For an IK single chain handle, the goal of the end effector is to reach the IK handle’sposition and orientation. As you move the IK single chain handle’s position, the IKsingle chain solver calculates how to rotate all the joints in the joint chain so that theend effector can reach the IK handle’s position and orientation.

The end effector tries to keep up with the IK handle’s position at all times. However,depending on the rotational limits and fully extended length of the joint chain, theend effector might not be able to reach IK handle.

You can control the IK single chain handle bymoving or rotating the handle’s gnomon

End effector located bydefault at the end joint’slocal rotation axis

Page 264: Maya Character Setup

CHARACTER SETUP PART 3

264

USING IK SINGLE CHAIN HANDLES | 22Understanding IK single chain handles

Difference between IK single chain and rotate plane handlesThe difference between an IK single chain handle and an IK rotate plane handle isthat the IK single chain handle’s end effector tries to reach the position and theorientation of its IK handle, whereas the IK rotate plane handle’s end effector onlytries to reach the position of its IK handle. Because the IK rotate plane handle’s endeffector only tries to reach the position, the resulting joint rotations are morepredictable. To control orientation, the IK rotate plane handle provides you withspecial manipulators such as the twist disc. For more information about IK rotateplane handles, see Chapter 21, “Using IK Rotate Plane Handles.”

Handle wire

The handle wire is the line that runs through all the joints and bones in a joint chaincontrolled by the IK handle.The handle wire begins at the start joint’s local axis andby default ends at the end joint’s local axis.

Handle vector

The handle vector is the line drawn from the start joint to the IK handle.

Related MEL commandsMEL commands related to IK single chain handles include the following:

• ikHandle

• ikHandleCtx

• ikHandleDisplayScale

• ikSolver

Handle wire runsthrough all the joints inthe joint chain controlledby the IK handle

Handle vector runsdirectly from start joint toend effector, which is atthe end joint by default.

Page 265: Maya Character Setup

USING IK SINGLE CHAIN HANDLES | 22Understanding IK single chain solver behavior

SKELETONS CHARACTER SETUP

265

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for posing with IK single chain handles can includethe following:

• IK handle node (default name: ikHandlen).

• IK single chain solver node (default name: ikSCsolver).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

UNDERSTANDING IK SINGLE CHAIN SOLVER BEHAVIOR

The single chain solver first looks at the position (the translate X, Y, and Z attributes)and orientation (the rotate X, Y, and Z attributes) of the IK handle. Next, the solverfigures out how to move the position and orientation of the end effector as close tothe IK handle’s position and orientation as possible. To do that, the solver figures outhow to best rotate the joints in the IK handle’s joint chain.

Joint chains that consist of between two and four joints are the easiest to pose withIK single chain handles. Extremely long IK chains can become awkward to pose andanimate.

For best results, a joint chain controlled by an IK handle using a single chain solvershould not have any other IK handles running through any of its joints.

CREATING IK SINGLE CHAIN HANDLES

To create an IK handle, you use the IK Handle Tool. The characteristics of the IKhandle you create depend on the IK Handle Tool’s tool settings.

Specifying IK Handle Tool’s tool settings

To specify tool settings:

1 Select Skeleton > IK Handle Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s IK Handle Options as follows:

IK Handle Options

Current Solver Specifies which type of IK solver the IK handle will have. Selections includeikRPsolver and ikSCsolver. Select ikSCsolver to create a IK single chain handle. TheikRP solver selection is for creating IK rotate plane handles. If you want to create anIK rotate plane handle, see Chapter 21, “Using IK Rotate Plane Handles.” Default isikRP solver.

Autopriority Specifies whether Maya sets the IK single chain handle’s Priority automatically uponcreation. If Autopriority is on, Maya assigns the IK handle’s Priority based on wherethe IK handle’s start joint is in the skeleton’s hierarchy. For example, if the IK handle

Page 266: Maya Character Setup

CHARACTER SETUP PART 3

266

USING IK SINGLE CHAIN HANDLES | 22Creating IK single chain handles

starts at the root joint, the Priority is set to 1. If the IK handle starts at a joint justbelow the root joint in the skeleton’s hierarchy, the Priority is set to 2, and so on.Default is off.

Solver Enable Specifies whether the IK solver (specified by Current Solver) will be active uponcreation. Default is on so that you can immediately pose the joint chain with the IKhandle.

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector.Default is on.

Sticky Specifies that the IK handle will stick to its current position and orientation whileyou pose the skeleton with other IK handles or by translating, rotating, or scalingjoints directly. Click on or off. Default is off.

Priority Specifies the priority of the IK single chain handle. Useful if two or more IK singlechain handles overlap, affecting some or all of the same joints. The IK handle with aPriority of 1 has first priority, and will rotate the joints first. An IK handle with aPriority of 2 has second priority, and will rotate the joints next, and so on. Default is1. (Available only if Autopriority is off.)

Weight (Does not apply to IK single chain handles.)

POWeight Specifies the position/orientation weight. Controls how the end effector will favorreaching the IK handle’s position versus the IK handle’s orientation. A value of 1specifies that the end effector will only try to reach the IK handle’s position. A valueof 0 specifies that the end effector will only try to reach the IK handle’s orientation. Avalue of 0.5 specifies that the end effector will equally favor reaching both theposition and orientation as closely as possible. Default is 1.0000.

• Click Reset Tool to reset to the default tool settings.

or

• Click Close to close the Tool Settings window.

Note that you can change the tool settings whenever you are using the Joint Tool byselecting Windows > General Editors > Tool Settings, or by double-clicking on the IKHandle Tool icon.

Creating an IK single chain handleBefore you create an IK single chain handle, be sure to check the IK Handle Tool’stool settings (select Skeleton > IK Handle Tool ❒). Current Solver should be set toikSCsolver. Note that the start joint must be a ball joint.

To create an IK single chain handle:

1 Select Skeleton > IK Handle Tool.

2 In the workspace, click on the joint where you want to start the IK single chainhandle. Note that the start joint must be a ball joint: it must be free to rotatecompletely about all three of its local axes. Be sure the start joint has no rotationallimits or locked attributes.

3 Click on the joint where you want to end the IK single chain handle.

An IK single chain handle is created based on the IK Handle Tool’s previously settool settings (Current Solver should have been set to ikSCsolver).

Page 267: Maya Character Setup

USING IK SINGLE CHAIN HANDLES | 22Posing IK single chain handles

SKELETONS CHARACTER SETUP

267

Maya draws a box around the start joint if the joint is not a ball joint. For the IKhandle to work properly, the start joint must be a ball joint. Check if there are anyrotational limits or locked attributes that prevent the joint from rotating freely aboutall three of its local axes

POSING IK SINGLE CHAIN HANDLES

You can pose an IK single chain handle as described in the following topics:

Moving the handle

To move the handle:

1 Select the IK single chain handle (default name: ikHandlen).

2 Click the Move Tool on (default shortcut: w key).

3 In the workspace, while pressing the left or middle mouse button, move the IKhandle as desired. Doing so poses the joint chain controlled by the IK handle.

Rotating the handle

To rotate the handle:

1 Select the IK single chain handle (default name: ikHandlen).

2 Click the Rotate Tool on (default shortcut: e key).

3 In the workspace, while pressing the left or middle mouse button, rotate the IKhandle as desired. Doing so poses the joint chain controlled by the IK handle.

EDITING IK SINGLE CHAIN HANDLES

You can edit IK single chain handles as described in the following topics:

Editing IK single chain handle channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit an IK single chain handle’s channels.

To edit channels with the Channel Box:

1 Select an IK handle node (default name: ikHandlen).

Note that the Channel Box lists the IK handle’s IK solver under INPUTS. An IKsingle chain handle should have the ikSCsolver listed. You can edit the IK solverattributes with the Attribute Editor.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Translate X, Y, Z Specifies the position of the IK handle.

Rotate X, Y, Z Specifies the orientation of the IK handle.

Page 268: Maya Character Setup

CHARACTER SETUP PART 3

268

USING IK SINGLE CHAIN HANDLES | 22Editing IK single chain handles

Scale X, Y, Z Specifies the scaling of the IK handle. Note that the scale of the IK handle does notaffect how the IK handle poses the joint chain.

Visibility Specifies whether the IK handle is displayed. Enter on or off.

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain. Enter on or off.

Pole Vector X,Y, Z (These channels do not apply to IK single chain handles.)

Offset (This channel does not apply to IK single chain handles.)

Roll (This channel does not apply to IK single chain handles.)

Twist (This channel does not apply to IK single chain handles.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing IK single chain handle attributes

To edit attributes with the Attribute Editor:

1 Select the IK handle node (default name: ikHandlen).

2 Open the Attribute Editor by selecting Windows > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, SkeletonInfo, IK Handle Attributes, IK Solver Attributes, Pivots, Limit Information, Display,Node Behavior, and Extra Attributes.

Transform Attributes

Translate Specifies the position of the IK single chain handle.

Rotate Specifies the rotation of the IK single chain handle.

Scale Specifies the scaling of the IK single chain handle. Note that the scaling of the handledoes not affect the posing of the joint chain.

Shear Specifies the shearing of the IK single chain handle. Note that the shearing of thehandle does not affect the posing of the joint chain.

Rotate Order Specifies the IK handle’s rotation order. For example, if the rotation order is xyz, thehandle first rotates about its X-axis, then its Y-axis, and finally its Z-axis. Select xyz,yzx, zxy, xzy, yxz, zyx. Default is xyz.

Rotate Axis Specifies the orientation of the IK handle to the orientation of the start joint’s localrotation axis.

InheritsTransform Specifies whether the IK handle can be affected by the translation, rotation, or

scaling of a parent object.

Page 269: Maya Character Setup

USING IK SINGLE CHAIN HANDLES | 22Editing IK single chain handles

SKELETONS CHARACTER SETUP

269

Skeleton Info

Start Joint Informs you of the name of the start joint of the joint chain controlled by the IKsingle chain handle. Click on the > icon button to get the Attribute Editor for thestart joint.

End Effector Informs you of the name of the IK handle’s end effector. Click on the > icon button toget the Attribute Editor for the end effector. If you do so, note that the end effector’sTranslate X, Y, and Z attributes are locked. They are locked because the end effectoris parented to the end joint of the joint chain controlled by the IK single chainhandle.

IK Handle Attributes

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector. Clickon or off. Default is on.

Stickiness Specifies whether the IK handle is sticky. If sticky, the IK handle sticks to its currentposition and orientation while you pose the skeleton with other IK handles or bytranslating, rotating, or scaling joints directly. Click on or off. Default is off.

Priority Specifies the priority of the IK single chain handle. Useful if two or more IK singlechain handles overlap, affecting some or all of the same joints. The IK handle with aPriority of 1 has first priority, and will rotate the joints first. An IK handle with aPriority of 2 has second priority, and will rotate the joints next, and so on. Default is1. Use slider to select values from 1 to 20. Default is 1.

Weight (Does not apply to IK single chain handles.)

Po Weight Specifies the position/orientation weight. The position/orientation weight controlshow the end effector favors reaching the IK single chain handle’s position versus itsorientation. A value of 1.000 specifies that the end effector will only try to reach theIK handle’s position. A value of 0.000 specifies that the end effector will only try toreach the IK handle’s orientation. A value of 0.500 specifies that the end effector willequally favor reaching both the position and orientation as closely as possible. Useslider to select values from 0.000 to 1.000. Default is 1.000.

IK Solver Attributes

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain. Enter on or off.

IK Solver Specifies the IK handle’s solver. For an IK single chain handle, ikSCSolver should beselected. Selecting ikRPSolver specifies that the IK handle be an IK rotate planehandle. If you want to use an IK rotate plane handle, see Chapter 21, “Using IKRotate Plane Handles.”

Pivots

Specifies whether to display the IK handle’s rotate pivot and scale pivot. The LocalSpace and World Space sections specify the pivot positions in local space (relative tothe IK handle) and world space.

Limit Information

Specifies limits on the IK handle’s translation, rotation, and scaling attributes. Selectthe Translate, Rotate, or Scale sections.

Page 270: Maya Character Setup

CHARACTER SETUP PART 3

270

USING IK SINGLE CHAIN HANDLES | 22Editing IK single chain handles

Translate

Trans Limit X Specifies translation limits on the IK handle’s Translate X attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Y Specifies translation limits on the IK handle’s Translate Y attribute.Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Z Specifies translation limits on the IK handle’s Translate Z attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Rotate

Rot Limit X Specifies rotation limits on the IK handle’s Rotate X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Y Specifies rotation limits on the IK handle’s Rotate Y attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Z Specifies rotation limits on the IK handle’s Rotate Z attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale

Scale Limit X Specifies scaling limits on the IK handle’s Scale X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Y Specifies scaling limits on the IK handle’s Scale Y attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Z Specifies scaling limits on the IK handle’s Scale Z attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Display

Specifies display attributes for the IK handle’s selection handle, local axis, positionoffset values for the selection handle, the show manipulator default, visibility, andtemplate. Bounding Box Information and Drawing Overrides not applicable.

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

Editing IK single chain solver attributes

To edit attributes with the Attribute Editor:

1 Select the IK single chain solver node (default name: ikSCsolvern).

Page 271: Maya Character Setup

USING IK SINGLE CHAIN HANDLES | 22Deleting IK single chain handles

SKELETONS CHARACTER SETUP

271

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: IK Solver Attributes, NodeBehavior, and Extra Attributes.

IK Solver Attributes

Max Iterations Specifies the maximum number of iterations the IK solver will take in calculatinghow the end effector reaches the IK handle. If the Tolerance cannot be meet afterMax Iterations, the IK solver will stop. Default is 2147483647. A large value such asthe default value means that the IK solver will typically stop when the Tolerance ismet.

Tolerance Specifies the precision sought by the IK solver in calculating how the end effectorreaches the IK handle. Once the IK solver meets the Tolerance, the IK solver stopscalculating. Default is 0.0001.

Node Behavior

See "Editing node behavior to improve performance" on page 208.

Extra Attributes

(No extra attributes by default.)

DELETING IK SINGLE CHAIN HANDLES

To delete an IK single chain handle:

1 Select the IK single chain handle (default name: ikHandlen).

2 Select Edit > Delete (default shortcut: Backspace key).

The IK handle is deleted. However, note that the handle’s IK single chain solver isnot deleted. The solver is still available for the other IK single chain handles that useit.

Page 272: Maya Character Setup

CHARACTER SETUP PART 3

272

USING IK SINGLE CHAIN HANDLES | 22Deleting IK single chain handles

Page 273: Maya Character Setup

SKELETONS CHARACTER SETUP

273

23 USING IK SPLINE HANDLES

IK spline handles provide a way to pose joint chains with a NURBS curve.

UNDERSTANDING IK SPLINE HANDLES

You can add an IK spline handle to a joint chain to animate the motion of tails, necks,spines, tentacles, bull-whips, snakes, and similar objects. After you add the handle,Maya’s IK spline solver rotates the joints when you manipulate a curve that’s part ofthe handle.

Related MEL commandsMEL commands related to posing with IK spline handles include the following:

• ikSplineHandleCtx

• ikSplineManipCtx

For more information about these commands, refer to the online MEL CommandReference documentation.

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

Plesiosaur by Matt Dougan

Page 274: Maya Character Setup

CHARACTER SETUP PART 3

274

USING IK SPLINE HANDLES | 23Creating IK spline handles

Dependency graph nodesThe dependency graph nodes for inverse kinematics posing can include thefollowing:

• IK solver node (default name: ikSolvern).

• IK spline solver node (default name: ikSplineSolver).

• IK system node (default name: ikSystem).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

CREATING IK SPLINE HANDLES

You 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 the translation ofthe handle. You can also roll or twist the joint chain with convenient manipulators.

The joint chain can be an independent hierarchy or part of a larger hierarchy. Bydefault, 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. In either 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 manyjoints close to each other (with short bones).

2 Select Skeleton > 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 automatically created curve.The joints in the chain rotate to adapt to the shape of the curve.

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 moves smoothlywhen 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 manipulate the curveand its joint chain easier. With fewer CVs, you spend less time selecting anddragging 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 needed toimprove control.

2 Create a joint chain.

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

3 Select Skeleton > IK Spline Handle Tool ❐.

Page 275: Maya Character Setup

USING IK SPLINE HANDLES | 23Creating IK spline handles

SKELETONS CHARACTER SETUP

275

The Tool Settings window appears. Set options as described in "Setting optionsbefore creating the IK spline handle" on page 278. Turn off Auto Create Curve. Theoption settings are saved for future use.

4 Select the start joint for the IK handle.

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 rotate toadapt to the shape of the curve. If the curve is shorter than the joint chain, the extralength of the joint chain points out from the end of the curve in a straight line.

Animating the joint chainTo animate the joint chain, you set keys for the appropriate attributes after you doany 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 the jointchain.

To manipulate the CVs of the curve:

1 Select the curve.

You can select the curve conveniently in the Outliner or Hypergraph.

It’s helpful to display CVs and hulls as you work with CVs. With the curve selected,turn on Display > NURBS Components > CVs, and also turn on Hulls.

2 Move the CVs.

Use the Move Tool on the CVs.

or

From the Modeling menu, select Edit Curves > Curve Editing Tool.

3 Select Animate > Set Key to set keys at the desired frames.

To twist and roll the joint chain:

1 Select the IK spline handle.

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 Animate >Set Key.

If you use the Curve Editing Tool, select Animate > Set Key ❒, turn on theControl Points option, and click the Save button. Thereafter when youchoose Set Key, Maya sets keys only for the necessary CVs.

Page 276: Maya Character Setup

CHARACTER SETUP PART 3

276

USING IK SPLINE HANDLES | 23Creating IK spline handles

To select the handle in the workspace, drag a selection box around the end joint. Thedefault selection priority ensures you’ll select the handle rather than 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 the startjoint.

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

You can also adjust twist and roll by selecting the IK handle and entering values forRoll and Twist in the Channel Box or Attribute Editor. In the Attribute Editor,expand the IK Solver Attributes section to see these attributes.

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 a selection boxaround the end joint of the handle. The default selection priority ensures you’ll selectthe 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 the curve. Italso provides an offset manipulator to slide the start joint along the curve.

5 Choose Modify > Transformation Tools > Show Manipulator Tool.

The offset manipulator appears at the start joint.

Twist manipulator

End joint

Roll manipulator

Start joint

Page 277: Maya Character Setup

USING IK SPLINE HANDLES | 23Creating IK spline handles

SKELETONS CHARACTER SETUP

277

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 off the end ofthe 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 start joint’soffset manipulator along the curve. Try various values over 0 to get the desiredposition.

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

7 Set keys for the Offset at the desired frames.

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 for smallmovements 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 282.

Offset manipulatorat the start joint

Offset manipulator atthe end of the curve

Page 278: Maya Character Setup

CHARACTER SETUP PART 3

278

USING IK SPLINE HANDLES | 23Creating IK spline handles

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, and scalingthe 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 before youcreate the handle. See "Tips for working with IK spline handles" on page 284 foradditional information on how to use several of these options. For details on optionsyou can set after creation, see "Setting attributes after creating the IK spline handle"on page 281.

To set IK Spline Handle Tool options:

1 Select Skeleton > IK Spline Handle Tool ❐.

The Tool Settings window is displayed.

2 In the Tool Settings window, set the following: Root On Curve, Auto Create RootAxis, Auto Parent Curve, Snap Curve To Root, Auto Create Curve, Auto SimplifyCurve, Number of Spans, Root Twist Mode, and Twist Type.

Root On CurveIf you turn this option on, the start joint of the IK spline handle is constrained to aposition on the curve. You can drag an offset manipulator to slide the start joint (andits children) along the curve.

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

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

Page 279: Maya Character Setup

USING IK SPLINE HANDLES | 23Creating IK spline handles

SKELETONS CHARACTER SETUP

279

If Root on Curve is off and you move the start joint far enough away from the curveso that none of the joints can reach the curve, the bones point straight at the closestpoint on the curve. If the curve is wavy, the joints jump from closest point to closestpoint as you move the straightened joint chain towards parts of the curve. This iscorrect operation.

The following figure shows a joint chain in four positions as it points towards theclosest part of the curve.

You can also turn Root on Curve on or off after you create the IK spline handle byselecting the IK spline handle and displaying the Attribute Editor. To display theAttribute 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 and rotating thistransform node rather than the start joint. See "Preventing unwanted start jointflipping" on page 282 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 Curve if youwant to use the curve as a motion path. Otherwise, a dependency graph loop occurs,which results in the display of a warning message and incorrect handle operation.

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

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

If you create a handle that starts at a joint in the chain lower than the root joint ofyour skeleton, turn this option on so the joint chain moves with the transformationsof its parent joint.

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.

Page 280: Maya Character Setup

CHARACTER SETUP PART 3

280

USING IK SPLINE HANDLES | 23Creating IK spline handles

You can set this option in the Tool Options window only as you create the IK splinehandle.

Snap Curve To RootThis option affects the handle only if you create your own curve for the handle. Ifthis option is on when you create the handle, the start of the curve snaps to theposition of the start joint. The joints in the chain rotate to adapt to the shape of thecurve.

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

You can set this option in the Tool Options window only as you create the IK splinehandle.

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, the curve passesthrough all the joints. This often creates so many CVs that the curve is unwieldy tomanipulate. For this reason, consider turning on Auto Simplify Curve.

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

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

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

You can set Auto Create Curve in the Tool Options window only as you create theIK spline handle.

Auto Simplify CurveThis option sets the automatically created curve to the specified Number of Spans.The number of spans corresponds to the number of CVs in the curve. The curve hasa 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 manipulate the curveand its joint chain easier. With fewer CVs, you spend less time selecting anddragging CVs, and you’re more likely to have a smooth curve.

This option works only if Auto Create Curve is on.

You can set Auto Simplify Curve in the Tool Options window only as you create theIK spline handle.

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

Page 281: Maya Character Setup

USING IK SPLINE HANDLES | 23Creating IK spline handles

SKELETONS CHARACTER SETUP

281

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 you create theIK spline handle.

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

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

You can also set this option after you create the IK spline handle by selecting the IKspline handle and displaying the Attribute Editor. To display the Attribute 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.

• 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 by selecting the IKspline handle and displaying the Attribute Editor. To display 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 several attributes.

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’ve bound skin to the joint chain,turn this option off before returning the joint chain to the bind pose.

Numberof Spans

CVs

1 4

2 5

3 6

4 7

Page 282: Maya Character Setup

CHARACTER SETUP PART 3

282

USING IK SPLINE HANDLES | 23Creating IK spline handles

While this option is on, avoid moving individual joints or you might encounterunexpected joint rotations. You also cannot move or rotate the IK handle.

Be aware that the IK spline solver doesn’t operate if there are joint limits on any ofthe joints controlled by an IK spline handle.

Offset See the following note.

Roll See "Animating the joint chain" on page 275.

Twist See "Animating the joint chain" on page 275.

Twist Type See the following note.

Root on Curve See the following note.

Root TwistMode See the following note.

Preventing unwanted start joint flippingThe start joint might flip undesirably when you move or rotate a curve or its CVs insome directions or slide the joint chain along its curve. If flipping occurs, it’s likely todo so only in a small range of rotation. The flipping is a normal outcome of IK splinesolver calculations.

If the orientation of a joint is more than 90 spatial degrees from its zero-rotationvalue, it might flip unexpectedly as you rotate the curve or CVs. The zero-rotationvalue is where the joint’s RotateX, RotateY, and RotateZ attributes are 0 (relative toits parent joint’s coordinate system). Flipping is most pronounced near 180 degrees.

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 278.

Unwanted start joint rotationmight occur in the half-sphericalregion. Flipping is pronounced inthe conical region.

Joint is at its zero-rotation value.

Page 283: Maya Character Setup

USING IK SPLINE HANDLES | 23Creating IK spline handles

SKELETONS CHARACTER SETUP

283

You can prevent start joint flipping in most cases by positioning joints appropriatelywhen you create the joint chain. When you create each joint after the start joint,position it roughly in its rest position—the average position of its entire range ofmotion.

If you’ve positioned joints appropriately and joint flipping is still a problem, tryparenting the start joint to another joint or to a transform node. See "Auto CreateRoot Axis" on page 279 and "Auto Parent Curve" on page 279.

Unexpected start joint flipping might also occur when you animate a joint chainalong its curve, for instance, when you slide a snake along a motion path. To preventflipping in such cases, do these steps.

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

1 Select Skeleton > IK Spline Handle Tool ❐ to display the Tool Settings window.

2 Turn off Root on Curve, Auto Parent Curve, Auto Create Curve, and Snap Curve toRoot.

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 the start joint.In a subsequent step you’ll put the node on a motion path that prevents the startjoint flipping.

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

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

6 Select Animate > Motion Paths > Attach to Motion 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’s motion.

The parent transform node and its child joint chain will move from the start of thecurve 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 Normal for theUp Direction to avoid unwanted flipping.

10 Leave other options at the default settings.

11 Click the Attach button.

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

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

Working with soft body curvesIf you change an IK spline curve to a soft body, you can add dynamic forces tochange the curve’s motion. For example, you can connect turbulence to the curve tocreate random, erratic motion. See Using Maya: Dynamics for details.

Page 284: Maya Character Setup

CHARACTER SETUP PART 3

284

USING IK SPLINE HANDLES | 23Tips for working with IK spline handles

TIPS FOR WORKING WITH IK SPLINE HANDLES

This section provides tips for working with IK spline handles on most characters.Subsequent topics offer suggestions specific to the type of character and motionyou’re creating.

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

• Create a simple curve with no sharp bends to help make the joint chain movesmoothly 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 fishand snakes moving along a motion path—parent each IK spline start joint to atransform node or parent joint that’s not controlled by an IK spline handle. Thismakes the joint chain move with the transformations of the parent while avoidingunexpected joint flipping. See "Preventing unwanted start joint flipping" on page282 for details.

If you’re working on a character with a root joint that rotates little, for instance, aswaying tree, you don’t need to parent the start joint to a transform 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 you create ahandle that starts at a skeleton’s root, turn on Auto Create Root Axis when youcreate the IK spline handle. This prevents unexpected joint flipping as you animatethe automatically created parent transform node along a motion path. Also turn offAuto Parent Curve.

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

• When you manipulate a tail or neck parented to a spine, avoid moving the first CVof the curve for the tail or neck. Move the second CV minimally, preferably onlyalong an imaginary line extending straight out from the end of the spine. Manipulatethe other CVs freely. This technique ensures that the skin flows naturally where thespine meets the tail or neck.

• To prevent unexpected results, Maya doesn’t let you overlap the same joint with twoIK spline handles.

• Do not parent the curve to the start joint. This creates a dependency graph loop thatcauses the start joint to chase the curve as the curve moves. To detect such loops, usethe MEL cycleCheck -all command described in the online MEL documentation.

• Do not parent the curve to a transform node that would use that same curve as amotion path. In other words, don’t turn on Auto Create Root Axis and Auto ParentCurve if you plan to put the transform node on that curve. This creates adependency graph loop.

Working with human skeletonsBecause a human spine often twists, turns, and bends, an IK spline handle is idealfor controlling it. For example, you can position the handle’s start joint one jointhierarchically below (and positionally above) the skeleton’s root joint. This causesthe IK spline joint chain to move with the root’s movement without unexpected jointflipping.

Page 285: Maya Character Setup

USING IK SPLINE HANDLES | 23Tips for working with IK spline handles

SKELETONS CHARACTER SETUP

285

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

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

IK splinehandle

IK splinehandle

Start joint

Root joint

Zoomed view of image on left

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

Handle

Handle

Handle

Pelvic region

Page 286: Maya Character Setup

CHARACTER SETUP PART 3

286

USING IK SPLINE HANDLES | 23Tips for working with IK spline handles

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

The start joint of the tail’s handle and the start joint of the back’s handle are near theposition of the skeleton’s root, but one joint below the root in the skeleton’shierarchy. This causes the IK spline joint chains to move with the root’s movementwithout unexpected joint flipping.

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

For most creatures, using only one handle for the tail, back, and neck won’t give youadequate control.

Working with sinuous motion on skeletonsIK spline handles are useful for animating land or sea creatures that move in sinuousor undulating patterns, for example, snakes, fish, and seals. The skeleton’s rootlocation is crucial for achieving the desired motion.

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

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

Close-up of previousimage’s pelvic region

HandleHandle

The skeleton’s rootis at its tail.

Handle

HandleHandle

Handle

Handle

Page 287: Maya Character Setup

USING IK SPLINE HANDLES | 23Tips for working with IK spline handles

SKELETONS CHARACTER SETUP

287

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 between thespine’s midpoint and tail, for instance, near the pelvic region:

Each handle’s start joint in the figure is separated from the root by one joint. None ofthe IK spline handles pass through the root. This causes the IK spline joint chains tomove with the root’s movement without unexpected joint flipping.

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 288: Maya Character Setup

CHARACTER SETUP PART 3

288

USING IK SPLINE HANDLES | 23Tips for working with IK spline handles

Page 289: Maya Character Setup

SKELETONS CHARACTER SETUP

289

24 USING IK TWO BONEHANDLES

IK two bone handles are tools for posing short joint chains that consist of three joints(two bones). IK two bone handles are especially useful for setting up characters in agames development environment. Maya includes the source code for this feature (see"IK two bone solver plug-in source code" on page 306), so games developers canreplicate the exact behavior of this feature in a games engine.

Page 290: Maya Character Setup

CHARACTER SETUP PART 3

290

USING IK TWO BONE HANDLES | 24Quick start

QUICK START

This section shows you how to create an IK two bone handle as quickly as possible.

To load plug-in and create solver node:

1 In the Command Line, enter:

loadPlugin ik2Bsolver;

2 In the Command Line, enter:

ik2Bsolver;

To create joint chain with IK handle:

1 Select Skeleton > Joint Chain ❒.

2 In the Tool Settings window, click the Create IK Handle option on.

3 In the IK Handle Options section, set Current Solver to ik2Bsolver.

4 Close the Tool Settings window.

5 Create a two bone joint chain. After you press the Enter key, Maya creates an IK twobone handle for it automatically.

You can now pose the joint chain with the IK two bone handle.

Page 291: Maya Character Setup

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

SKELETONS CHARACTER SETUP

291

UNDERSTANDING IK TWO BONE HANDLES

The IK two bone handle is for posing joint chains that consist of three joints (twobones). The IK two bone handle is ideal for posing joint chains that you would like tostay in more or less the same plane, even though that plane can rotate. For example,the shoulder, elbow, and wrist joints of an arm all stay within the same plane.

You can create IK two bone handles for joint chains that consist of more than twobones and three joints. However, the IK handle will treat the joint chain as though itincludes only two bones. The IK handle treats all the joints (and their bones) abovethe second to last joint (the last bone) in the chain’s hierarchy as if they formed onebone.

The rest of this section describes various features of an IK two bone handle. Notethat the features are similar to the features of IK rotate plane handles. You need notunderstand all of these features to use IK two bone handles effectively; however, toget the most out of using IK two bone handles, you should eventually becomefamiliar with all these features.

Page 292: Maya Character Setup

CHARACTER SETUP PART 3

292

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

Start and end joints

The start joint is where the IK handle begins. The start joint is the first joint in thejoint chain that is influenced by the IK handle.The start joint could be the skeleton’sroot joint, or any other joint in the skeleton’s action hierarchy above the end joint.

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

Handle position control gnomon

You control the IK two bone handle’s position by selecting the IK handle’s gnomonand moving it. The joint chain moves as you move the IK handle. (Note that the term“gnomon” refers to Maya’s axial icons; for example, a locator is also a gnomon).

In addition, you can exercise control by manipulating the twist disc (see"Twist disc"on page 296) or by moving the pole vector (see "Pole vector" on page 296).

When you move the IK two bone handle’s position, you indicate where you want theIK handle’s end effector to be.

Start joint

End joint

You can control the IK twobone handle’s position bymoving the handle’s gnomon

Page 293: Maya Character Setup

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

SKELETONS CHARACTER SETUP

293

End effector

By default, the end effector is not displayed, but it is located at the end joint’s localaxis. However, if you like, you can offset the end effector’s position from the endjoint. The end effector is parented to the parent joint of the end joint, influencing allthe joints in the joint chain. To view the hierarchical relationships between the endeffector and the joints, you can view the scene hierarchy with the Hypergraph.

For an IK two bone handle, the goal of the end effector is to reach the IK handle’sposition. As you move the IK two bone handle’s position, the IK two bone solvercalculates how to rotate the joints in the joint chain so that the end effector can reachthe IK handle’s position.

For a joint chain with three joints (two bones), the first and second joints are rotated.If the joint chain has more than three joints, the first and the second to last joints arerotated.

The end effector tries to keep up with the IK handle’s position at all times. However,depending on the fully extended length of the joint chain, the end effector might notbe able to reach IK handle.

Handle wire

End effector located bydefault at the end joint’slocal rotation axis

Handle wire runsthrough all the joints inthe joint chain controlledby the IK handle

Page 294: Maya Character Setup

CHARACTER SETUP PART 3

294

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

The handle wire is the line that runs through all the joints and bones in a joint chaincontrolled by the IK handle. The handle wire begins at the start joint’s local axis andends at the end effector, which is by default at the end joint’s local axis.

Handle vector

The handle vector is the line drawn from the start joint to the IK handle’s endeffector. The end effector is normally located at the IK chain’s end joint.

Rotation disc

The rotation disc is located at the start joint. Orthogonal to the handle vector, therotation disc displays indicators that show the movement of the joint chain. Theseindicators include the joint chain plane indicator (see "Joint chain plane indicator"on page 295), the reference plane indicator (see "Reference plane indicator" on page297), and the twist indicator (see "Twist indicator" on page 297).

Handle vector runsdirectly from start joint toend effector, which is atthe end joint by default.

Rotation disc

Page 295: Maya Character Setup

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

SKELETONS CHARACTER SETUP

295

Joint chain plane

The joint chain plane is the plane that contains the three joints in a three joint (twobone) chain. (If the joint chain has more than three joints, the joint chain plane is theplane that contains the first, the second to last, and the last joints.) By alwayscontaining the joints in the joint chain, the joint chain plane controls how the jointchain can twist. The joint chain plane can rotate about the handle vector. Rotatingthe joint chain plane about the handle vector has the effect of twisting the joint chain.

The joint chain plane is not displayed, but you can infer it from where the jointchain’s joints are located. The joint chain plane’s orientation is indicated by the jointchain plane indicator displayed in the rotation disc.

Joint chain plane indicator

The plane indicator can be thought of as the shadow of the joint chain plane in therotation disc. The plane indicator indicates the orientation of the joint chain planerelative to the reference plane.

Joint chain plane is theplane in which all thejoints approximately lie

Joint chain plane indicatorindicates the orientation of thejoint chain plane

Page 296: Maya Character Setup

CHARACTER SETUP PART 3

296

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

Twist disc

The twist disc is located at the end joint. The twist disc is a manipulator for twistingthe joint chain by rotating the joint chain plane.

Reference plane

For the joint chain plane to rotate and twist the joint chain, the plane must rotaterelative to some other plane so that the degree of twist can be measured. The planethat the joint chain plane rotates relative to is the reference plane. The differencebetween the two planes indicates the amount the joint chain twists. The referenceplane is defined by the handle vector and the pole vector.

Pole vector

Use the twist disc tochange the jointchain’s orientation

Reference plane

Pole vector

Page 297: Maya Character Setup

USING IK TWO BONE HANDLES | 24Understanding IK two bone handles

SKELETONS CHARACTER SETUP

297

The pole vector starts at the start joint, and with the handle vector defines thereference plane.

Because moving the pole vector changes the orientation of the reference plane,moving the pole vector can also change the orientation of the joint chain directly, justas manipulating the twist disc can change the orientation of the joint chain. This isbecause the joint chain’s degree of orientation, or twist, is defined as the difference inorientation between the reference plane and the joint chain plane.

During posing, if the handle vector and the pole vector happen to cross each other orpoint in exactly opposite directions, the joint chain can suddenly flip. The joint chaincan suddenly flip because when the vectors cross or point in opposite directions, theorientation of the reference plane relative to the joint chain plane suddenly changesby 180 degrees. You can prevent the flipping by moving the pole vector so that thehandle vector will not cross it or point in the opposite direction of it.

Reference plane indicator

The reference plane indicator is the green dot located on the twist disc. The referenceplane indicator indicates the orientation of the reference plane. You can think of theplane indicator as indicating the shadow of the reference plane in the rotation disc.

Twist indicator

Reference planeindicator

Twist indicator

Page 298: Maya Character Setup

CHARACTER SETUP PART 3

298

USING IK TWO BONE HANDLES | 24Understanding IK two bone solver behavior

On the rotation disc, the green arc between the reference plane indicator and thejoint chain plane indicator is the twist indicator. The twist indicator shows theorientation of the joint chain plane relative to the reference plane.

Related MEL commandsYou can use MEL commands to create hotkeys, custom shelf buttons, and scripts. Byusing MEL commands you can improve your workflow, and access more of Maya’sfeatures. MEL commands related to IK two bone handles include the following:

• ikHandle

• ikHandleCtx

• ikHandleDisplayScale

• ikSolver

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for posing with IK two bone handles can include thefollowing:

• IK handle node (default name: ikHandlen).

• IK two bone solver node (default name: ik2Bsolver).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

UNDERSTANDING IK TWO BONE SOLVER BEHAVIOR

The two bone solver first looks at the position (the translate x, y, and z attributes) ofthe goal. Next, the solver figures out how to move the position of the end effector asclose to the goal’s position as possible. To do that, the solver figures out how to bestrotate the joints in the IK handle’s joint chain. The two bone solver does not look atthe orientation (the rotate x, y, and z attributes) of the goal. That is, the two bonesolver figures out how to rotate the joints based on the goal’s position, but not on thegoal’s orientation. The orientation of the entire joint chain can be controlled bytwisting the joint chain with the twist disc.

The IK two bone solver is for posing joint chains that consist of three joints (twobones). If the joint chain has more than three joints, the solver rotates only the firstand second to last joints.

Using the solver in a non-uniform space (where shearing effects occur) can produceunpredictable results.

Note that the joint chain controlled by an IK handle using a two bone solver cannothave any other IK handles running through any of its joints.

Maya includes the source code for the IK two bone solver plug-in. For moreinformation, see "IK two bone solver plug-in source code" on page 306.

Page 299: Maya Character Setup

USING IK TWO BONE HANDLES | 24Creating IK two bone handles

SKELETONS CHARACTER SETUP

299

CREATING IK TWO BONE HANDLES

To create an IK handle, you first need to set up the IK two bone solver. Next, you canuse the IK Handle Tool to create an IK two bone handle. The characteristics of the IKhandle you create depend on the IK Handle Tool’s tool settings.

Setting up the IK two bone solverTo set up the IK two bone solver for use, you must load the plug-in for it(ik2Bsolver.so), and then create the solver node for it.

To load the plug-in:

1 Select Window > Settings/Preferences > Plug-in Manager.

The Plug-in Manager window is displayed.

2 For ik2Bsolver.so, click loaded. To have it load automatically when you start Maya,click auto load.

Note that you can load the ik2Bsolver from the Command Line by entering:

loadPlugin ik2Bsolver;

To create the solver node:

1 In the Command Line, enter the following:

createNode ik2Bsolver -n ik2Bsolver;

Maya creates the solver node for the ik2Bsolver. Note that Maya lists the node in theChannel Box after you enter the command.

Alternatively, you can enter this shorter command:

ik2Bsolver;

This shorter command also ensures that the ik2Bsolver node will be recreated afteryou select File > New.

Specifying IK Handle Tool’s tool settings

To specify tool settings:

1 Select Skeleton > IK Handle Tool ❒.

2 The Tool Settings window is displayed.

3 Set the Tool Defaults tab’s IK Handle Options as follows:

IK Handle Options

Current Solver Specifies the IK handle’s solver. To create an IK two bone handle, be sure ik2Bsolveris selected.

Autopriority (Does not apply to IK two bone handles.)

Solver Enable Specifies whether the IK solver will be on, enabling inverse kinematics (IK) posing.Default is on.

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector.Default is on.

Page 300: Maya Character Setup

CHARACTER SETUP PART 3

300

USING IK TWO BONE HANDLES | 24Posing IK two bone handles

Sticky Specifies that the IK handle will stick to its current position and orientation whileyou pose the skeleton with other IK handles or by translating, rotating, or scalingjoints directly. Default is off.

Priority Specifies the priority of the IK handle. All IK handles with a lower number priorityare solved before any IK handles with a higher numbered priority. (All handles ofpriority 1 are solved before any handles of priority 2 and so on.) Priorities must begreater than zero.

Weight (Does not apply to IK two bone handles.)

POWeight (Does not apply to IK two bone handles.)

• Click Reset Tool to reset to the default tool settings.

or

• Click Close to close the Tool Settings window.

Note that you can change the tool settings whenever you are using the Joint Tool byselecting Windows > Settings/Preferences > Tool Settings.

Creating an IK two bone handleBefore you create an IK single chain handle, be sure to check the IK Handle Tool’stool settings (select Skeleton > IK Handle Tool ❒). Current Solver should be set toik2Bsolver.

To create an IK two bone handle:

1 Select Skeleton > IK Handle Tool.

2 In the workspace, click on the joint where you want to start the IK two bone handle.

3 Click on the joint where you want to end the IK two bone handle.

An IK two bone handle is created based on the IK Handle Tool’s previously set toolsettings (Current Solver should have been set to ik2Bsolver).

POSING IK TWO BONE HANDLES

You can pose an IK two bone handle as described in the following topics:

Moving the handle

To move the handle:

1 Select the IK two bone handle (default name: ikHandlen).

2 Click the Move Tool on (default shortcut: w key).

3 In the workspace, while pressing the left or middle mouse button, move the IKhandle as desired. Doing so calculates the rotations of the joints controlled by the IKhandle.

Manipulating the pole vector

To manipulate the pole vector:

1 Select the IK two bone handle (default name: ikHandlen).

Page 301: Maya Character Setup

USING IK TWO BONE HANDLES | 24Editing IK two bone handles

SKELETONS CHARACTER SETUP

301

2 Click the Show Manipulator Tool on (default shortcut: t key).

The IK handle’s pole vector, twist disc, and rotation disc are displayed.

3 In the workspace, while pressing the left or middle mouse button, move the polevector as desired. Doing so calculates the rotations of the joints controlled by the IKhandle.

Note that as you move the pole vector, the rotation disc’s reference plane indicator(by default, a green dot along the disc) moves to reflect the movement of the polevector.

For most applications, such as controlling a character’s arm, you can fully control theaction of the IK handle by manipulating the pole vector. For convenience, you canconstrain the pole vector to some other object (for example, a locator) so that you canmore readily control the pole vector to pose the joint chain. For more informationabout constraining the pole vector to some other object, see Chapter 36, “Using PoleVector Constraints.”

Manipulating the twist disc

To manipulate the twist disc:

1 Select the IK two bone handle (default name: ikHandlen).

2 Click the Show Manipulator Tool on (default shortcut: t key).

The IK handle’s pole vector, twist disc, and rotation disc are displayed. Notice thatthe twist disc is blue by default.

3 Click on the twist disc.

The twist disc now turns yellow by default.

4 While pressing the left or middle mouse button, rotate the twist disc as desired.

The joint chain controlled by the IK handle rotates about the handle vector. Note thatthis action changes the value of the IK handle’s Twist channel.

Controlling joint chain flippingDuring posing, if the handle vector and the pole vector happen to cross each other orpoint in exactly opposite directions, the joint chain can suddenly flip. The joint chaincan suddenly flip because when the vectors cross or point in opposite directions, theorientation of the reference plane relative to the joint chain plane suddenly changesby 180 degrees. You can prevent the flipping by moving the pole vector so that thehandle vector will not cross it or point in the opposite direction of it (see"Manipulating the pole vector" on page 300).

EDITING IK TWO BONE HANDLES

You can edit IK two bone handles as described in the following topics:

Editing IK two bone handle channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit an IK two bone handle’s channels.

Page 302: Maya Character Setup

CHARACTER SETUP PART 3

302

USING IK TWO BONE HANDLES | 24Editing IK two bone handles

To edit channels with the Channel Box:

1 Select an IK handle (default name: ikHandlen).

Note that the Channel Box lists the IK handle’s IK solver under INPUTS. An IK twobone handle should have the ik2Bsolver listed. You can edit the IK solver attributeswith the Attribute Editor.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Translate X, Y, Z Specifies the position of the IK handle.

Rotate X, Y, Z Specifies the orientation of the IK handle.

Scale X, Y, Z Specifies the scaling of the IK handle. Note that the scale of the IK handle does notaffect how the IK handle poses the joint chain.

Visibility Specifies whether the IK handle is displayed. Enter on or off.

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain; the joint chain can only be posed by forward kinematics(FK). Enter on or off.

Pole Vector X,Y, Z Specifies the position of the pole vector’s end point. You can control the pole vector’s

position by moving it directly (see "Manipulating the pole vector" on page 300).

Offset (Does not apply to IK two bone handles.)

Roll (Does not apply to IK two bone handles.)

Twist Specifies the rotation of the joint chain plane relative to the reference plane. Theeffect of this is to rotate the joint chain controlled by the IK two bone handle. Youcan also control the rotation of the joint chain by manipulating the twist disc (see"Manipulating the twist disc" on page 301).

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing IK two bone handle attributes

To edit attributes with the Attribute Editor:

1 Select the IK handle node (default name: ikHandlen).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, SkeletonInfo, IK Handle Attributes, IK Solver Attributes, Pivots, Limit Information, Display,Node Behavior, and Extra Attributes.

Transform Attributes

Translate Specifies the position of the IK two bone handle.

Page 303: Maya Character Setup

USING IK TWO BONE HANDLES | 24Editing IK two bone handles

SKELETONS CHARACTER SETUP

303

Rotate Specifies the rotation of the IK two bone handle. Note that the rotation of the handledoes not affect the posing of the joint chain.

Scale Specifies the scaling of the IK two bone handle. Note that the scaling of the handledoes not affect the posing of the joint chain.

Shear Specifies the shearing of the IK two bone handle. Note that the shearing of thehandle does not affect the posing of the joint chain.

Rotate Order Specifies the IK handle’s rotation order. For example, if the rotation order is xyz, thehandle first rotates about its X-axis, then its Y-axis, and finally its Z-axis. Select xyz,yzx, zxy, xzy, yxz, zyx. Default is xyz.

Rotate Axis Specifies the orientation of the IK handle to the orientation of the start joint’s localrotation axis.

InheritsTransform Specifies whether the IK handle can be affected by the translation, rotation, or

scaling of a parent object.

Skeleton Info

Start Joint Informs you of the name of the start joint of the joint chain controlled by the IK twobone handle. Click on the > icon button to get the Attribute Editor for the start joint.

End Effector Informs you of the name of the IK handle’s end effector. Click on the > icon button toget the Attribute Editor for the end effector. If you do so, note that the end effector’sTranslate X, Y, and Z attributes are locked. They are locked because the end effectoris parented to the end joint of the joint chain controlled by the IK two bone handle.

IK Handle Attributes

Snap Enable Specifies whether the IK handle will snap back to the IK handle’s end effector. Clickon or off. Default is on.

Stickiness Specifies that the IK handle will stick to its current position while you pose theskeleton with other IK handles or by translating, rotating, or scaling joints directly.Click on or off. Default is off.

Priority Specifies the priority of the IK handle. All IK handles with a lower number priorityare solved before any IK handles with a higher numbered priority. (All handles ofpriority 1 are solved before any handles of priority 2 and so on.) Priorities must begreater than zero.

Weight (Does not apply to IK two bone handles.)

Po Weight (Does not apply to IK two bone handles.)

IK Solver Attributes

Solver Enable Specifies whether the IK handle’s IK solver is on or off. If off, the IK handle has noeffect on the joint chain. Turning Solver Enable off turns off IK posing so that youhave to use forward kinematics (FK) posing. Enter on or off.

IK Solver Specifies the IK handle’s solver. For an IK two bone handle, ik2Bsolver should beselected.

Pole Vector Specifies the position of the pole vector’s end point. You can control the pole vector’sposition by moving it directly (see "Manipulating the pole vector" on page 300).

Page 304: Maya Character Setup

CHARACTER SETUP PART 3

304

USING IK TWO BONE HANDLES | 24Editing IK two bone handles

Twist Specifies the rotation of the joint chain plane relative to the reference plane. Theeffect of this is to rotate the joint chain controlled by the IK two bone handle. Youcan also control the rotation of the joint chain by manipulating the twist disc (see"Manipulating the twist disc" on page 301).

Pivots

Specifies whether to display the IK handle’s rotate pivot and scale pivot. The LocalSpace and World Space sections specify the pivot positions in local space (relative tothe IK handle) and world space.

Limit Information

Specifies limits on the IK handle’s translation, rotation, and scaling attributes. Selectthe Translate, Rotate, or Scale sections.

Translate

Trans Limit X Specifies translation limits on the IK handle’s Translate X attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Y Specifies translation limits on the IK handle’s Translate Y attribute.Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Trans Limit Z Specifies translation limits on the IK handle’s Translate Z attribute. Use the < and >icon buttons to give the Min or Max limits the value in the Current field. Check on oroff to activate the Min or Max limit.

Rotate

Rot Limit X Specifies rotation limits on the IK handle’s Rotate X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Y Specifies rotation limits on the IK handle’s Rotate Y attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Rot Limit Z Specifies rotation limits on the IK handle’s Rotate Z attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale

Scale Limit X Specifies scaling limits on the IK handle’s Scale X attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Y Specifies scaling limits on the IK handle’s Scale Y attribute. Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Scale Limit Z Specifies scaling limits on the IK handle’s Scale Z attribute.Use the < and > iconbuttons to give the Min or Max limits the value in the Current field. Check on or offto activate the Min or Max limit.

Page 305: Maya Character Setup

USING IK TWO BONE HANDLES | 24Deleting IK two bone handles

SKELETONS CHARACTER SETUP

305

Display

Specifies display attributes for the IK handle’s selection handle, local axis, positionoffset values for the selection handle, the show manipulator default, visibility, andtemplate. Bounding Box Information and Drawing Overrides not applicable.

Node Behavior

Provides selections for node behavior attributes, including Caching and Node State.

Extra Attributes

(No extra attributes by default.)

Editing IK two bone solver attributes

To edit attributes with the Attribute Editor:

1 Select the IK two bone solver (default name: ik2Bsolver).

Note that changes to solver will affect all the IK handles that use it.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: IK Solver Attributes, NodeBehavior, and Extra Attributes.

IK Solver Attributes

Max Iterations (Does not apply to IK two bone handles.)

Tolerance (Does not apply to IK two bone handles.)

Node Behavior

Provides selections for node behavior attributes, including Caching and Node State.

Extra Attributes

(No extra attributes by default.)

DELETING IK TWO BONE HANDLES

To delete an IK two bone handle:

1 Select the IK two bone handle (default name: ikHandlen).

2 Select Edit > Delete (default shortcut: Backspace key).

The IK handle is deleted. However, note that the handle’s IK two bone solver is notdeleted. The solver is still available for the other IK two bone handles that use it.

Page 306: Maya Character Setup

CHARACTER SETUP PART 3

306

USING IK TWO BONE HANDLES | 24IK two bone solver plug-in source code

IK TWO BONE SOLVER PLUG-IN SOURCE CODE

The source code for the IK two bone solver is available in the devkit directory’sik2Bsolver directory. The source code provides an example of how you can createyour own IK solver plug-in. Further, by extracting the core algorithm, you canreplicate the exact behavior of the IK solver in a games engine. For moreinformation, please read the README file in ik2Bsolver directory.

Page 307: Maya Character Setup

PART 4

SKINNING

Page 308: Maya Character Setup
Page 309: Maya Character Setup

SKINNING CHARACTER SETUP

309

25 INTRODUCING SKINNING

Skinning is setting up a model’s deformable objects so that they can be deformed byskeletons.

UNDERSTANDING SKINNING

Skinning is the process of setting up a character’s model so that it can be deformedby a skeleton. (For more information on skeletons, see Chapter 18, “IntroducingSkeletons.”) You skin a model by binding a skeleton to the model. You can bind amodel to a skeleton by a variety of skinning methods, including smooth skinningand rigid skinning. Smooth skinning and rigid skinning are direct skinning methods.You can also use indirect skinning methods, which combine the use of lattice or wrapdeformers with either smooth or rigid skinning.

Deformable objects and skin objectsDuring skinning, you bind a model’s deformable objects to a skeleton. Afterskinning, the model is called the character’s skin, and the deformable objects arecalled skin objects.

Page 310: Maya Character Setup

CHARACTER SETUP PART 4

310

INTRODUCING SKINNING | 25Understanding skinning

A deformable object is any object whose structure is defined by NURBS controlvertices (CVs), polygonal vertices, or lattice points. NURBS curves, NURBS surfaces,polygonal surfaces (meshes), and lattice deformers are all deformable objects. Acharacter’s model can consist of one deformable object (for example, a largepolygonal surface) or of groups of deformable objects (for example, groups ofNURBS surfaces).

Typically, a character’s model consists of deformable objects (typically NURBSsurfaces, polygonal surfaces, or both) organized in hierarchical groups. Theorganization reflects the structure of the character’s appearance, and should be basedon how the character will be animated. For example, a NURBS model could consistof groups of NURBS surfaces that make up the character’s feet, legs, torso, arms,hands, neck, and head.

Direct skinning methodsThe direct skinning methods include smooth and rigid skinning.

Smooth skinningSmooth skinning provides smooth, articulated deformation effects by enablingseveral joints to influence the same deformable object points (CVS, vertices, or latticepoints). For more information, see Chapter 26, “Smooth Skinning.”

Rigid skinningRigid skinning provides articulated deformation effects by enabling joints toinfluence sets of deformable object points. For more information, see Chapter 27,“Rigid Skinning.”

Indirect skinning methodsIndirect skinning methods include lattice skinning and wrap skinning.

Lattice skinningIn lattice skinning, you skin the influence lattices of lattice deformers. Theseinfluence lattices in turn influence other deformable objects (for example, NURBSsurfaces or polygonal meshes). An advantage of lattice skinning is that you caneasily make adjustments to the deformation by tweaking influence lattice points.

For more information about lattice deformers, see Chapter 5, “Using LatticeDeformers.”

Wrap skinningIn wrap skinning, you skin the wrap influence objects of wrap deformers. Thesewrap influence objects in turn influence other deformable objects. An advantage ofwrap skinning is that you can skin low-res objects and use them as the character’slow-res model, and then later introduce the high-res model and deform its objectswith the low-res objects.

For more information about wrap deformers, see Chapter 17, “Using WrapDeformers.”

Page 311: Maya Character Setup

INTRODUCING SKINNING | 25Editing skin point set memberships

SKINNING CHARACTER SETUP

311

Bind poseWhen you bind skin, Maya creates a bind pose node (default name: bindPosen) foreach skeleton. For each skeleton, the bind pose node keeps track of the joints’transformation attributes (translation, rotation, and scale) when skinning takes place.The bind pose node also keeps track of the transformation attributes of any influenceobjects. The bind pose node facilitate putting the skeleton back into the bind pose atany time after binding skin.

The use of constraints, expressions, or IK handles with keys set can restrict going tothe bind pose. If you are using constraints, expressions, or IK handles and you wantto go back to the bind pose, you will need to disable the nodes that carry out thesefeatures. They can restrict going to bind pose because they can lock the attributesthey affect, preventing them from being set to the bind pose values.

Double transformation effectsA double transformation effect is where skin object points are subjected to the actionof a joint more than once, resulting in extreme, undesirable shape changes. Doubletransformation effects can occur if the skin object points are also being affected by adeformer that is in turn affected by the joint’s actions. For example, if after skinningyou create a cluster deformer to further control certain skin object points and thenparent the cluster deformer handle to the joint that also affects the skin object points,when you move the joint the points will be affected twice over by the joint’s action.One way to remedy this is to organize the affected points into a set that is onlyaffected by the cluster deformer, which remains parented to the joint.

EDITING SKIN POINT SET MEMBERSHIPS

Skinning organizes deformable object points (CVs, vertices, or lattice points) intoskin point sets. You can edit these sets in the same ways that you can edit deformersets. For more information, see Chapter 3, “Introducing Deformers,” "Editingdeformer set membership" on page 46.

CHANGING A SKINNED OBJECT’S DEFORMATION ORDER

When you use skinning with one or more deformers to deform an object, the finaleffect of the deformations can vary depending on the order in which thedeformations occur. By default, the deformations occur in the order that skin wasbound and the deformers were created. The skinning or deformer algorithm nodecreated first deforms the object first, and the algorithm node created last deforms theobject last. However, you can change, or re-order, the deformation order to get theeffect you want.

To change skinned object’s deformation order:

1 In the scene, move the pointer to the object being deformed and press the rightmouse button.

A marking menu is displayed.

2 From the marking menu, select Inputs > Complete List.

The List of history operations window is displayed for the selected object.

Page 312: Maya Character Setup

CHARACTER SETUP PART 4

312

INTRODUCING SKINNING | 25Point tweaking skinned objects

Note that by default smooth skinning algorithm nodes are named skinClustern, andrigid skinning algorithm nodes are named jointClustern.

3 Move the pointer over the name of the skinning or deformer algorithm node whoseorder you want to change. Press the middle mouse button, drag it over the name ofthe algorithm node you want the node to precede, and release the mouse button.

POINT TWEAKING SKINNED OBJECTS

Point tweaking skin objects is moving or setting keys on the individual skin points ofa skinned object. When you tweak the points of a skinned object, Maya automaticallyprevents the unexpected effects that can occur when you manipulate the object.Maya does so by applying the tweaks to the object before applying any deformationsto the object.

When you bind skin, Maya creates tweak nodes as well as nodes for the skinnedobjects. In the dependency graph, Maya places the tweak nodes upstream from thenodes for the smooth skin objects so that any point tweaking is carried out before theevaluation of the smooth skin nodes or rigid skin nodes. This placement means that,by default, a skinned object’s deformation order includes point tweaking first.

If you prefer, you can change the deformation order so that point tweaking does notoccur first.

Also, if you do some point tweaking and then want to check how the skinned objectdeforms without the tweaking, you can disable the tweak node.

To change point tweaking’s deformation order:

1 In the scene, move the pointer to the skinned object and press the right mousebutton.

A marking menu is displayed.

Avoid changing the number of points after skinning

You can do point tweaking on objects after skinning, but you should avoidchanging the number of the object’s points (for example, CVs, vertices, orlattice points). Changing the number of points can lead to unexpecteddeformation effects.

Page 313: Maya Character Setup

INTRODUCING SKINNING | 25Editing node behavior to improve performance

SKINNING CHARACTER SETUP

313

2 From the marking menu, select Inputs > Complete List.

The List of history operations window is displayed for the selected object.

3 Move the pointer over the name of the tweak node (default name: tweakn) whoseorder you want to change. Press the middle mouse button, drag it over the name ofthe operation that is where you want point tweaking to take place, and release themouse button.

To disable a tweak node:

1 Open the tweak node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Set Node State to HasNoEffect.

To enable a tweak node:

1 Open the tweak node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Set Node State to Normal.

EDITING NODE BEHAVIOR TO IMPROVE PERFORMANCE

You don’t need to know about node behavior in order to do skinning effectively. Ifyou are new to skinning, you can skip this section. However, familiarity with nodebehavior can provide you with more control over the performance of skinnedobjects.

For each object in your scene, if there has been any change to its node or any of thenodes in its history (its upstream or downstream nodes), Maya will evaluate thenodes and update the display. A skinned object has more nodes in its history than anobject unaffected by skinning or deformers. If you have many skinned objects inyour scene, you could improve the display performance by editing the nodebehavior attributes of the skinned nodes.

Understanding node behavior attributesThe node behavior attributes include Caching and Node State.

Caching Specifies that Maya store the results of upstream evaluations, and then provide thoseresults to the node. This saves Maya from having to re-evaluate the upstream nodesevery time the node needs the results. If there are no changes to the upstream nodes,then this setting can improve display performance with no loss of results. However,note that caching uses more memory than would otherwise be used, which couldadversely affect performance. Also, if there are changes to upstream nodes, morememory is allocated and then freed during each deformation, which could alsoadversely affect display performance.

Node State Set Node State to Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, or Waiting-Blocking.

Normal Specifies that Maya evaluate and display the deformation. Maya will evaluate thenode as usual. This is the default.

HasNoEffect Specifies that Maya prevent the deformation, but display the object. Maya willevaluate the nodes in the node’s history, but not the node itself.

Page 314: Maya Character Setup

CHARACTER SETUP PART 4

314

INTRODUCING SKINNING | 25Workflow summary

Blocking Specifies that Maya prevent the deformation, and not display the object. Maya willnot report the results of any evaluations of upstream nodes to this node.

Waiting-Normal (For Maya internal use only.) Specifies that if the dependency graph evaluationrefresh performance setting(Window > Settings/Preferences > Performance Settings)is set to Demand or Release, the node will take the Normal state when you clickUpdate or release the mouse button.

Waiting-HasNoEffect (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theHasNoEffect state when you click Update or release the mouse button.

Waiting-Blocking (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theBlocking state when you click Update or release the mouse button.

Editing node behavior

To set node behavior:

1 Open the node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Click Caching on or off.

4 Select the Node State as Normal, HasNoEffect, or Blocking. (The Waiting-Normal,Waiting-HasNoEffect, and Waiting-Blocking states are for Maya’s internal use.)

5 Close the Attribute Editor.

WORKFLOW SUMMARY

Once you’ve created a model and skeleton for your character, you’re ready to skinthe model so that the skeleton’s actions can deform it. For skinning, you can eitheruse smooth skinning or rigid skinning. For more information on smooth skinning,see Chapter 26, “Smooth Skinning.” For more information on rigid skinning, seeChapter 27, “Rigid Skinning.” You can also skin the influence lattices of latticedeformers or the wrap influence objects of wrap deformers either by smooth or rigidskinning. Skinning can be an iterative process in which you might have to edit andrefine the skeleton and the model’s deformable objects to get the right skindeformation effects.

Page 315: Maya Character Setup

SKINNING CHARACTER SETUP

315

26 SMOOTH SKINNING

Smooth skinning provides smooth, articulated deformation effects by enablingseveral joints to influence the same deformable object points. If you’d like to exploresome examples now, see "Examples" on page 341.

Page 316: Maya Character Setup

CHARACTER SETUP PART 4

316

SMOOTH SKINNING | 26Understanding smooth skinning

UNDERSTANDING SMOOTH SKINNING

Smooth skinning makes smooth, articulated deformation effects availableimmediately after you bind skin. The smoothing effects around joints areautomatically set up when you bind skin. Maya provides smooth deformation effectsby allowing several nearby joints to have varying influences on the same skin points(NURBS CVs, polygonal vertices, or lattice points). By default, their influence varieswith distance, but you can edit or paint the skin point weighting on a joint-by-jointbasis.

Unlike rigid skinning, with smooth skinning you don’t have to use deformers,flexors, or edit skin point set memberships to get smooth deformation effects. Thesmoothing effects around joints are automatically set up when you bind. The effectof each joint on a smooth skin point depends on the joint’s proximity to the point.

Smooth skin objects and pointsDuring smooth skinning, you bind a model’s deformable objects to a skeleton. Aftersmooth skinning, the deformable objects are called smooth skin objects (or skinobjects, or skin). The points (NURBS CVs, polygonal vertices, or lattice points) of thedeformable objects are then referred to as smooth skin points, or skin points.

The skin points can automatically avoid the improper influence of joints that are inclose proximity but are far in terms of the skeleton’s hierarchy. For example, you canavoid having to worry about hand skin points being influenced by a nearby thighjoint.

Smooth skin point weightsDuring smooth skinning, for each smooth skin point (for example, each CV of eachNURBS surface), Maya assigns a smooth skin point weight for each joint thatcontrols the influence of that joint on each point.

With smooth skinning, morethan one joint can influenceeach CV to provide smoothbending effects. You do notneed to use flexors or latticedeformers.

Page 317: Maya Character Setup

SMOOTH SKINNING | 26Understanding smooth skinning

SKINNING CHARACTER SETUP

317

If you want to change the results of smooth skinning to create unique skeletaldeformation effects, you can edit or paint the weights of smooth skinning at thepoint level (the CV, vertex, or lattice point level). Additionally, to add furtherdeformation effects to smooth skin, you can use Maya’s deformers and smooth skininfluence objects.

Joints closer to a smooth skin point will have a greater influence than joints far fromthe skin point. The joint closest to a smooth skin point will have the greatestinfluence.

Which joints have the next greatest influence can depend on whether you wantMaya to consider the skeleton’s hierarchy during binding or to ignore the skeleton’shierarchy during binding.

Weighting based on skeleton hierarchyIf you tell Maya to consider the skeleton’s hierarchy, the joint that will have the nextgreatest influence will be a relative (parent or child) of the closest joint. For example,if your character’s arms are hanging down so that the forearm bones are near the hipbones, you can make sure that the skin points for the arms do not come under theinfluence of the hip bones. This is because the hip bones are not near the forearmbones in the skeleton’s hierarchy even though the distance between them is small.

When you bind skin, you tell Maya to consider the skeleton’s hierarchy by settingthe Bind Method option to Closest Joint (see "Setting smooth bind options" on page319).

Weighting based only on joint proximityIf you tell Maya to ignore the skeleton’s hierarchy (set Bind Method to ClosestDistance), the next joint that will have the next greatest influence on a smooth skinpoint’s weight is always the next closest joint to the point. Depending on thestructure of the skeleton and the placement of the model, this joint could be muchhigher or lower in the skeleton’s hierarchy than the closest joint. For example, if yourcharacter’s arms are hanging down so that the forearm bones are near the hip bones,the hip bones could have the second greatest influence over the skin points for thearms. This could lead an inappropriate influence on the weights of the arm’s skinpoints.

When you bind skin, you tell Maya to ignore the skeleton’s hierarchy by setting theBind Method option to Closest Distance (see "Setting smooth bind options" on page319).

Weighting can be influenced by varying number of jointsYou can control how many of the skeleton’s joints can influence a smooth skinpoint’s weight. A typical value for a character would be a maximum of four or fivejoints that can influence a given smooth skin point.

When you bind skin, you tell Maya how many joints can influence a smooth skinpoint by specifying the Max Influences option (see "Setting smooth bind options" onpage 319).

Weighting varies based on joint distanceThe influence of each joint on a smooth skin point’s weight varies with the distancebetween the skin point and the joint.

Page 318: Maya Character Setup

CHARACTER SETUP PART 4

318

SMOOTH SKINNING | 26Understanding smooth skinning

Note that if the joint has a bone, the influence of the joint extends along the entirebone, from the center of the joint to the end of the bone. The joint’s influence canextend to all the points near the entire length of the bone. If the joint is an end joint(has no bone), then the joint’s influence just extends forward from the center of thejoint.

When you bind skin, you tell Maya how the weighting varies based on joint distanceby specifying the Dropoff Rate option (see "Setting smooth bind options" on page319).

Smooth skin point setsA set of smooth skin points is created for each deformable object. The set contains allthe points (NURBS CVs, polygonal vertices, or lattice points) that can be influencedby the skeleton.

For more information on sets and partitions, refer to Using Maya: Essentials.

Smooth skin influence objectsWith smooth skinning, you can use NURBS or polygonal objects as smooth skininfluence objects to further shape and control the deformation of smooth skinnedobjects. Such influence objects provide deformation effects in a manner similar to thewrap deformer’s wrap influence objects. You can use the influence objects to restrictdeformation (for example, undesirable shoulder deformations) as well as to createdeformations (for example, bulging muscles).

For more information on using smooth skin influence objects, see "Using smoothskin influence objects" on page 338.

Page 319: Maya Character Setup

SMOOTH SKINNING | 26Binding smooth skin

SKINNING CHARACTER SETUP

319

Related MEL commandsMEL commands related to smooth skinning include the following:

• skinCluster

• skinPercent

• copySkinWeights

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for smooth skinning can include the following:

• For each deformable object, Maya creates a skin cluster node (default name:skinClustern).

• A bind pose node that saves a skeleton’s bind pose (default name: bindPosen).

• Tweak nodes that carry out point tweaking on deformable objects after skinning(default name: tweakn).

• Smooth skin point set nodes (default name: jointnSetm).

• Smooth skin partition node (default name: jointnskinPartition).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

BINDING SMOOTH SKIN

Binding smooth skin includes setting the smooth bind options, binding skin, andthen checking the binding by exercising the skeleton.

If you’d like to explore an example of binding smooth skin, see "Skinning a cylinderby smooth skinning" on page 341.

Setting smooth bind options

To set bind options:

1 If you also want to bind skin now, select the skeleton (or joints) and then thedeformable object(s) you want to bind.

2 Select Skin > Bind Skin > Smooth Bind ❒.

The Smooth Bind Skin Options window is displayed.

3 Specify the Bind to, Bind Method, Max Influences, and Dropoff Rate options:

Bind to Specifies whether to bind to an entire skeleton or only to selected joints. Selectionsinclude Complete Skeleton or Selected Joints.

Complete Skeleton specifies that the selected deformable objects will be bound to theentire skeleton, from the root joint on down through the skeleton’s hierarchy, even ifyou have selected some joint other than the root joint. Binding by complete skeletonis the usual way to bind a character’s skin.

Selected Joints specifies that the selected deformable objects will be bound to onlythe selected joints, not the entire skeleton.

Page 320: Maya Character Setup

CHARACTER SETUP PART 4

320

SMOOTH SKINNING | 26Binding smooth skin

Select either Complete Skeleton or Selected Joints. Default is Complete Skeleton.

Bind Method Specifies whether joints will influence nearby skin points based on the skeleton’shierarchy, or only on joint proximity to skin points. Selections include Closest Jointor Closest Distance.

Closest Joint specifies that joint influence is based on the skeleton’s hierarchy. Incharacter setup, you will usually want to use this binding method because it canprevent inappropriate joint influences. For example, this method can prevent a rightthigh joint from influencing nearby skin points on the left thigh.

Closest Distance specifies that joint influence is based only on proximity to the skinpoints. When binding skin, Maya ignores the hierarchy of the skeleton. In charactersetup, you will usually want to avoid this binding method because it can causeinappropriate joint influences. For example, this method can cause a right thigh jointto influence nearby skin points on the left thigh.

Select either Closest Joint or Closest Distance. Default is Closest Joint.

With either Closest Joint or Closest Distance, you can limit the number of joints thatinfluence nearby skin points by setting Max Influences. You can also limit the joints’range of influence by specifying Dropoff Rate.

Max Influences Specifies the number of joints that can influence each skin point. Default is 5, whichis a good choice for most characters. (You can also limit the range of joint influenceby specifying the Dropoff Rate.)

Dropoff Rate Specifies how rapidly the influence of each joint on skin points will decrease with thedistance from each joint (and the joint’s bone). The greater the Dropoff Rate, themore rapid the decrease in influence with distance. The lower the Dropoff Rate, thefurther the influence of each joint. When you bind skin, the Dropoff Rate applies toall the selected joints. Use the slider to specify values between 0.1 and 10. You canenter values up to 100, but values between 0.1 and 10 are ideal for most situations.Default is 4, which provides good deformation effects for most characters.

After binding skin, you can use the Paint Skin Weights Tool to edit the influence ofjoints in an intuitive manner. For more information, see "Painting smooth skin pointweights" on page 327.

4 Click Bind to bind skin.

or

Click Save to save creation options without binding skin.

or

Click Reset to reset to default skin cluster options.

To bind smooth skin:

1 Select the skeleton (or joints), and then select the deformable objects you want tobind.

2 Select Skin > Bind Skin > Smooth Bind.

Maya binds skin using the previously set smooth bind options. For each deformableobject, Maya creates a skin cluster node, making each object a smooth skin object.

Page 321: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

321

Checking the bindingExercise the skeleton to check the smooth skin deformation effects. Rotate theskeleton’s joints to view the smooth skin’s behavior. As you exercise the skeleton, attimes you might want to go back to the bind pose. For more information on going tothe bind pose, see "Going to the bind pose" on page 321.

As you check the binding, you may find that you want to adjust the smooth skin’sbehavior.

Adjusting smooth skin behaviorIf you don’t like the smooth skin’s behavior, you can detach the skin, edit theskeleton or the deformable objects, set new binding options, and then bind again.Skinning can be an iterative process of checking the binding, detaching, editing theskeleton, and then binding again. For more information on detaching skin, see"Detaching smooth skin" on page 337.

However, if you just want to edit the smooth bind options (for example, MaxInfluences and Dropoff Rate) without detaching and binding again, you can do so.For more information, see "Editing maximum influences" on page 322, and "Editingjoint smooth skin attributes" on page 322.

To change the smooth skinning deformation effects, you can edit the skin pointweights with the Component Editor or the Paint Skin Weights Tool. As you checkthe binding, you can use the Paint Skin Weights Tool to view joint influences andchange them by painting. This tool provides an intuitive way to modify thedeformation effects. For more information, see "Painting smooth skin point weights"on page 327.

Note that when you edit joint smooth skin attributes and change Dropoff attributes,you then have to have Maya recalculate the affected skin point weights. In turn, thiscan alter any other changes you might have made to the skin point weights.Consequently, it’s a good practice to edit the Dropoff attributes first, and thenproceed to editing and painting the skin point weights.

You can also control smooth skinning deformation effects with smooth skininfluence objects. A smooth skin influence object can be any NURBS surface, NURBScurve, or polygonal surface (mesh). For more information, see "Using smooth skininfluence objects" on page 338.

EDITING SMOOTH SKIN

You can edit smooth skin as described in the following sections. Editing smooth skincan also involve using smooth skin influence objects. For more information, see"Using smooth skin influence objects" on page 338.

Going to the bind poseThe bind pose is the pose that the skeleton is in when you bind skin. When you posea character’s skeleton after skinning, the skeleton’s actions cause deformations to theskin. The only pose that does not cause deformations to the skin is the bind pose.

You must return to the bind pose if you decide to bind additional objects or addadditional influence objects.

Page 322: Maya Character Setup

CHARACTER SETUP PART 4

322

SMOOTH SKINNING | 26Editing smooth skin

Note that if you bound smooth skin to selected joints only, going to bind pose willnevertheless return all the joints the skeleton to the bind pose. Also, the skeleton willgo to the bind pose even if it is parented to group nodes. The group nodes will notprevent going to bind pose.

To go to bind pose:

1 Select the character’s skeleton.

2 Select Skin > Go to Bind Pose.

The skeleton goes to the pose it had during binding.

Overcoming problems with reaching bind poseThe skeleton will not be able to go to the bind pose right away if the attributes of anyof its joints are locked. Typically, joint attributes can be locked by constraints,expressions, IK spline handles, or any IK handles with keys set. These features candrive the values of certain joint attributes, locking them up for exclusive use. Thatthey do lock certain attributes is desirable because it provides for the reliable effectsof these features. However, if you want to go to the bind pose, you must first disablethe nodes that are locking the attributes. A quick way to do this is to disable all ofthe nodes by selecting Modify > Enable Nodes > Disable All. Next, select Skin > Goto Bind Pose, and then enable all nodes again by selecting Modify > Enable Nodes >Enable All.

Changing the bind poseTo change the bind pose, detach the smooth skin, adjust the skeleton and deformableobjects as desired, and then bind skin again.

Editing maximum influencesYou can change the number of joints or influence objects that can influence a skinobject’s points. Note that before you bind skin, the Maximum Influences smoothbind option specifies the maximum number of joints or influence objects.

To set maximum influences:

1 Select the skin object(s) whose maximum influences you want to edit.

2 Select Skin > Edit Smooth Skin > Set Max Influences.

3 In the Set Max Influences window, set Max Influences:

Max Influences Specifies the number of joints and influence objects that can influence each skinpoint. Use slider to select values from 0 to 30. Default is 5.

4 Click Apply to set the new value.

Editing joint smooth skin attributesWhen you bind smooth skin to a skeleton, Maya assigns each joint some additionalattributes. Maya places these attributes in each joint’s Attribute Editor, in a sectioncalled Smooth Skin.

To edit attributes with the Attribute Editor:

1 Select a joint.

Page 323: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

323

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 Open the Smooth Skin tab.

Smooth Skin Parameters

Hold Weights Specifies that you want to prevent the joint’s smooth skin weights from beingchanged indirectly, typically because of weight normalization during weightpainting and editing (see “Holding smooth skin weights” on page 389). If on, Mayaholds the weights to their current values. Default is off.

Dropoff Specifies the rate at which the influence object’s influence decreases as the distancefrom the influence object increases. Use the slider to specify values between 0.1 and10. You can enter values up to 100, but values between 0.1 and 10 are ideal for mostsituations. Default is 4.0. After setting a new Dropoff, click Update Weights to haveMaya recalculate new skin point weights according to the new Dropoff value.

Update Weights Tells Maya to calculate new skin point weights. In calculating the new weights,Maya seeks to recalculate only those skin point weights that would be affected bythe change to Dropoff. If you want to go back to using the previous weights, selectEdit > Undo.

Editing skin cluster channels

To edit channels with the Channel Box:

1 Select a skin cluster node (default name: skinClustern).

One quick way to select a skin cluster node is to select a smooth skin object, and thenselect the skin cluster node in its history from the Channel Box (under INPUTS). Skincluster nodes are also part of the history of bound joints (under OUTPUTS).

Each smooth skin object has its own upstream skin cluster node.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

UseComponents Specifies whether changes to the components of smooth skin influence objects can

change their deformation effects on smooth skin objects. If Use Components is off(the default), changes to components won’t change the deformation effect. If UseComponents is on, changes to components can change the deformation effect.

For example, if your smooth skin influence objects are NURBS surfaces and UseComponents is on, moving the influence objects’ CVs can change the deformationeffect.

ComponentsMatrix Specifies that Maya can perform an influence object’s control point level (for

example, CVs) deformations on skin that can change its scale. Default is on. (Thischannel corresponds to the Use Components Matrix attribute.)

Page 324: Maya Character Setup

CHARACTER SETUP PART 4

324

SMOOTH SKINNING | 26Editing smooth skin

NormalizeWeights Specifies whether the weights are normalized automatically. For more information

about normalization, see “Controlling smooth skin weight normalization” on page389. Default is on.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing skin cluster attributes

To edit attributes with the Attribute Editor:

1 Select a skin cluster node (default name: skinClustern).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Smooth Skin Attributes, DeformerAttributes, Node Behavior, and Extra Attributes.

Smooth Skin Attributes

UseComponents Specifies whether changes to the components of smooth skin influence objects can

change their deformation effects on smooth skin objects. If Use Components is off(the default), changes to components won’t change the deformation effect. If UseComponents is on, changes to components can change the deformation effect.

For example, if your smooth skin influence objects are NURBS surfaces and UseComponents is on, moving the influence objects’ CVs can change the deformationeffect.

Alternatively, if your smooth skin influence objects are polygonal surfaces (meshes),setting Use Infl Components on makes it possible for changes to individual polygonsto in turn deform skin. Otherwise, with Use Infl Components off, the entire shape ofthe influence object influences the skin but changes to individual polygons can notinfluence the skin.

Default is off.

Use ComponentMatrix Specifies that you can use a component-based influence object on a character’s skin

that changes scale. Default is on.

NormalizeWeights Specifies whether the weights are normalized automatically. For more information

about normalization, see "Controlling smooth skin weight normalization" on page333. Default is on.

Deformer Attributes

Envelope Specifies the deformation scale factor. Values can vary from 0 to 1. Default is 1.

Node Behavior

For more information, see "Editing node behavior to improve performance" on page313.

Page 325: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

325

Extra Attributes

(No extra attributes by default.)

Editing skin point weightsWith the Component Editor, you can directly modify the values of individual skinpoint weights. Note that you can also paint these weights with the Paint SkinWeights Tool. If you want to set certain skin point weights to particular values, usethe Component Editor. However, if you want to shape the deformation directly andare not concerned with specific values, use the Paint Skin Weights Tool (see"Painting smooth skin point weights" on page 327).

While you are editing skin point weights, you can reset the weights to their initialvalues at any time (see "Resetting skin point weights to default weights" on page332). You can also prevent indirect changes to skin point weights, which can happenif Maya is normalizing the weights (see "Controlling smooth skin weightnormalization" on page 333).

You can edit skin point weights with the Component Editor as described in thefollowing topics:

Querying weights

To query skin point weights:

1 Select the skin points whose weights you want to edit.

2 Select Window > General Editors > Component Editor.

The Component Editor is displayed.

The Component Editor displays the component data for currently selectedcomponents in the workspace.

By default, the Component Editor updates dynamically as you select components inthe workspace. Also, as you select components in the Component Editor, theworkspace updates dynamically as well.

3 Click on the Skin Clusters tab.The Skin Clusters section lists the weights assigned toCVs, vertices, or lattice points bound to a skeleton’s joints by smooth skinning.

Modifying weights

To modify a skin point’s weight:

1 In the Component Editor’s spreadsheet, click the component data box you want toedit.

Only the component whose box you’ve selected is now selected in the workspace.

2 Enter a new value.

To modify several skin point weights at once:

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, drag through the component data boxes youwant to edit.

3 Enter the value you want all the boxes to have.

Page 326: Maya Character Setup

CHARACTER SETUP PART 4

326

SMOOTH SKINNING | 26Editing smooth skin

To modify an entire row or column (UNIX only):

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, click one of the boxes in the row or column.

3 Click the row or column heading.

Now all the boxes for the row or column are selected.

4 Enter a value for all the boxes in the row or column.

To modify an entire row or column (Windows only):

1 In the workspace, select the points whose weights you want to edit.

2 To change all the entries of a row or column, in the Component Editor’s spreadsheet,select the row or column heading.

3 Shift select any of the boxes in that row or column.

4 Enter a new value to update the entire row or column.

Holding weights

To hold skin point weights:

When you are directly editing joint smooth skin influence object weights with theComponent Editor, you can quickly specify whether the weights of particular jointsor smooth skin influence objects can change. You can tell Maya to hold the weights(see "Holding smooth skin weights" on page 332).

In the Component Editor, under the skinClusters tab, note the new Hold row. Foreach joint or smooth skin influence object, the value for Hold corresponds to theHold Weights settings for the Attribute Editor’s Smooth Skin Parameters. On anindividual skin point basis, the Hold settings correspond to the skinCluster node’sLock Weights[n] attributes settings.

If Hold is on, Maya holds weights at their current values when you modify theweights of other influence objects. For instance, having Hold on prevents changesbecause of weight normalization (see "Controlling smooth skin weightnormalization" on page 333). However, you can still modify the weights by enteringnew values in the Component Editor.

Page 327: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

327

Painting smooth skin point weights

You can paint skin point weights with the Paint Skin Weights Tool. The Paint SkinWeights Tool provides an intuitive way to change the deformation effects of smoothskinning. If you want to set individual skin point weights to specific values, you canuse the Component Editor (see "Editing skin point weights" on page 325).

While you are painting skin point weights, you can reset the weights to their initialvalues at any time (see "Resetting skin point weights to default weights" on page332).

To explore an example that includes painting skin point weights, see "Skinning acylinder by smooth skinning" on page 341.

Note that painting smooth skin point weights uses a different painting tool than thetool for painting rigid skin point weights.

To paint smooth skin point weights:

1 Select the smooth skin objects you want to paint.

2 Go into smooth shading mode (Shading > Smooth Shade All or press the defaulthotkey, 5).

3 Select the Paint Skin Weights Too and open the Tool settings editor (Skin > EditSmooth Skin > Paint Skin Weights Tool ❐).

4 Check that Color Feedback is turned on in the Display section. Color feedback helpsyou identify the weights on the surface by representing them as grayscale values(smaller values are darker, larger values are lighter).

Tip

You can use the default hotkey Alt c to turn Color Feedback on and offoutside the Tools Settings Editor.

Page 328: Maya Character Setup

CHARACTER SETUP PART 4

328

SMOOTH SKINNING | 26Editing smooth skin

5 Select a joint. The values you paint set how much this joint influences the paintedvertices relative to the other joints making up the smooth body (up to the numberspecified as the Max Influence in the Smooth Bind Skin Options window).

There are two ways to select a joint:

• In the Influence section of the Tool Settings editor, click the joint name in theTransform box.

or

• Right-click on the joint you want to paint to display a marking menu, then dragnorth and select Paint Weights. The Tool Settings editor must be open.

Values with more influence appear lighter, values with less influence appear darker.

6 Select a brush, paint operation, and value and define other settings as required. See"Painting cluster weights" on page 93, noting that the settings are the same for thePaint Cluster Weights Tool.

7 Drag the brush across the skin.

Painting skin weights on masked verticesYou can create a mask on the skin that is unaffected by any weight painting you do.When you apply brush strokes over the mask, the vertices on the masked area retaintheir weight, regardless of the paint weights operation.

Before creating the mask you must first create the skin. For details on maskingsurfaces, see “Restricting an area for painting” in Using Maya: Painting.

To paint creasing effects:

1 Select smooth shaded display mode (default shortcut: press 5 key).

2 Select the cylinder.

3 Select Skin > Edit Smooth Skin > Paint Skin Weights Tool ❒.

(For more information, see "Painting smooth skin point weights" on page 327.)

4 In the Tool Settings window, the Influence section should be displayed.

5 Note the Transform box.

The Transform box lists the names all the joints.

6 Click on a joint name. For example, click joint3.

Tip

You can list joints Alphabetically or By Hierarchy in the Transform box.Alphabetically is best if you know the name of the joint that has the skinweights you want to paint.

By Hierarchy lists joints in the same order as the Outliner. The top of thelist shows the root joint of the hierarchy, while each child joint is listedbelow its parent. This order is useful if you are painting a single a region ofthe skin—The joints you need to select from the list while painting aretypically next to one another.

Page 329: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

329

In the scene, the shading indicates the joint’s influence. The whiter the color, thegreater the influence of the joint.

Note how the joint’s influence fades into black as the distance from the jointincreases.

7 In the Influence box, click on another joint name. For example, click joint4.

Again, note how the joint’s influence fades into black as the distance from the jointincreases. Also note how the joints gradually influence the bending and creasing.

8 Check the influence of one more of the joints. For example, check the influence ofjoint2.

Influence of joint3.

Influence of joint4.

Page 330: Maya Character Setup

CHARACTER SETUP PART 4

330

SMOOTH SKINNING | 26Editing smooth skin

Joint2 mainly influences the skin below the bend, but does provides some gradualinfluence in the bend area.

Similarly, joints above the bend (for example, joint5) also gradually influence thedeformation in the bend area.

Now you will edit the influence of the joints to get a sharper creasing effect. You cando this by increasing how the joints nearest the bend influence the creasing, andlessening how joints further from the bend influence the creasing.

9 Use the Paint Skin Weights Tool to paint how the joints influence creasing.

The brush provides an intuitive way to change the influence of the joints. Use thebrush’s Add operation to increase the influence of nearby joints, and use the Scaleoperation to decrease the influence of further joints. Use the Smooth operation tosmooth out the influences of the joints. For more information on using paint tools,see Using Maya: Painting.

Try to get the creasing to look something like the following, which is closer to whatyou might want for an elbow deformation:

Influence of joint2.

Page 331: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

331

Experiment with using the brush. With just a little experimentation, you can quicklybecome proficient at painting the skin point weights of joints.

Mirroring smooth skin weightsYou can mirror smooth skin weights, either from one smooth skin object to another,or within the same smooth skin object. Mirroring smooth skin weights greatlyspeeds up the process of editing and fine-tuning skin deformation effects. Forexample, you could perfect the smooth skin weighting for a character’s rightshoulder area and then simply mirror the weighting to the character’s left shoulder.

Maya mirrors weights across planes defined by Maya’s global workspace axis. Forthe mirroring to work properly, the skin objects (or character) should be centered onthe global axis, or at least aligned along the axes you want to mirror about.

To mirror smooth skin weights:

1 Select the smooth skin object(s), and then select Skin > Edit Smooth Skin > MirrorSkin Weights ❒.

2 In the Mirror Skin Weights Options window, specify the following options:

Mirror Axis XY specifies mirroring weights about the global XY plane (the default).

YZ specifies mirroring weights about the global YZ plane.

XZ specifies mirroring weights about the global XZ plane.

Direction Positive to Negative (+Z to -Z) specifies direction of the mirroring along the specifiedMirror Axis plane.

3 Click the Mirror button.

Copying smooth skin weightsYou can copy smooth skin weights from one smooth skin object to another, or fromone group of smooth skin objects to another.

Painting influences of nearbyjoints to edit the deformationeffect.You can now see the influenceof joint3.

Page 332: Maya Character Setup

CHARACTER SETUP PART 4

332

SMOOTH SKINNING | 26Editing smooth skin

For example, suppose you have created a team of very similar characters for afootball game, and you’re at that point in the character setup process where youhave just skinned them all and are about to paint the smooth skin weights to perfectthe deformation effects. You first paint the weights of the quarterback. Next youhave to paint the weights of all the other players. Instead of having to paint theplayers individually, you can copy what you did for the quarterback to each of theother players. You might then want to fine-tune the weights of the various otherplayers, but by copying the weights you have still saved yourself a lot of time. Youcan focus on the creative challenges unique to the case of a particular characterrather than on doing the same type of painting over and over again.

For best results, the skeleton of the character you are copying from and the skeletonyou are copying to should have the same structure. If the skeletons are similar, Mayawill still try to copy the weights. However, if the skeletons are radically different,Maya may not be able to copy the weights.

Also, for best results, the skeletons of each character should be in the same poseduring copying. If the orientation of the joints are not similar, the copying can lacksome precision, which means you may have to do some touch up painting to theresults.

If the skin objects have different numbers of CVs, or if the ordering of the CVs isdifferent, the copying will intelligently take into account the differences and providethe same type of weighting. This is very useful if you want to apply the smooth skinweighting from a high-res character to a low-res version of the character.

You can copy smooth skin weights between skin objects of different types: forexample, you can copy from a subdivision surface to a NURBS surface or apolygonal surface.

To copy smooth skin weights:

1 Select the smooth skin object (or group of objects) whose weights you want to copy,and then select the object (or group of objects) to which you want to copy theweights.

2 Select Skin > Edit Smooth Skin > Copy Skin Weights.

Resetting skin point weights to default weightsWhile you are editing or painting the skin weights, you can reset the weights thetheir initial, default values at any time.

To reset skin point weights:

1 Select the skin object (or specific components on the object) whose skin point weightsyou want to reset.

2 Select Skin > Edit Smooth Skin > Reset Weights to Default.

Holding smooth skin weightsWhen you are changing (editing or painting) the weights of smooth skin objects,changing the weights of one object can affect the weights of other objects. This isbecause Maya must consider the weights of all skin objects being influenced by aparticular influence object as being relative to one another. Maya does this byrequiring that all the weights add up to one. When you change certain weights,

Page 333: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

333

Maya can automatically change various other weights so that the total of all theweights continues to be one. This allows Maya to know the relative influences of theweights.

The process of scaling some numbers so that they all add up to one is called“normalization.” By constantly normalizing weight values, Maya keeps track of theirrelative influences.

When changing (editing or painting) weights of smooth skin objects, it’s sometimesdesirable to specify that the weights of certain objects won’t change. If you’veperfected the weighting of a particular object, you might want to make sure that itsweights are not going to undergo any normalization changes. Maya lets you “hold”the weights of particular smooth skin objects so that their values don’t change whenyou are editing other smooth skin objects.

Note that if you hold the weights of many objects at the same time, Maya might notbe able to normalize the rest of the weights properly, and you could get an errormessage. In general, you should not hold the weights of many objects at the sametime. Typically, you would want to hold the weights of only one or two objects.However, if you don’t want to stop holding the weights of any of the objects, youcan turn off weight normalization directly from Maya’s interface (see "Controllingsmooth skin weight normalization" on page 333).

Controlling smooth skin weight normalizationWhen you are changing (editing or painting) the weights of smooth skin objects,changing the weights of one object can affect the weights of other objects. This isbecause Maya considers the weights of all skin objects being influenced by aparticular influence object as being relative to one another. Maya does this byrequiring that all the weights add up to one. When you change certain weights,Maya can automatically change various other weights so that the total of all theweights continues to be one. This allows Maya to know the relative influences of theweights.

The process of scaling numbers so that they all add up to one is called“normalization.” By constantly normalizing weight values, Maya keeps track of theirrelative influences.

Maya normalizes smooth skin weights by default, but you can control whether asmooth skin object’s weights are normalized. You can disable weight normalization,and also enable it again. Also, if you’ve changed weight values with normalizationdisabled, and then decide to normalize them, you can do so.

To disable normalization:

1 Select the smooth skin object(s) whose weights you no longer want normalizedautomatically.

2 Select Skin > Edit Smooth Skin > Disable Weight Normalization.

Now Maya will not normalize the weights automatically.

To enable normalization:

1 Select the smooth skin object(s) whose weights you want to be normalizedautomatically.

2 Select Skin > Edit Smooth Skin > Enable Weight Normalization.

Page 334: Maya Character Setup

CHARACTER SETUP PART 4

334

SMOOTH SKINNING | 26Editing smooth skin

Maya does not immediately normalize weights. The weights stay at their currentvalues until you edit or paint weights, and then Maya will automatically normalizethe weights.

To normalize weights:

1 Select the smooth skin objects (or skin points) whose weights you want to normalize.

2 Select Skin > Edit Smooth Skin > Normalize Weights.

Maya normalizes the weights.

Pruning insignificant smooth skin weightsAs you paint smooth skin weights, you might unintentionally create small weightvalues, for instance, 0.008, on many of the skin points. Maya creates small values asit normalizes total skin weight for each point to 1. The weights have no discernibleeffect on the skin, but they slow down processing. You can prune the small skinweights to speed up processing.

To prune small skin weights:

1 Select the skin or specific skin points.

2 Select Skin > Edit Smooth Skin > Prune Small Weights ❒.

3 In the Prune Below box, set the threshold weight.

The default value, 0.01 works well in most cases. Skin weights below the valuedentered will be reset to 0. By default, the remaining skin weights are normalized toadd up to 1. If you want to prevent normalization, select the skin object, display theskinCluster tab in the Attribute Editor, and turn off Normalize Weights.

Removing unused influences from a smooth skinned surfaceTo enhance Maya processing speed and make the Paint Skin Weights Tool easier touse, you can disconnect joints and influence objects from a smooth skin that has allof its skin weights at 0. The Paint Skin Weights Tool becomes easier to use becausethe unused influences do not appear in the Influence list for the skin.

For example, suppose you smooth skin a left foot stocking to a human skeleton withthe default options. All joints in skeleton will be connected to the stocking aspotential influences, but only the joints closest to the left foot stocking will havenonzero weights.

If you select the elbow and rotate it, Maya computes the skin on the stocking to see ifthere are any nonzero weights. If you select the stocking and remove the unusedinfluences, the elbow and the other zero-weighted joints will be disconnected fromthe stocking and performance will improve.

To remove unused influences:

1 Select the skin.

2 Select Skin > Edit Smooth Skin > Remove Unused Influences.

Batch export and import of smooth skin weight mapsWhen you smooth skin a surface, Maya creates one weight map per joint. Maya has amenu item that exports all the weight maps at once.

Page 335: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

335

Importing to a character in another sceneAfter you export the weight maps, you can import them to a smooth-skinned surfacein another scene so that its skin deforms the same as the first surface. The surface inthe second scene must have the same UV orientation as the original surface, but itcan differ from the original as follows:

• It can be scaled differently but must be proportioned similarly in regions ofsignificant deformation, typically around joints.

• It can have a different number of spans and sections.

• It can have a different world space position.

Importing back to the original characterYou can also import the maps back to the original surface. Examples of how this isuseful follow:

• If you are roughly satisfied with the skin weights for a surface but want toexperiment with different weights to enhance the look, you can export the maps tohave a backup of the satisfactory version.

• If you apply an influence object to the surface, Maya alters the weights of the smoothskinning in the region of the influence object, sometimes with undesirable results. Toavoid this situation, you can export the maps, add the influence object, import themaps to the surface again, then paint weights near the influence object. This avoidsthe unintended automatic weight alterations.

To export weight maps:

1 Select the skin. If you need to select a group of skin surfaces, select the group node.

2 Select Skin > Edit Smooth Skin > Export Skin Weight Maps ❒.

3 Set the following options and click Export. In most applications, only the Map Size Xand Y options are useful. The other options are useful if you plan to use specializedmap editing techniques. Most users use the default option settings.

Export Value Alpha exports alpha channel (opacity) values.

Luminance exports luminance (brightness) values.

If you export the smooth-skin weight mapsfrom the character on the left to the smaller,pregnant sister on the right, the skin deformsthe same on both. This saves you the time itwould take to paint the weights on thepregnant character.

Page 336: Maya Character Setup

CHARACTER SETUP PART 4

336

SMOOTH SKINNING | 26Editing smooth skin

Map Size X, Y Sets the width and height of the image. If the skin has 1000s ofCVs or vertices, a large map will ensure the destination skinmatches the original skin. However, large maps take more time tosave to disk and also use more disk space. A map that is too smallmight cause inadvertent averaging of the alpha or luminancevalues.

The default values 512 by 512 work well for most skins. If the skinlots of CVs or vertices, use Map Size values of 1024 by 1024.

If the skin has relatively few CVs or vertices, use values 256 by256.

If you use a skin made from dozens of NURBS patches, considerusing 256 by 256 to avoid wasting lots of disk space.

Keep Aspect Ratio Maintains the height to width ratio of the attribute map when youexport.

Image Format Specifies the type of image, for instance, TIFF, JPEG, and so on.

4 In the file browser that appears, specify a path and name for a folder (or directory)that will be created to hold the map files. By default, Maya puts the folder name youspecify under the sourceimages folder of your current project. Click the Write buttonin the file browser after you enter the name for the folder.

5 Maya lists how many maps will be written to disk, and prompts whether you wantto proceed. Click Yes.

The operation has finished when the hourglass icon stops flashing on your screen. Itmight take 10 or more seconds per map. Maya puts the image files, one per joint, inthe specified folder as in this example:

jackie_back_root.iffjackie_jaw.iffjackie_left_ankle.iffand so on...

Maya also creates a weight map file named folder.weightMap in the same folder thatcontains the folder you specified (sourceimages, by default). Its contents describe therelationship between the surface and the map files. You don’t need to understandthe contents of this file, but the file must be in the specified location when youimport the maps. Maya uses this file when you import the images.

To import weight maps:

1 Select the skin of the character to receive the maps. If you need to select a group ofskin surfaces, select the group node.

2 Select Skin > Edit Smooth Skin > Import Skin Weight Maps.

3 In the file browser that appears, specify the name of the previously exported.weightMap file for the maps you want to import.

To import the maps to a skin or skeleton that has a different name than the skin orskeleton from which you exported, you must open the .weightMap file with a texteditor and replace the skin or skeleton names with the ones used in the scene whereyou import the maps.

Page 337: Maya Character Setup

SMOOTH SKINNING | 26Editing smooth skin

SKINNING CHARACTER SETUP

337

Detaching smooth skinAfter you have bound skin, you might decide that you want to modify the skeleton,change the bind pose, or do some further modeling on the skin. To do these thingsyou must first detach the skin from the skeleton, and then when you’re done youmust bind skin again.

To set detach skin options:

1 If you want to detach now, select the skin object(s) you want to detach.

2 Select Skin > Detach Skin ❒.

The Detach Skin Options window is displayed.

History Set to Delete History, Keep History, or Bake History.

Delete History will detach the skin, move it to its original, undeformed shape, anddelete the skin’s skin cluster nodes. Select this option if you want to bind the skinstarting anew, for example, because your extensive editing of smooth skin weightsgave undesirable results.

Keep History will detach the skin and move it to its original, undeformed shape. Itwill not delete the skin’s skin cluster nodes. This is the default option. Use thisoption to preserve smooth skin weights when you bind skin again. This is useful, forinstance, if you decide to add an extra joint to a skeleton but want to retain theexisting smooth skin weights after you detach the smooth skin and bind the skinagain.

Bake History will detach the skin and delete its skin cluster nodes, but will not movethe skin to its original, undeformed shape. The skin will maintain its current shapeafter detachment. This is useful, for instance, if you won’t deform the skin’s shapeanymore and want to lighten the processing demands of your scene. (You might usethe skin, for example, as a stationary character in the background of the scene.)

Coloring (This option only applies to rigid skinning.)

3 Click Detach to detach skin.

or

Click Save to save detach options without detaching skin.

or

Click Reset to reset to default detach skin options.

To detach skin:

1 Select skeleton(s).

2 Select Skin > Detach Skin to detach skin with previously set detach skin options.

Page 338: Maya Character Setup

CHARACTER SETUP PART 4

338

SMOOTH SKINNING | 26Using smooth skin influence objects

USING SMOOTH SKIN INFLUENCE OBJECTS

Influence objects can deform smooth skin objects by influencing the position(translation) attributes of their skin points. If you’d like to explore some examplesnow, see "Hand muscle bulge with influence object" on page 345 and "Usinginfluence objects to prevent unwanted deformation" on page 348.

You can add any object as an influence object so that the object’s transform attributesaffect the position attributes of skin points. For example, you could use a locator asan influence object so that when you move the locator you move skin points,creating a deformation effect.

If the influence object is a NURBS or polygonal surface, the skin points can beinfluenced by the shape of the surface. The surface can push or pull skin points thatare in its vicinity, creating deformation effects that reflect the surface’s shape. Whenplaced near the surface of the skin, these polygonal influence objects can be veryuseful for creating deformations that indicate the effects of moving veins, bones,tendons, or muscles. You can also create interesting effects with NURBS curves.

Influence objects influence smooth skin objects in the same manner that joints caninfluence smooth skin objects. The Dropoff Rate, which is set as a smooth bindoption, applies to the influence of influence objects as well as to the influence ofjoints. You can change the Dropoff Rate for each influence object.

Whether a smooth skin object’s skin points can be influenced by the components ofthe surface (for example, the individual polygonal faces) of an influence object or theoverall shape of the object depends on the skin cluster node’s Use Componentsattribute. If Use Components is set to on, skin points can be influenced bycomponents (for example, individual polygonal faces). If Use Components is set tooff (the default), the skin points are only influenced by the overall shape of theinfluence object.

Page 339: Maya Character Setup

SMOOTH SKINNING | 26Using smooth skin influence objects

SKINNING CHARACTER SETUP

339

You can work with influence objects as described in the following topics:

Adding an influence object

To set add influence options:

1 If you plan to add an influence object immediately after setting options, be sure to goto the bind pose, and position the influence object appropriately.

2 Select Skin > Edit Smooth Skin > Add Influence ❒.

The Add Influence Options window is displayed.

Geometry Click Use Geometry on if you want the influence object’s shape as well as itstransform attributes (translation, rotation, and scale) to influence the skin’s shape.Click Use Geometry off if you only want the influence object’s transform attributes(translate, rotate, and scale) to influence the skin’s shape. Default is Use Geometryon.

Dropoff Specifies the rate at which the influence of the influence object’s position drops as thedistance from the influence object increases. Specify values between 0.1 and 100.Default is 4.0.

PolygonSmoothness Specifies how accurately the smooth skin points follow a given polygonal influence

object. The higher the value, the more rounded the deformation effect. Set valuesbetween 0.0 and 50.0. Default is 0.0.

NURBS Samples Specifies the number of samples used to evaluate the influence of a NURBS influenceobject’s shape. The greater the number of samples, the more closely the smooth skinfollows the influence object’s shape. Set values between 1 and 100. Default is 10.

Weight Holding Specifies that you want to prevent the influence object’s weights from being changedindirectly, typically because of weight normalization during weight painting andediting (see "Holding smooth skin weights" on page 332). Instead, Maya holds theweights to the Default Weight. Default is off.

Default Weight Specifies the default holding weight if Weight Holding is on. Default is 0.000.

3 Click Add to add the influence object now.

or

Click Save to save add influence options without adding influence object(s) now.

or

Click Reset to reset to the default add influence options.

4 Click Close to close the Add Influence Options window.

Avoid changing number of points of influence objects

You should avoid changing the number of an influence object’s points (forexample, CVs, vertices, or lattice points) after you add it as a smooth skininfluence object. Changing the number of points can lead to unexpecteddeformation effects. Try to be sure you are happy with the object’stopology before you begin using deformers. You might want to save acopy of the object in case you want to do further modeling later.

Page 340: Maya Character Setup

CHARACTER SETUP PART 4

340

SMOOTH SKINNING | 26Using smooth skin influence objects

To add an influence object:

1 Go to the bind pose.

2 Position the influence object.

3 Select the skin, skin object(s) (for example, NURBS surfaces), or skin points (NURBSCVs or polygonal vertices) that you want the object(s) to influence.

4 Also select the influence object.

5 Select Skin > Edit Smooth Skin > Add Influence to add influence object(s) withpreviously set add influence options.

If the Use Geometry option is on (the default), Maya creates an influence object basenode.

In the Outliner, an influence object base node is added (default name:influenceObjectBase). Note that this is hidden by default, so you won’t see it in thescene.

Removing an influence object

To remove an influence object:

1 Select the skin, skin item (for example, NURBS surfaces), or skin points that arebeing influenced by the object(s).

2 Select the influence object you want to remove.

3 Select Skin > Edit Smooth Skin > Remove Influence.

Editing NURBS influence object attributesWhen you add a NURBS smooth skin influence object, Maya assigns the object someadditional attributes. Maya places these attributes in the object’s Attribute Editor, ina section called Smooth Skin.

To edit attributes with the Attribute Editor:

1 Select the smooth skin influence object.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 Open the Smooth Skin tab.

Smooth Skin Parameters

Dropoff Specifies the rate at which the influence object’s influence decreases as the distancefrom the influence object increases. Specify values between 0.1 and 100. Default is4.0.

NURBS Samples Specifies the number of samples used to evaluate the influence of a NURBS influenceobject’s shape. The greater the number of samples, the more closely the smooth skinfollows the influence object’s shape. Specify values between 1 and 100. Default is 10.

Update Weights Tells Maya to calculate new skin point weights. In calculating the new weights,Maya seeks to recalculate only those skin point weights that would be affected bythe change to Dropoff. If you want to go back to using the previous weights, selectEdit > Undo.

Page 341: Maya Character Setup

SMOOTH SKINNING | 26Examples

SKINNING CHARACTER SETUP

341

Hold Weights Specifies that you want to prevent the influence object’s weights from being changedindirectly, typically because of weight normalization during weight painting andediting (see "Holding smooth skin weights" on page 332). Instead, Maya holds theweights to their current weights. Default is off.

Editing polygonal influence object attributesWhen you add a polygonal smooth skin influence object, Maya assigns the objectsome additional attributes. Maya places these attributes in the object’s AttributeEditor, in a section called Smooth Skin.

To edit attributes with the Attribute Editor:

1 Select the smooth skin influence object.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 Open the Smooth Skin tab.

Smooth Skin Parameters

Dropoff Specifies the rate at which the influence object’s influence decreases as the distancefrom the influence object increases. Set values between 0.1 and 100. Default is 4.0.

Smoothness Specifies how accurately the smooth skin points follow a given polygonal influenceobject. The higher the value, the more rounded the deformation effect. Set valuesbetween 0 and 50.

Update Weights Tells Maya to calculate new skin point weights. In calculating the new weights,Maya seeks to recalculate only those skin point weights that would be affected bythe change to Dropoff. If you want to go back to using the previous weights, selectEdit > Undo.

Hold Weights Specifies that you want to prevent the influence object’s weights from being changedindirectly, typically because of weight normalization during weight painting andediting (see "Holding smooth skin weights" on page 332). Instead, Maya holds theweights to their current weights. Default is off.

EXAMPLES

This section offers some examples of smooth skinning:

Skinning a cylinder by smooth skinningThis example is similar to "Skinning a cylinder by rigid skinning" on page 375, sothat you can compare smooth skinning with rigid skinning.

To create the cylinder:

• Create a NURBS cylinder with the default options, except set Ratio of Height toRadius to 8, Number of Sections to 16, and number of Spans to 32.

Page 342: Maya Character Setup

CHARACTER SETUP PART 4

342

SMOOTH SKINNING | 26Examples

To create the skeleton for the cylinder:

• Build a skeleton for the cylinder. Have the skeleton consist of a single joint chainwith about seven joints.

To bind by smooth skinning:

1 Select skeleton’s root joint (default name: joint1).

2 Select Skin > Bind Skin > Smooth Bind.

Maya binds the cylinder to the skeleton by smooth skinning, using the default bindskin options. The cylinder is now a smooth skin object. For more information onbinding smooth skin, see "Binding smooth skin" on page 319.

Now you can exercise the skeleton and get immediate deformation effectsappropriate for the character.

To exercise skeleton:

1 Select the joint approximately at the center of the cylinder (for instance, joint4), androtate it about 90 degrees.

Skeleton consisting of one jointchain (joint1 through joint7).Joint4 starts approximately inthe center of the cylinder.

Page 343: Maya Character Setup

SMOOTH SKINNING | 26Examples

SKINNING CHARACTER SETUP

343

Note that smooth skinning provides a smooth deformation effect around the rotatedjoint. However, the creasing might be a bit too rounded for the deformation of acharacter’s limb. For example, if you were setting up the deformation around acharacter’s elbow, you might want the creasing to be a bit sharper at the inside angleof the bend, though still rounded around the rest of the joint. You can adjust thedeformation effect with the Paint Skin Weights Tool.

To paint creasing effects:

1 Select smooth shaded display mode (default shortcut: press 5 key).

2 Select the cylinder.

3 Select Skin > Edit Smooth Skin > Paint Skin Weights Tool ❒.

(For more information, see "Painting smooth skin point weights" on page 327.)

4 In the Tool Settings window, the Skin Paint tab should be displayed.

5 Note the Influence box.

The Influence box lists the names all the joints.

6 Click on a joint name. For example, click joint3.

In the scene, the shading indicates the joint’s influence. The whiter the color, thegreater the influence of the joint.

Joint4 rotated 90 degrees.

Influence of joint3.

Page 344: Maya Character Setup

CHARACTER SETUP PART 4

344

SMOOTH SKINNING | 26Examples

Note how the joint’s influence fades into black as the distance from the jointincreases.

7 In the Influence box, click on another joint name. For example, click joint4.

Again, note how the joint’s influence fades into black as the distance from the jointincreases. Also note how the joints gradually influence the bending and creasing.

8 Check the influence of one more of the joints. For example, check the influence ofjoint2.

Joint2 mainly influences the skin below the bend, but does provides some gradualinfluence in the bend area.

Similarly, joints above the bend (for example, joint5) also gradually influence thedeformation in the bend area.

Influence of joint4.

Influence of joint2.

Page 345: Maya Character Setup

SMOOTH SKINNING | 26Examples

SKINNING CHARACTER SETUP

345

Now you will edit the influence of the joints to get a sharper creasing effect. You cando this by increasing how the joints nearest the bend influence the creasing, andlessening how joints further from the bend influence the creasing.

9 Use the Paint Skin Weights Tool’s brush to paint how the joints influence creasing.

The brush provides an intuitive way to change how the influence of the joints. Usethe brush’s Add operation to increase the influence of nearby joints, and use theScale operation to decrease the influence of further joints. Use the Smooth operationto smooth out the influences of the joints. For more information on using paint tools,see Using Maya: Painting.

Try to get the creasing to look something like the following, which is closer to whatyou might want for an elbow deformation:

Experiment with using the brush. With just a little experimentation, you can quicklybecome proficient at painting the skin point weights of joints.

Hand muscle bulge with influence objectSetting up hands for animation is one of the most demanding aspects of charactersetup. With smooth skinning, you can achieve more subtle effects by using influenceobjects whose actions are driven by nearby joints.

When you move your thumb towards your index finger, a muscle along the side ofthe upper part of your hand (m. interossesus dorsalis) tends to bulge out, indicatingthe tension in your hand. In rigid skinning, you could use a flexor to provide bulgeeffects, although positioning a flexor right at where this muscle bulges could betricky. With smooth skinning, you can use an influence object the provide thedeformation.

Creating a hand’s skeleton and smooth skin

Suppose you have created a model for a hand. The hand consists of NURBS surfaces,with surfaces for the fingers, thumb, and palm area. Suppose you have also created askeleton for the hand, and have just bound the NURBS surfaces to the skeleton bysmooth skinning.

Painting influences of nearbyjoints to edit the deformationeffect.You can now see the influenceof joint3.

Page 346: Maya Character Setup

CHARACTER SETUP PART 4

346

SMOOTH SKINNING | 26Examples

Now you could set up an influence object to create a hand muscle bulge by creatinga polygonal sphere, setting the sphere as an influence object, and then linking thesphere’s scaling to the movement of the skeleton’s thumb.

(For more information on smooth skin influence objects, see "Using smooth skininfluence objects" on page 338.)

To create the polygonal sphere for the muscle bulge:

1 Create a polygonal sphere, adjusting the scale attributes to approximate the muscleshape (for example, set Scale X to 1.5, Scale Y to 0.7, and Scale Z to 0.7).

2 Position the sphere inside hand, between thumb and index finger.

Hand with skeleton(local rotation axesdisplayed)

Influence objectplaced inside hand

Palm skin object (thesmooth skinnedNURBS surface thatthe influence objectwill deform)

Page 347: Maya Character Setup

SMOOTH SKINNING | 26Examples

SKINNING CHARACTER SETUP

347

To make the polygonal surface an influence object:

1 Select palm skin object. (This is the smooth skinned NURBS surface that the spherewill deform.)

2 Select the sphere.

3 Select Skin > Edit Smooth Skin > Add Influence.

(For more information, see "Adding an influence object" on page 339.)

To link the bulge to fist formation:

Now you will link the rotation of the thumb joint to the scaling of the influenceobject (the polygonal sphere).

1 Open the Set Driven Key window (Animate > Set Driven Key > Set ❒).

2 Load thumb1 (the thumb joint) as driver, select rotate Z attribute, and set theattribute to 0.

3 Load pSphere1 (the influence object) as driven, select the scale Y and scale Zattributes. (Keep scale Y and scale Z at 0.7.)

4 Click Key.

5 Set thumb1’s rotate Z attribute to -40.

6 Set pSphere1’s scale Y attribute to 0.8.

7 Set pSphere1’s scale Z attribute to 1.

8 Click Key.

9 Click Close to close the editor.

Testing the deformation

Now when the thumb is away from the palm, the muscle will appear to be relaxed.

Influence object(named pSphere1)

Thumb joint (namedthumb1)

Page 348: Maya Character Setup

CHARACTER SETUP PART 4

348

SMOOTH SKINNING | 26Examples

But as you rotate the thumb towards the palm, the surface bulges to indicate muscleaction.

Using influence objects to prevent unwanted deformationAn important use of influence objects is to prevent unwanted deformations fromoccurring. After smooth skinning, you may find that certain areas deform more thanyou would like. For example, deformations around a shoulder may be too extremewhen you rotate the shoulder joint.

Muscle appearsrelaxed when thumbis reaching away fromhand

Muscle appears tobulge as thumbmoves towards hand

Page 349: Maya Character Setup

SMOOTH SKINNING | 26Examples

SKINNING CHARACTER SETUP

349

You can prevent such unwanted effects by adding an influence object whoseinfluence counteracts the influence of other deformations. For example, you couldadd an influence object near the shoulder area that could counteract any extremeeffects resulting from smooth skinning.

Note that you can use a NURBS or polygonal object of any shape. In this example,you might want to edit the sphere’s shape for more precise control over the finaldeformation around the shoulder.

For more information on smooth skin influence objects, see "Using smooth skininfluence objects" on page 338.

Extremedeformationeffect on smoothskinned shoulder

Sphere added asinfluence objectcounteractsunwanteddeformationeffect on smoothskinned shoulder

Page 350: Maya Character Setup

CHARACTER SETUP PART 4

350

SMOOTH SKINNING | 26Examples

Page 351: Maya Character Setup

SKINNING CHARACTER SETUP

351

27 RIGID SKINNING

Rigid skinning provides articulated deformation effects by enabling joints toinfluence sets of deformable object points. If you’d like to explore an example now,see "Example" on page 375.

Page 352: Maya Character Setup

CHARACTER SETUP PART 4

352

RIGID SKINNING | 27Understanding rigid skinning

UNDERSTANDING RIGID SKINNING

With rigid skinning, only one joint can influence each CV, vertex, or lattice point.This provides rigid deformation effects that you can smooth by using latticedeformers, cluster deformers, or flexors.

Rigid skin objects and pointsDuring rigid skinning, you bind one or more deformable objects to a skeleton. Oncebound, the objects are rigid skin objects (or skin objects, or skin) whose position,orientation, and scale are controlled by the skeleton’s joints. The points (CVs,vertices, or lattice points) of the deformable objects are then referred to as rigid skinpoints, or skin points.

Maya binds rigid skin objects to joints by means of joint cluster nodes. One way youcan change the rigid skinning deformation effects is by editing joint cluster attributes(or channels).

Rigid skin point weightsDuring rigid skinning, for each rigid skin point (for example, each CV of eachNURBS surface), Maya assigns a rigid skin point weight that controls the influenceof a joint on the point (for example, the CV). By default, each joint can influences theskin points of its nearest skin object equally, but you can edit the amount by which ajoint can influence a skin point.

The main difference between rigid skinning and smooth skinning is that in rigidskinning only one joint can influence a particular skin point (CV, vertex, or latticepoint), but in smooth skinning, many joints can influence the same skin point.Because smooth skinning allows many joints to influence the same skin point, youcan immediately get smoother deformation effects right after binding skin.

With rigid skinning, only onejoint can influence each CV.This can result in rigidbending effects unless youalso use flexors or latticedeformers.

Page 353: Maya Character Setup

RIGID SKINNING | 27Understanding rigid skinning

SKINNING CHARACTER SETUP

353

Rigid skin point setsDuring rigid skinning, for each joint, Maya creates a set of rigid skin points. The setcontains all the points (NURBS CVs, polygonal vertices, or lattice points) that can beinfluenced by a particular joint. By default, the sets are organized into a partition,which means the sets can have no members in common.

You can organize points into a partition of sets before you bind skin, arranging forsome of the points to become rigid skin points while other points can be influencedby, for example, a cluster or lattice deformer parented to a nearby joint. Using clusteror lattice deformers with rigid skinning can be a good way to get smoothdeformation effects around areas such as shoulders, and provide an alternative tousing flexors (see "Flexors" on page 353). However, you must plan ahead, andcarefully decide which points are going to be affected by what, or your charactercould suffer from double transformation effects (see "Double transformation effects"on page 311).

For more information on sets and partitions, refer to Using Maya: Essentials.

Flexors

Flexors are special deformers designed for use with rigid skinning. They providevarious types of deformation effects that improve and enhance the effects providedby rigid skinning. Maya includes five types of flexors:

• Joint lattice flexors provide smoothing effects around joints. They are based on latticedeformers.

• Bone lattice flexors provide smoothing and bulging effects around bones. They arebased on lattice deformers.

• Joint sculpt flexors provide rounded deformation effects around joints. They arebased on sculpt deformers.

Page 354: Maya Character Setup

CHARACTER SETUP PART 4

354

RIGID SKINNING | 27Binding rigid skin

• Bone sculpt flexors provide rounded deformation effects around bones. They arebased on sculpt deformers.

• Joint cluster flexors provided weighted deformation control around joints. They arebased on cluster deformers.

For more information on creating flexors, see "Creating flexors" on page 368.

Related MEL commandsMEL commands related to rigid skinning include the following:

• bindSkin

• bindPose

• jointCluster

• jointLattice

• boneLattice

For more information about these commands, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for rigid skinning can include the following:

• Joint cluster nodes that carry out the rigid skinning deformations (default name:jointClustern). When you bind rigid skin, Maya creates a joint cluster node for eachjoint in the bound skeleton.

• A bind pose node that saves a skeleton’s bind pose (default name: bindPosen).

• Tweak nodes that carry out point tweaking on deformable objects after skinning(default name: tweakn).

• Rigid skin point set nodes (default name: jointnSetm).

• Rigid skin partition node (default name: jointnskinPartition).

• Joint lattice nodes for controlling the lattice points of lattice flexors (default name:jointLatticen).

• Joint lattice flexor free-form deformation algorithm nodes (default name: jointFfdn).

• Flexor shape nodes for organizing flexor attributes and enabling them to be drivenby other attributes using Animate > Set Driven Key > Set (default name:flexorShapen).

For more information about these nodes, refer to the online Node and AttributeReference documentation.

BINDING RIGID SKIN

You can set the bind skin options before you bind skin, or immediately bind skinwith the current options. After you bind skin, you can check the binding and adjustthe skin’s behavior.

Page 355: Maya Character Setup

RIGID SKINNING | 27Binding rigid skin

SKINNING CHARACTER SETUP

355

Setting rigid bind options

To set bind options:

1 If you also want to bind skin now, select the skeleton (or joints) and then thedeformable object(s) you want to bind.

2 Select Skin > Bind Skin > Rigid Bind ❒.

3 The Rigid Bind Skin Options window is displayed.

Bind to Specifies whether to bind to an entire skeleton or only to selected joints. Selectionsinclude Complete Skeleton or Selected Joints.

Complete Skeleton specifies that the selected deformable objects will be bound to theentire skeleton, from the root joint on down through the skeleton’s hierarchy, even ifyou have selected some joint other than the root joint. Binding by complete skeletonis the usual way to bind a character’s skin.

Selected Joints specifies that the selected deformable objects will be bound to onlythe selected joints, not the entire skeleton.

Select Complete Skeleton or Selected Joints. Default is Complete Skeleton.

Coloring Specifies whether to color the joints according to the colors automatically assigned toskin point sets. Coloring joints can be helpful later when you are editing skin pointset memberships. Click Color Joints on or off. Default is off.

Bind Method Specifies whether you want to bind by closest point or by partition set.

Closest Point specifies that Maya automatically organize deformable object pointsinto skin point sets for you based on the proximity of each point to a joint. For eachjoint with a bone, a skin point set will be created that includes the points that areclosest to the given point. The points are then identified as skin points, with eachskin point being a member of only one skin point set. Maya places the skin point setsin a partition, which assures that each point can only be in one set. Finally, each setwill be bound to the nearest joint.

Partition Set specifies that Maya bind points that you’ve already organized into setsin a partition. You should have as many sets as you have joints. Each set will bebound to the nearest joint.

Partition If you select Partition Set, select the name of the partition you wish to bind. Selectonly partitions containing sets of deformable points.

Click Closest Point or Partition Set. Default is Closest Point.

If you select Partition Set, a list of the currently available partitions is listed. Selectthe partition you want the rigid skin point sets to be in.

• Click Bind if you want to bind skin now.

or

• Click Save to save the options.

or

• Click Reset to reset to the default options.

or

• Click Close to close the Rigid Bind Skin Options window.

Page 356: Maya Character Setup

CHARACTER SETUP PART 4

356

RIGID SKINNING | 27Editing rigid skin

Binding skin

To bind skin:

1 Select one or more deformable objects, followed by a skeleton’s root joint or a limb’sparent joint.

2 Select Skin > Bind Skin > Rigid Bind.

Maya binds skin using the previously set rigid bind options.

Checking the bindingExercise the skeleton to check the rigid skin deformation effects. Rotate the skeleton’sjoints to view the rigid skin’s behavior. As you exercise the skeleton, at times youmight want to go back to the bind pose. For more information on going to the bindpose, see "Going to the bind pose" on page 356.

As you check the binding, you may find that you want to adjust the rigid skin’sbehavior.

Adjusting rigid skin behaviorIf you don’t like the rigid skin’s behavior, you can detach the skin, edit the skeletonor the deformable objects, set new binding options, and then bind again. Skinningcan be an iterative process of checking the binding, detaching, editing the skeleton,and then binding again. For more information on detaching skin, see "Detachingrigid skin" on page 366.

If you just want to move, rotate, or scale certain skin objects or joints withoutchanging the existing rigid skin point sets and rigid skin point weights, you can doso by detaching and then reattaching the skeleton, or by detaching and thenreattaching selected joints only. For more information, see "Detaching andreattaching skeleton" on page 367, and "Detaching and reattaching selected joints"on page 368.

To change the smooth skinning deformation effects, you can edit the rigid skin pointweights with the Component Editor or the Paint Weights Tool, the same tool you canuse to paint cluster deformer weights. As you check the binding, you can use thePaint Weights Tool to view the influence of each joint and change the weights bypainting. This tool provides an intuitive way to modify deformation effects. Formore information, see "Painting rigid skin point weights" on page 361.

EDITING RIGID SKIN

Editing rigid skin is described in the following sections.

Going to the bind poseThe bind pose is the pose that the skeleton is in when you bind skin. When you posea character’s skeleton after skinning, the skeleton’s actions cause deformations to theskin. The only pose that does not cause deformations to the skin is the bind pose.

You must return to the bind pose if you decide to bind additional objects or addadditional influence objects.

Page 357: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

357

Note that if you bound smooth skin to selected joints only, going to bind pose willnevertheless return all the joints the skeleton to the bind pose. Also, the skeleton willgo to the bind pose even if it is parented to group nodes. The group nodes will notprevent going to bind pose.

To go to bind pose:

1 Select the character’s skeleton.

2 Select Skin > Go to Bind Pose.

The skeleton goes to the pose it had during binding.

Overcoming problems with reaching the bind pose

Locked attributesThe skeleton will not be able to go to the bind pose right away if the attributes of anyof its joints are locked. Typically, joint attributes can be locked by constraints,expressions, IK spline handles, or any IK handles with keys set. These features candrive the values of certain joint attributes, locking them up for exclusive use. Thatthey do lock certain attributes is desirable because it provides for the reliable effectsof these features. However, if you want to go to the bind pose, you must first disablethe nodes that are locking the attributes. A quick way to do this is to disable all ofthe nodes by selecting Modify > Enable Nodes > Disable All. Next, select Skin > Goto Bind Pose, and then enable all nodes again by selecting Modify > Enable Nodes >Enable All.

Global and local bind poseTo reach its bind pose, the skeleton’s root joint must reach the pose it had duringbinding, and all the other joints below the root joint must reach the poses they hadduring binding. The pose of the root joint is relative to the scene’s world space, andthe poses of the other joints are relative to the joints above them in the skeleton’shierarchy.

A skeleton reaches its global bind pose when the root joint reaches its bind pose. Askeleton reaches its local bind pose when the other joints reach their bind poses.

Depending on what you are doing to the joints (including constraints or expressions,for example), your skeleton might reach its local bind pose, but not its global bindpose. If you get an error message that says your skeleton could only reach its localbind pose, that means that all the joints reached their bind poses except the rootjoint. You then need only check the root joint for locked attributes or expressions thatmay be affecting it.

Changing the bind poseTo change the bind pose, detach the rigid skin, adjust the skeleton and deformableobjects as desired, and then bind skin again.

Editing joint cluster channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a joint cluster channels.

Page 358: Maya Character Setup

CHARACTER SETUP PART 4

358

RIGID SKINNING | 27Editing rigid skin

To edit channels with the Channel Box:

1 Select a joint cluster node (default name: jointnClustern).

One quick way to select a joint cluster node is to select a rigid skin object, and thenselect the joint cluster node in its history from the Channel Box (under INPUTS).Alternatively, select a joint and then select the joint cluster node in its history fromthe Channel Box (under OUTPUTS).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

Upper Bound Specifies percent of the length of parent bone along which the cluster weightsdecrease. The cluster weights decrease from the Upper Value as they approach thejoint according to the Upper Dropoff Type. Default is 10.

Upper Value Specifies the initial cluster weight value at the Upper Bound location. Default is 0.5.

Lower Bound Specifies the percent of the length of the joint’s bone along which the cluster weightsdecrease. The cluster weights decrease from the Lower Value as they approach thejoint according to the Lower Dropoff Type. Default is 10.

Lower Value Specifies the initial cluster weight value at the Lower Bound location. Default is 1.

Upper DropoffType Specifies how the cluster weights along the parent bone decrease as they approach

the joint. Select linear (1), sine (2), exponential (3), or none (4). Default is linear.

Lower DropoffType Specifies how the cluster weights along the joint’s bone decrease as they approach

the joint. Select linear (1), sine (2), exponential (3), or none (4). Default is linear.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing joint cluster attributes

To edit attributes with the Attribute Editor:

1 Select a skin cluster node (default name: jointClustern).

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Joint Cluster Attributes, DeformerAttributes, Node Behavior, and Extra Attributes.

Joint Cluster Attributes

Upper Bound Specifies percent of the length of parent bone along which the cluster weightsdecrease. The cluster weights decrease from the Upper Value as they approach thejoint according to the Upper Dropoff Type. Default is 10.

Upper Value Specifies the initial cluster weight value at the Upper Bound location. Default is 0.5.

Page 359: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

359

Upper DropoffType Specifies how the cluster weights along the parent bone decrease as they approach

the joint. Select linear (0), sine (1), exponential (2), or none (3). Default is linear.

Lower Bound Specifies the percent of the length of the joint’s bone along which the cluster weightsdecrease. The cluster weights decrease from the Lower Value as they approach thejoint according to the Lower Dropoff Type. Default is 10.

Lower Value Specifies the initial cluster weight value at the Lower Bound location. Default is 1.

Lower DropoffType Specifies how the cluster weights along the joint’s bone decrease as they approach

the joint. Select linear (0), sine (1), exponential (2), or none (3). Default is linear.

Relative Specifies that the deformation take place only when the parent of the joint clusterhandle is moved, rotated, or scaled.

PartialResolution Specifies whether Maya provides the complete deformation, or only an

approximation of the deformation. Selections include full and partial. Full specifiesthe complete deformation. Partial specifies an approximation of the deformation,which can improve Maya’s display performance. With partial, Maya rounds downthe cluster weights based on the Percent Resolution. Default is full.

PercentResolution Specifies the increment percentage by which the joint cluster deformation resolution

is rounded down. Maya uses the increment percentage to round off the skin pointcluster weights to the next lowest increment. For example, with a Percent Resolutionof 5.00, a skin point’s joint cluster weight of .94 would be rounded down to .90. Ajoint cluster weight of .46 would be rounded down to .45. Default is 5.00. (Availableonly if Partial Resolution is set to partial.)

AngleInterpolation Specifies the interpolation direction. Use this attribute to correct undesirable

discontinuities in the deformation effect when you change joint angles or weightpercentages even by a small amount. The discontinuities occur when the joint clusternode is using an inappropriate interpolation direction to guide the deformationeffect. To change the interpolation direction, you can set Angle Interpolation toclosest, positive, or negative. By default, Angle Interpolation is closest, whichprovides the usual rigid skinning deformation effects. The default setting is fine formost situations, but when you encounter discontinuities you can adjust thedeformation effect by selecting a positive or negative interpolation.

Deformer Attributes

Envelope Specifies the deformation scale factor. Values can vary from 0 to 1. Default is 1.

Node Behavior

For more information, see "Editing node behavior to improve performance" on page313.

Extra Attributes

(No extra attributes by default.)

Editing rigid skin point weightsWith the Component Editor, you can directly modify the values of individual rigidskin point weights.

Page 360: Maya Character Setup

CHARACTER SETUP PART 4

360

RIGID SKINNING | 27Editing rigid skin

To query rigid skin point weights:

1 Select the rigid skin points whose weights you want to edit.

2 Select Window > General Editors > Component Editor.

The Component Editor is displayed.

The Component Editor displays the component data for currently selectedcomponents in the workspace.

By default, the Component Editor updates dynamically as you select components inthe workspace. Also, as you select components in the Component Editor, theworkspace updates dynamically as well.

3 Click on the Joint Clusters tab.The Joint Clusters section lists the weights assigned toCVs, vertices, or lattice points bound to a skeleton’s joints by rigid skinning.

To modify a rigid skin point’s weight:

1 In the Component Editor’s spreadsheet, click the component data box you want toedit.

Only the component whose box you’ve selected is now selected in the workspace.

2 Enter a new value.

To modify several rigid skin point weights at once:

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, drag through the component data boxes youwant to edit.

3 Enter the value you want all the boxes to have.

To modify an entire row or column (UNIX only):

1 In the workspace, select the points whose weights you want to edit.

2 In the Component Editor’s spreadsheet, click one of the boxes in the row or column.

3 Click the row or column heading.

Now all the boxes for the row or column are selected.

4 Enter a value for all the boxes in the row or column.

To modify an entire row or column (Windows only):

1 In the workspace, select the points whose weights you want to edit.

2 To change all the entries of a row or column, in the Component Editor’s spreadsheet,select the row or column heading.

3 Shift select any of the boxes in that row or column.

4 Enter a new value to update the entire row or column.

Page 361: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

361

Painting rigid skin point weights

You can paint rigid skin point weights with the Paint Cluster Weights Tool, the sametool you use to paint cluster deformer weights. For more information about the PaintCluster Weights Tool, see "Painting cluster weights" on page 93.

Note that painting rigid skin point weights uses a different painting tool than thetool for painting smooth skin point weights.

To paint weights on a rigid bound skin:

1 Select the rigid skin object you want to paint weights on.

2 Go into smooth shading mode (select Shading > Smooth Shade All or press thedefault hotkey, 5).

3 Select Deform > Paint Cluster Weights Tool ❐.

4 Check that Color Feedback is turned on in the Display section. Color feedback helpsyou identify the weights on the surface by representing them as grayscale values(smaller values are darker, larger values are lighter).

5 Select the joint cluster you want to paint weights on. In the Paint Attributes sectionof the Tool Settings window, click the jointClustern.weights button and select theappropriate joint cluster weights name from the pop-up menu.

Note that you can only paint weights on one cluster at a time. If you select more thanone cluster, you can only paint weights on the active one (the one that provides colorfeedback).

Tip

You can use the default hotkey Alt c to turn Color Feedback on and offoutside the Tools Settings Editor.

Page 362: Maya Character Setup

CHARACTER SETUP PART 4

362

RIGID SKINNING | 27Editing rigid skin

If the surface has only one cluster, you can select the surface alone.

6 Select a brush, paint operation, and value and define other settings as required. See"Painting cluster weights" on page 93.

7 Drag the brush across the cluster.

Tip

If you are painting on a single surface, you can skip step 3 and select thejoint cluster without opening the Tool Settings window by right-clickingthe surface and selecting the appropriate joint cluster weights name fromthe Paint command submenu.

Tip

You can quickly pick weight values from one cluster and paint them onanother cluster or the same cluster using hotkeys.

1 Select the cluster with the weight values you want to pick.

2 Hold down the Pick Color Mode hotkey (default hotkey: /), click onthe area of the cluster with the weight you want to pick, then releasethe hotkey.

3 If you are painting the picked weight on the same cluster, drag thebrush across the cluster.

If you are painting the picked weight on another cluster, select thatcluster, then drag the brush across it.

Page 363: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

363

Editing rigid skin point set membership

You can directly edit rigid skin point set membership with the Edit MembershipTool. For a more intuitive approach, you can also paint rigid skin point setmemberships with the Paint Set Membership Tool (see "Painting rigid skin point setmembership" on page 364). Note that you can also edit rigid skin point setmemberships from the Relationship Editor (Window > RelationshipEditors > Deformer Sets), but this approach is less intuitive than using the EditMembership Tool or the Paint Set Membership Tool.

To edit set membership with the Edit Membership Tool:

1 Go into object selection mode (click the select by object type icon).

2 Select the joint whose set you want to edit.

3 Go into component selection mode (click the select by component type icon).

4 Select Deform > Edit Membership Tool.

5 Using the pointer, select the points whose rigid skin point set membership you wantto change.

The members of the rigid skin point set whose joint you selected are displayed inyellow. This set is the currently selected set. Members of other sets are displayed inthe colors associated with the sets’ joints. Points displayed in dark red are not in aset.

6 To add points to the currently selected set, select them while pressing the Shift keyand left mouse button, and then release the mouse button.

The selected points are now displayed in yellow, indicating they are in the currentlyselected set.

7 To remove points from the currently selected set, select them while pressing the Ctrlkey and the left mouse button, and then release the mouse button.

Page 364: Maya Character Setup

CHARACTER SETUP PART 4

364

RIGID SKINNING | 27Editing rigid skin

The selected points are now displayed in dark red, indicating they are currently notin a set. Points that are not in rigid skin point set will not be affected by theskeleton’s actions, so in general you’ll want to have all the points in a set. Of course,the points do not necessarily have to be in a rigid skin point set; they could be in, forexample, a cluster deformer set whose handle is parented to some part of theskeleton’s hierarchy.

8 To add points to some other rigid skin point set, first select the rigid skin point set’sjoint. The points currently in the set are displayed in yellow. Now, as before, selectthe points you want to add while pressing the Shift key and the left mouse button,and then release the mouse button.

Painting rigid skin point set membership

You can paint rigid skin point set membership in the same way you paint deformerset membership. (For more detailed information, see "Painting deformer setmembership" on page 47.)

To paint rigid skin point set membership:

1 Select the rigid skin object(s).

2 Go into smooth shading mode (default shortcut: 5 key).

3 Select Deform > Paint Set Membership Tool ❒.

The SetMembership tab should be selected.

4 In the Set Membership box, select the joint set with the point memberships you wantto edit.

5 Use the brush to add, transfer, or remove set memberships.

For more information about painting tools, see Using Maya: Painting.

Page 365: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

365

To paint creasing effects:

1 Select smooth shaded display mode (default shortcut: 5 key).

2 Select the cylinder.

3 Select Deform > Paint Cluster Weights Tool ❒.

(For more information, see "Painting rigid skin point weights" on page 361.)

4 In the Paint Weights section of the Tool Settings window, notice thejoint1Cluster1.weights button.

Click this button to list the names of all the rigid skin point clusters.

5 Select a rigid skin point cluster. For example, cluster-joint3Cluster1 > weights.

In the scene, the shading indicates the weighting of each point in the set.

6 Select another rigid skin point cluster. For example, select cluster-joint4Cluster1 >weights.

7 Check the other rigid skin point cluster. For example, check cluster-joint2Cluster1.

Page 366: Maya Character Setup

CHARACTER SETUP PART 4

366

RIGID SKINNING | 27Editing rigid skin

8 Use the Paint Cluster Weights Tool’s brush to smooth the deformation effect.

The brush provides an intuitive way to change the influence of the joints. Use thebrush’s Add operation to increase the influence of nearby joints, and use the Scaleoperation to decrease the influence of further joints. Use the Smooth operation tosmooth out the influences of the joints.

Experiment with using the brush. With just a little experimentation, you can quicklybecome proficient at painting the skin point weights of joints. For more informationon using paint tools, see Using Maya: Painting.

To further smooth and deform rigid skinning, you can use flexors. For moreinformation, see "Creating flexors" on page 368.

Detaching rigid skinAfter you have bound skin, you might decide that you want to modify the skeleton,change the bind pose, or do some further modeling on the skin. To do these thingsyou must first detach the skin from the skeleton, and then when you’re done youmust bind skin again.

Detaching skin does not preserve the rigid skin point sets and the rigid skin pointweights. If you want to preserve the rigid skin point sets, see "Detaching andreattaching skeleton" on page 367 and "Detaching and reattaching selected joints"on page 368.

To set detach skin options:

1 If you want to detach now, select the skin object(s) you want to detach.

2 Select Skin > Detach Skin ❒.

Page 367: Maya Character Setup

RIGID SKINNING | 27Editing rigid skin

SKINNING CHARACTER SETUP

367

The Detach Skin Options window is displayed.

History Specifies what effect detaching skin will have on the position of rigid skin objects,and on the rigid skinning (jointCluster) nodes upstream of the objects. Selectionsinclude Delete History, Keep History, or Bake History.

Delete History will detach the skin, move it to its original, undeformed shape, anddelete the rigid skinning (jointCluster) nodes.

Keep History will detach the skin and move it to its original, undeformed shape. Itwill not delete the skin’s rigid skinning (jointCluster) nodes.

Bake History will detach the skin and delete the skin’s rigid skinning (jointCluster)nodes, but will not move the skin to its original, undeformed shape. The skin willmaintain its current shape after detachment.

Specify Delete History, Keep History, or Bake History. Default is Delete History.

Coloring Specifies whether to remove the joint colors assigned during binding. Click on or off.Default is on.

3 Click Detach to detach skin.

or

Click Save to save detach options without detaching skin.

or

Click Reset to reset to default detach skin options.

To detach skin:

1 Select skeleton(s).

2 Select Skin > Detach Skin to detach skin with previously set detach skin options.

Unless the History detach skin option was set to Bake History, the skin objects moveto their undeformed, bind pose positions. Their transform (Translate, Rotate, andScale) attributes are unlocked. Unless the History detach skin option was set to KeepHistory, Maya deletes rigid skinning (jointCluster) nodes upstream of the objects.

Detaching and reattaching skeletonDetaching a skeleton from its skin objects unlocks the transform attributes of theobjects so that you can reposition them. Unlike detaching skin, detaching skeletonspreserves the rigid skin point sets and the rigid skin point weights. Detaching andreattaching a skeleton is especially useful if you want to move, rotate, or scale theskin objects directly while not changing which joints influence which rigid skinpoints.

To detach skeleton:

1 Select the skeleton’s root joint, or any joint on the skeleton.

2 Select Skin > Edit Rigid Skin > Preserve Skin Groups > Detach Skeleton.

The skin objects that were being influenced by the now detached skeleton move totheir undeformed positions. The transform (Translate, Rotate, and Scale) attributes(or channels) of the objects are now unlocked, so you can now move, rotate, or scalethe objects.

Page 368: Maya Character Setup

CHARACTER SETUP PART 4

368

RIGID SKINNING | 27Creating flexors

To reattach skeleton:

1 Select the skeleton’s root joint, or any joint on the skeleton.

2 Select Skin > Edit Rigid Skin > Preserve Skin Groups > Reattach Skeleton.

Detaching and reattaching selected jointsThis procedure is similar to detaching and reattaching a skeleton, except that it onlyapplies to selected joints.

Detaching selected joints from the skin objects they influence unlocks the transformattributes of the objects so that you can reposition them. Detaching selected jointspreserves the rigid skin point sets and the rigid skin point weights. Detaching andreattaching selected joints is especially useful if you want to move, rotate, or scalecertain skin objects directly while not changing which joints influence which rigidskin points.

To detach selected joints:

1 Select the joints you want to detach.

2 Select Skin > Edit Rigid Skin > Preserve Skin Groups > Detach Selected Joints.

The skin objects that were being influenced by the now detached joints move to theirundeformed positions. The transform (Translate, Rotate, and Scale) attributes (orchannels) of the objects are now unlocked, so you can now move, rotate, or scale theobjects.

To reattach selected joints:

1 Select the joints you want to reattach.

2 Select Skin > Edit Rigid Skin > Preserve Skin Groups > Reattach Selected Joints.

CREATING FLEXORS

You can create five types of flexors:

• Joint lattice flexors

• Bone lattice flexors

• Joint sculpt flexors

• Bone sculpt flexors

• Joint cluster flexors

Creating all types of flexors

To create flexors:

1 Put the skeleton into bind pose.

You can create a flexor if the skeleton is not in its bind pose, but you might getunexpected deformation effects.

2 If you want to create one or more joint lattice, joint sculpt, or joint cluster flexors,select the joints on which you want to create the flexors.

Page 369: Maya Character Setup

RIGID SKINNING | 27Creating flexors

SKINNING CHARACTER SETUP

369

3 If you want to create one or more bone lattice or bone sculpt flexors, select the boneson which you want to create the flexors.

Note that by default bone lattice flexors are driven by the child joints of the jointswhose bones you select for them. This is what you would usually want for mostcharacter setup situations. However, after you create the bone lattice flexors, you canassign any other joint in the skeleton to drive them (see "Reassigning bone latticeflexor joints" on page 373).

4 Select Skin > Edit Rigid Skin > Create Flexor.

5 The Create Flexor window is displayed.

Flexor Type Specifies whether to create lattice flexors, sculpt flexors, or joint cluster flexors. Selectlattice, sculpt, or joint cluster. Default is lattice.

Joints Specifies whether to create joint lattice, joint sculpt, or joint cluster flexors at selectedjoints only, or at all a skeleton’s joints. Click At Selected Joint(s) or At All Joint(s).Default is At Selected Joint(s).

Bones Specifies whether to create bone lattice or bone sculpt flexors at selected bones only,or at all bones. Click At Selected Bone(s) or At All Bone(s) to create. Default specifiesno bone flexors will be created. This option does not apply to joint cluster flexors.

Lattice Options

If Flexor Type is lattice, specify the Lattice Options:

S, T, U Divisions Specifies the structure of the lattice in the lattice’s local STU space. (STU spaceprovides a special coordinate system for specifying the structure of lattices.)

You can specify the lattice’s structure in terms of S, T, and U divisions. When youspecify the divisions, you also specify the number of lattice points in the lattice,because the lattice points are located where the divisions meet on the lattice’sexterior. The greater the number of divisions, the greater the lattice point resolution.Though your control over the deformation increases with the number of latticepoints, the performance may be affected.

The default settings are S has 2 divisions, T has 5 divisions, and U has 2 divisions,which provides 20 lattice points. You can quickly change the settings by using thesliders to select values from 2 to 20.

Position theFlexor Specifies that you want to move, rotate, or scale the lattice now, before you create the

lattice flexor. This enables you to adjust the lattice before it starts having an effect onskin objects. Click Position the Flexor, and then use the Move Tool, Rotate Tool, orScale Tool to adjust the lattice now.

Sculpt Options

If Flexor Type is sculpt, specify the Sculpt Options:

MaxDisplacement Specifies the distance that the sculpt sphere can push a skin object’s points from the

sculpt sphere’s surface.Use slider to select values from 0.000 to 2.000. Default is0.000.

DropoffDistance Specifies the sculpt sphere’s range of influence. (How the range of influence can

decline is specified by Dropoff Type.) Use slider to select values from 0.000 to 20.000.Default is 0.000.

Page 370: Maya Character Setup

CHARACTER SETUP PART 4

370

RIGID SKINNING | 27Editing joint lattice flexor effects

Dropoff Type Specifies how the sculpt sphere’s range of influence declines or drops off. (The rangeof influence is specified with the Dropoff Distance.) There are two Dropoff Types:None and Linear. Default is None.

Mode Specifies the sculpt sphere’s deformation mode as flip, project, or stretch. Select Flip,Project, or Stretch. Default is Stretch.

Inside Mode Specifies how the sculpt sphere influences the skin points located inside the sculptsphere. There are two modes: Ring and Even.

Ring mode pushes inside points outside of the sculpt sphere, creating a contoured,ring-like effect around the sculpt sphere.

Even mode spreads the inside points all around the sculpt sphere evenly, creating asmooth, spherical effect.

Select Ring or Even. Default is Ring.

Cluster Options

(No options for joint cluster flexors.)

• Click Create to create flexors now.

or

• Click Close to save the options and close the window.

EDITING JOINT LATTICE FLEXOR EFFECTS

You can edit joint lattice flexor effects as described in the following sections.

Manipulating the joint lattice flexor’s influence latticeYou can manipulate the joint lattice flexor’s influence lattice in the same way thatyou can manipulate the lattice deformer’s influence lattice. You can move, rotate, orscale the lattice, or you can move, rotate, or scale lattice points.

Copying joint lattice flexorsAfter you create a lattice flexor and adjust it, you might decide you want a similarlattice flexor elsewhere. For example, if you create a lattice flexor around acharacter’s left elbow joint, you might then decide to create a similar lattice flexor atthe right elbow joint.

You can now copy joint lattice flexors. When you copy, all of the attribute values andconnections are copied.

Note that you can also copy bone lattice flexors.

To copy joint lattice flexors:

1 Go to the bind pose (Skin > Go to Bind Pose).

2 Select a flexor (for example, select a lattice flexor called jointFfdnLattice).

3 Select the joint where you want to have a copy of the flexor.

4 Skin > Edit Rigid Skin > Copy Flexor.

Page 371: Maya Character Setup

RIGID SKINNING | 27Editing joint lattice flexor effects

SKINNING CHARACTER SETUP

371

Editing joint lattice flexor channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a joint lattice flexor’s channels.

To edit channels with the Channel Box:

1 Select a joint lattice flexor node (default name: jointFlexorn).

One quick way to select the flexor node is to select the flexor’s influence lattice, andthen select the joint lattice flexor node in its history from the Channel Box (underSHAPES).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Creasing Specifies the bulging of skin points on the inside of the joint rotation. As you changeCreasing, the lattice points on the inside of the joint rotation move inward oroutward to change the shape of the bulge. Positive values cause the skin to bulgeinward. Negative values cause the skin to tuck inward. Default is 0.

Rounding Specifies the bulging of skin points on the outside of the joint rotation. As youchange Rounding, the lattice points on the outside of the joint rotation move inwardor outward to change the shape of the bulge. Positive values cause the skin to bulgeoutward. Negative values cause the skin to tuck inward. Default is 0.

Length In Specifies the positions of the lattice divisions that are near the parent bone above thejoint. As you change Length In, the lattice divisions along the parent bone moveaway from or towards the joint. This changes the extent of the effects of Creasing,Rounding, Width Left, and Width Right. Positive values spread the bulging effectsup along the parent bone by moving lattice divisions away from the joint. Negativevalues compress the bulging effects closer to the joint by moving the lattice divisionscloser to the joint. Default is 0.

Length Out Specifies the positions of the lattice divisions that are near the joint’s child bone. Asyou change Length Out, the lattice divisions along the joint’s child bone move awayfrom or towards the joint. This changes the extent of the effects of Creasing,Rounding, Width Left, and Width Right. Positive values spread the bulging effectsdown along the joint’s child bone by moving lattice divisions away from the joint.Negative values compress the bulging effects closer to the joint by moving the latticedivisions closer to the joint. Default is 0.

Width Left Specifies the bulging of skin points on the left side of the joint rotation. As youchange Width Left, the lattice points on the left side of the joint rotation moveoutward or inward to change the shape of the bulge. Positive values cause the skinto bulge outward. Negative values cause the skin to bulge inward. Default is 0.

Width Right Specifies the bulging of skin points on the right side of the joint rotation. As youchange Width Right, the lattice points on the right side of the joint rotation moveoutward or inward to change the shape of the bulge. Positive values cause the skinto bulge outward. Negative values cause the skin to bulge inward. Default is 0.

3 Click on a channel name with the left mouse button.

Page 372: Maya Character Setup

CHARACTER SETUP PART 4

372

RIGID SKINNING | 27Editing bone lattice flexor effects

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

EDITING BONE LATTICE FLEXOR EFFECTS

You can edit bone lattice flexor effects by the following:

• Manipulating bone lattice flexor’s influence lattice

• Copying bone lattice flexors

• Editing bone lattice flexor channels

Manipulating bone lattice flexor’s influence latticeYou can manipulate the bone lattice flexor’s influence lattice in the same way thatyou can manipulate the lattice deformer’s influence lattice. You can move, rotate, orscale the lattice, or you can move, rotate, or scale lattice points.

Copying bone lattice flexors

To copy bone lattice flexors:

1 Go to the bind pose (Skin > Go to Bind Pose).

2 Select a flexor (for example, select a lattice flexor called jointFfdnLattice).

3 Select the bone where you want to have a copy of the flexor.

4 Select Skin > Edit Rigid Skin > Copy Flexor.

Editing bone lattice flexor channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a bone lattice flexor’s channels.

By default, the effects specified by the bone lattice flexor channels are driven by thechild joints of the joints whose bones you selected for them when you created theflexors. This is what you would usually want for most character setup situations.However, you can assign any other joint in the skeleton to drive them (see“Reassigning bone lattice flexor joints” on page 298).

To edit channels with the Channel Box:

1 Select a bone lattice flexor node (default name: boneFlexorn).

One quick way to select the flexor node is to select the flexor’s influence lattice, andthen select the bone lattice flexor node in its history from the Channel Box (underSHAPES).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Page 373: Maya Character Setup

RIGID SKINNING | 27Editing bone lattice flexor effects

SKINNING CHARACTER SETUP

373

Bicep Specifies the bulging of skin points on the inside of the child joint’s rotation. As youchange Bicep, the lattice points on the inside of the joint rotation move inward oroutward to change the shape of the bulge. Positive values cause the skin to bulgeinward. Negative values cause the skin to tuck inward. Default is 0.

Tricep Specifies the bulging of skin points on the outside of the child joint’s rotation. As youchange Tricep, the lattice points on the outside of the joint rotation move inward oroutward to change the shape of the bulge. Positive values cause the skin to bulgeoutward. Negative values cause the skin to tuck inward. Default is 0.

Length In Specifies the positions of the lattice divisions that are near the bone’s joint, above thecenter of the bone. As you change Length In, the lattice divisions near the bone’sjoint move away from or towards the bone’s center. This changes the extent of theeffects of Bicep, Tricep, Width Left, and Width Right. Positive values spread thebulging effects up along the bone by moving lattice divisions away from the bone’scenter. Negative values compress the bulging effects by moving the lattice divisionscloser to the bone’s center. Default is 0. Note that Length In does not affect theposition of the furthest lattice division.

Length Out Specifies the positions of the lattice divisions that are near the bone’s child joint,below the center of the bone. As you change Length Out, the lattice divisions alongthe bone move away from or towards the center of the bone. This changes the extentof the effects of Bicep, Tricep, Width Left, and Width Right. Positive values spreadthe bulging effects down along the bone by moving lattice divisions away from thebone’s center. Negative values compress the bulging effects by moving the latticedivisions closer to the bone’s center. Default is 0. Note that Length Out does notaffect the position of the furthest lattice division.

Width Left Specifies the bulging of skin points on the left side of the child joint’s rotation. Asyou change Width Left, the lattice points on the left side of the joint rotation moveoutward or inward to change the shape of the bulge. Positive values cause the skinto bulge outward. Negative values cause the skin to bulge inward. Default is 0.

Width Right Specifies the bulging of skin points on the right side of the child joint’s joint rotation.As you change Width Right, the lattice points on the right side of the joint rotationmove outward or inward to change the shape of the bulge. Positive values cause theskin to bulge outward. Negative values cause the skin to bulge inward. Default is 0.

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Reassigning bone lattice flexor jointsBy default, the joint that drives a bone lattice flexor is the child of the bone that theflexor’s influence lattice surrounds. This makes sense for situations such as creatingarm bicep muscle effects, where the rotation of the elbow joint drives a bulgedeformation around the shoulder joint’s bone. In fact, it makes sense for most of themuscle deformation effects you might want for conventional human characters.

However, you can have the action of the bone lattice flexor be driven by any otherjoint you wish. The most common situation might be where you want the rotation ofthe joint whose bone the influence lattice surrounds drive the bone lattice flexor. Forinstance, for some reason you might want to have the rotation of the shoulder joint

Page 374: Maya Character Setup

CHARACTER SETUP PART 4

374

RIGID SKINNING | 27Editing joint or bone sculpt flexor effects

drive the bulge around the shoulder joint’s bone. Keep in mind that you can haveany joint drive the bone lattice flexor. For instance, you could have the rotation of afinger joint drive a bone lattice flexor around a character’s head.

To reassign bone lattice flexor joints:

1 Select the bone lattice flexor’s lattice.

2 Select the joint that you want to have drive the bone lattice flexor.

Note that the bone lattice flexor cannot be assigned to a bone whose joint is theskeleton’s root joint.

3 Select Skin > Edit Rigid Skin > Reassign Bone Lattice Joint.

The bone lattice flexor is now driven by the joint you’ve selected. Remember that tosee the effects of the bone lattice flexor, you must set the bone lattice flexor’schannels to values other than zero. For more information, see "Editing bone latticeflexor channels" on page 372.

EDITING JOINT OR BONE SCULPT FLEXOR EFFECTS

You can edit joint or bone sculpt flexor effects by the following:

• Manipulating the sculpt sphere

• Editing sculpt flexor channels

Manipulating the sculpt sphereYou can directly manipulate the sculpt flexor’s sculpt sphere in the same way thatyou can manipulate a sculpt deformer’s sculpt sphere.

Editing sculpt flexor channelsChannels are the keyable attributes displayed in the Channel Box. The Channel Boxprovides a convenient way to edit a bone lattice flexor’s channels.

To edit channels with the Channel Box:

1 Select a bone lattice flexor node (default name: boneFlexorn).

One quick way to select the flexor node is to select the flexor’s influence lattice, andthen select the bone lattice flexor node in its history from the Channel Box (underSHAPES).

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed by default:

Envelope Specifies the deformation scale factor. Default is 1.

MaxDisplacement Specifies the distance that the sculpt sphere can push a skin object’s points from the

sculpt sphere’s surface. Default is 0.

DropoffDistance Specifies the sculpt sphere’s range of influence. Default is 0.

Page 375: Maya Character Setup

RIGID SKINNING | 27Editing joint cluster flexor effects

SKINNING CHARACTER SETUP

375

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

EDITING JOINT CLUSTER FLEXOR EFFECTS

You can edit joint cluster effects by using manipulators.

Editing with joint cluster flexor manipulatorsCluster flexors include manipulators you can use to edit their deformation effects. Acluster flexor’s manipulators include a pair of rings. Each ring includes twomanipulators: a diamond manipulator and a radial manipulator. Located at thecenter of the ring and along the center of a bone, the diamond manipulator controlsthe extent of the smoothing provided by the cluster flexor. Located on the ring, theradial manipulator controls the magnitude of the smoothing.

To edit with the cluster flexor manipulators:

1 Select the cluster flexor handle (the J icon).

2 Select the Show Manipulator Tool.

3 To edit the extent of smoothing, select one of the diamond manipulators.

4 Use the left mouse button to drag the diamond manipulator towards or away fromthe joint.

The extent of smoothing changes as you drag the manipulator. Note that the jointcluster’s Upper Bound or Lower Bound channels change as you drag. For moreinformation on these channels, see "Editing joint cluster channels" on page 357.

5 To edit the magnitude of smoothing, select one of the radial manipulators.

6 Use the left mouse button to drag the radial manipulator towards or away from thediamond manipulator.

The magnitude of smoothing changes as you drag the manipulator. Note that thejoint cluster’s Upper Value or Lower Value channels change as you drag. For moreinformation on these channels, see "Editing joint cluster channels" on page 357.

EXAMPLE

Skinning a cylinder by rigid skinningThis example is similar to "Skinning a cylinder by smooth skinning" on page 341, sothat you can compare rigid skinning with smooth skinning.

To create the cylinder:

• Create a NURBS cylinder with the default options, except set Ratio of Height toRadius to 8, Number of Sections to 16, and number of Spans to 32.

Page 376: Maya Character Setup

CHARACTER SETUP PART 4

376

RIGID SKINNING | 27Example

To create the skeleton for the cylinder:

• Build a skeleton for the cylinder. Have the skeleton consist of a single joint chainwith about seven joints.

To bind by rigid skinning:

1 Select skeleton’s root joint (default name: joint1).

2 Select Skin > Bind Skin > Rigid Bind.

Maya binds the cylinder to the skeleton by rigid skinning, using the default bindskin options. The cylinder is now a rigid skin object. For more information onbinding rigid skin, see "Binding rigid skin" on page 354.

Now you can exercise the skeleton and get immediate deformation effectsappropriate for the character.

To exercise skeleton:

Select the joint approximately at the center of the cylinder (for instance, joint4), androtate it about 90 degrees.

Skeleton consisting of one jointchain (joint1 through joint7).Joint4 starts approximately inthe center of the cylinder.

Page 377: Maya Character Setup

RIGID SKINNING | 27Example

SKINNING CHARACTER SETUP

377

Note that rigid skinning provides a sharp deformation effect around the rotatedjoint. You can adjust the deformation effect with the Paint Weights Tool.

To paint creasing effects:

1 Select smooth shaded display mode (default shortcut: 5 key).

2 Select the cylinder.

3 Select Deform > Paint Cluster Weights Tool ❒.

(For more information, see "Painting rigid skin point weights" on page 361.)

4 In the Tool Settings window, the Weight tab should be displayed.

5 Note the Clusters box.

The Clusters box lists the names all the rigid skin point sets (default names:jointnSetn).

6 Click on a rigid skin point set. For example, joint3Set1.

In the scene, the shading indicates the weighting of each point in the set.

7 In the Clusters box, click on another rigid skin point set. For example, clickjoint4Set1.

Page 378: Maya Character Setup

CHARACTER SETUP PART 4

378

RIGID SKINNING | 27Example

8 Check the other rigid skin point sets. For example, check joint2Set1.

9 Use the Paint Cluster Weights Tool’s brush to smooth the deformation effect.

The brush provides an intuitive way to change how the influence of the joints. Usethe brush’s Add operation to increase the influence of nearby joints, and use theScale operation to decrease the influence of further joints. Use the Smooth operationto smooth out the influences of the joints.

Experiment with using the brush. With just a little experimentation, you can quicklybecome proficient at painting the skin point weights of joints. For more informationon using paint tools, see Using Maya: Painting.

To further smooth and deform rigid skinning, you can use flexors. For moreinformation, see "Creating flexors" on page 368.

Page 379: Maya Character Setup

PART 5

CONSTRAINTS

Page 380: Maya Character Setup
Page 381: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

381

28 INTRODUCING CONSTRAINTS

Constraints enable you to constrain the position, orientation, or scale of an object toother objects. Further, with constraints you can impose specific limits on objects andautomate animation processes.

UNDERSTANDING CONSTRAINTS

Using constraints, you can control the position, orientation, or scale of one objectbased on the position, orientation, or scale of one or more “target” objects. Inaddition, you can impose specific limits on objects and automate animationprocesses.

For example, if you want to quickly animate a sled sliding down a bumpy hill, youmight first use a geometry constraint to constrain the sled to the surface. You couldthen use a normal constraint to make the sled sit flat on the surface. After you createthese constraints, you key the sled’s positions at the top and bottom of the hill. Theanimation is then complete.

Maya includes eight types of constraints for character setup and animation:

Page 382: Maya Character Setup

CHARACTER SETUP PART 5

382

INTRODUCING CONSTRAINTS | 28Constraint node behavior

• Point constraints: Point constraints constrain an object’s position to the position ofone or more objects. For more information, see “Using Point Constraints” in Chapter29.

• Aim constraints: Aim constraints constrain an object’s orientation so that it alwaysaims at other objects. For more information, see “Using Aim Constraints” in Chapter30.

• Orient constraints: An orient constraint causes an object to follow the orientation ofone or more objects. For more information, see “Using Orient Constraints” inChapter 31.

• Scale constraints: A scale constraint causes an object to follow the scaling of one ormore objects. For more information, see “Using Scale Constraints” in Chapter 32.

• Geometry constraints: A geometry constraint restricts an object to a NURBS surface,NURBS curve, or polygonal surface (mesh). For more information, see “UsingGeometry Constraints” in Chapter 33.

• Normal constraints: Normal constraints constrain an object’s orientation so that italigns with the normal vectors of a NURBS or polygonal surface (mesh). “UsingNormal Constraints” in Chapter 34.

• Tangent constraints: Tangent constraints constrain an object’s orientation so that theobject always points in the direction a curve. For more information, see “UsingTangent Constraints” in Chapter 35.

• Pole vector constraints: A pole vector constraint constrains an IK rotate planehandle’s pole vector. For more information, see “Using Pole Vector Constraints” inChapter 36.

Note that other software packages use the term “animation controllers” to refer towhat Maya calls constraints.

CONSTRAINT NODE BEHAVIOR

You don’t need to know about constraint node behavior in order to use constraintseffectively. If you are new to constraints, you can skip this section. However,familiarity with constraint node behavior can provide you with more control overconstraint manipulation and performance.

For each object in your scene, if there has been any change to its node or any of thenodes in its history (its upstream or downstream nodes), Maya will evaluate thenodes and update the display based on the node’s node behavior attributes. Thenode behavior attributes for constraint nodes can affect how constraint effects areevaluated and displayed.

Understanding node behavior attributesThe node behavior attributes include Caching and Node State.

Caching Specifies that Maya store the results of upstream evaluations, and then provide thoseresults to the node. This saves Maya from having to re-evaluate the upstream nodesevery time the node needs the results. If there are no changes to the upstream nodes,then this setting can improve display performance with no loss of results. However,note that caching uses more memory than would otherwise be used, which couldadversely affect performance. Also, if there are changes to upstream nodes, morememory is allocated and then freed, which could also adversely affect displayperformance.

Page 383: Maya Character Setup

INTRODUCING CONSTRAINTS | 28Enabling and disabling all constraint nodes

CONSTRAINTS CHARACTER SETUP

383

Node State Set Node State to Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, or Waiting-Blocking. (Note that for constraints the Node State attributeis available as a channel in the Channel Box.)

Normal Specifies that Maya evaluate and display the constraint. Maya will evaluate the nodeas usual. This is the default.

HasNoEffect Specifies that Maya prevent the constraint, but display the object. Maya will evaluatethe nodes in the node’s history, but not the node itself.

Blocking Specifies that Maya prevent the constraint, and not display the object. Maya will notreport the results of any evaluations of upstream nodes to this node.

Waiting-Normal (For Maya internal use only.) Specifies that if the dependency graph evaluationrefresh performance setting (Window > Settings/Preferences > PerformanceSettings) is set to Demand or Release, the node will take the Normal state when youclick Update or release the mouse button.

Waiting-HasNoEffect (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theHasNoEffect state when you click Update or release the mouse button.

Waiting-Blocking (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theBlocking state when you click Update or release the mouse button.

Editing node behavior

To set node behavior with Attribute Editor:

1 Open the node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Click Caching on or off.

4 Select the Node State as Normal, HasNoEffect, or Blocking. (The Waiting-Normal,Waiting-HasNoEffect, and Waiting-Blocking states are for Maya’s internal use.)

5 Close the Attribute Editor.

To set Node State channel with Channel Box:

When editing constraint channels with the Channel Box, you can set the Node Stateto Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, orWaiting-Blocking.

ENABLING AND DISABLING ALL CONSTRAINT NODES

You can quickly disable (or again enable) all the constraint nodes in a scene.Disabling all constraint nodes sets the Node State attribute of all constraint nodes toHasNoEffect. Enabling all constraint nodes sets the Node State attribute to Normal.For more information on the Node State attribute, see "Constraint node behavior" onpage 382.

Page 384: Maya Character Setup

CHARACTER SETUP PART 5

384

INTRODUCING CONSTRAINTS | 28Workflow summary

To disable all constraint nodes:

Turn off Modify > Enable Nodes > Constraints.

To enable all constraint nodes:

Turn on Modify > Enable Nodes > Constraints.

WORKFLOW SUMMARY

Creating constraints can be as simple as selecting the objects you want to constrainwith, selecting the object you want to constrain, and then selecting the appropriateconstraint from the Constrain menu. Using constraints can become morecomplicated as you seek to go beyond the default options for constraints.

Some constraints lock the some of the channels of constrained objects. For example,the aim constraint locks the orientation channels (Rotate X, Y, and Z) of the object itconstrains. Which channels get locked dictates how you can you use more than oneconstraint on an object. For a given object, you can use either an aim constraint,normal constraint, or tangent constraint because each of these constraints locks theorientation channels of a constrained object.

Attributes locked by constraints can also preclude the use of expressions on thoseattributes. If the locked attributes are on joints, those locked attributes can preventthe skeleton from returning to its bind pose.

Page 385: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

385

29 USING POINT CONSTRAINTS

With point constraints, you can constrain an object’s position to the position of oneor more objects. If you want to constrain an object so that it points at other objects,use the aim constraint (see Chapter 30, “Using Aim Constraints”). Additionally, pointon curve locator constraints enable you to control the shape of a NURBS curve at anypoint along the curve with one or more locators.

UNDERSTANDING POINT CONSTRAINTS

A point constraint causes an object to move to and follow the position of an object, orthe average position of several objects. This is useful for having an object match themotion of other objects.

You can also use a point constraint to animate one object to follow a series of objects.

Constrained and target objectsA constrained object is an object whose position is driven by the position of one ormore target objects. The position of one or more target objects is called the targetpoint.

Ring (torus) constrained to locatorparented to cow’s ear

Page 386: Maya Character Setup

CHARACTER SETUP PART 5

386

USING POINT CONSTRAINTS | 29Understanding point constraints

Target pointThe target point is the position of the target object’s rotate pivot. If there is more thanone target object, the target point is the average position of the rotate pivots of all thetarget objects. If you are using more than one target object, you can vary theinfluence of each target object on the calculation of the target point. The target pointcan be a weighted average of the positions of the target objects, with some targetobjects having more influence than others. The influence of target objects on theweighted average is specified by target object weights.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target point. The resulting weightedaverage drives the constrained object’s position.

Constrained object’s positionThe constrained object’s position is driven by the target point. However, you canoffset the constrained object’s position from the target point. Offsetting theconstrained object’s position from the target point can be useful in situations whereyou don’t want the local axis of the constrained object to coincide exactly with thetarget point.

Locked channelsPoint constraints lock a constrained object’s position (Translate X, Y, and Z)channels.

Related MEL commandsMEL commands related to point constraints include the following:

• pointConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a point constraint include the following:

• Point constraint node (default name: constrainedObject_pointConstraintn).

• Locator node (default name: locatorn). The point on curve locator constraint useslocators (see "Using point on curve locator constraints" on page 391).

• L east squares modifier node (default name: leastSquaresModifiern). The point oncurve locator constraint uses the least squares modifier node (see "Using point oncurve locator constraints" on page 391).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

Page 387: Maya Character Setup

USING POINT CONSTRAINTS | 29Creating point constraints

CONSTRAINTS CHARACTER SETUP

387

CREATING POINT CONSTRAINTS

When creating point constraints, you can first set creation options and then create apoint constraint, or you can immediately create a constraint with the current creationoptions.

Setting constraint options

To set constraint options:

1 If you also want to create a point constraint now, select one or more objects. The lastobject selected will be the constrained object.

2 Select Constrain > Point ❒.

The Point Constraint Options window is displayed.

3 Set the constraint options:

Weight Specifies how much the position of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create a point constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Point Constraint Options window.

Creating a point constraint

To create a point constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

2 Select Constrain > Point.

A point constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s position attributes (Translate X, Y, and Z) are now locked.Their values are now provided by the target point.

EDITING POINT CONSTRAINTS

Editing point constraints is described in the following topics.

Page 388: Maya Character Setup

CHARACTER SETUP PART 5

388

USING POINT CONSTRAINTS | 29Editing point constraints

Editing point constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The point constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the point constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the target point,which drives the position of the constrained object, can be influenced by a targetobject. (The n in Wn is an identifier for each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing point constraint attributes

To edit attributes with Attribute Editor:

1 Select the point constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, PointConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the point constraint’s selection handle.

Point Constraint Attributes

ConstraintOffset Specifies an offset position (translate X, Y, and Z) for the constrained object relative

to the target point. Note that the target point is the position of the target object’srotate pivot, or the average position of the rotate pivots of the target objects. Defaultvalues are all 0.

Offset Polarity Specifies the polarity of the Constraint Offset. In effect, the Constraint Offset valuesare multiplied by the Offset Polarity to give the constrained object’s position. Defaultis 1.

Page 389: Maya Character Setup

USING POINT CONSTRAINTS | 29Editing point constraints

CONSTRAINTS CHARACTER SETUP

389

ConstraintTranslate Informs you of the constrained object’s current position. Useful to know when you

are specifying the Constraint Offset and Offset Polarity.

Pivots

Selections for displaying the point constraint’s local rotate and scale pivots in local orworld space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained object can be influenced by the target object.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created a point constraint, you can add more target objects foradditional control over the constrained object’s position. Adding more target objectschanges the target point, which changes the constrained object’s position. Addingmore target objects is similar to creating point constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Point ❒.

The Point Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

Page 390: Maya Character Setup

CHARACTER SETUP PART 5

390

USING POINT CONSTRAINTS | 29Editing point constraints

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Removing target objectsAfter you’ve created a point constraint, you can remove any of the target objects sothat the objects no longer constrain the constrained object. Removing target objects issimilar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Point ❒.

The Point Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s position changes, indicating that it is no longer constrainedby the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the position of the constrained objectcan be influenced by a target object. The weights are attributes of the pointconstraint. For each target object, an attribute named targetObject Wn is included thatspecifies the weight of each target object. By default, the weights are set to 1, whichgives each target object an equal influence over the constrained object’s position.However, you can change the weights so that some target objects can have more (orless) influence than others. You can change target object weights with the ChannelBox or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing point constraint channels"on page 388.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing point constraintattributes" on page 388.

Animating target object weightsAn interesting technique you can use with point constraints is to animate the targetobject weights specified by the targetObject Wn channels. You can vary the weightsfrom 0 to any value, so that as an animation progresses different target objects cantake turns driving a constrained object’s motion.

Offsetting constrained object’s positionThe constrained object’s position is driven by the target point, but you can offset theconstrained object’s position from the target point. To do so, edit the ConstraintOffset and Offset Polarity attributes with the Attribute Editor.

Page 391: Maya Character Setup

USING POINT CONSTRAINTS | 29Deleting point constraints

CONSTRAINTS CHARACTER SETUP

391

To offset constrained object’s position:

Edit the Constraint Offset and Offset Polarity attributes as described in "Editingpoint constraint attributes" on page 388.

By default, these attributes are not displayed as channels in the Channel Box. Ifyou’d like to control them from the Channel Box, you can add them by using theChannel Control editor (select Window > General Editors > Channel Control.).

DELETING POINT CONSTRAINTS

To delete a point constraint, delete the point constraint node.

To delete a point constraint:

1 Select the point constraint node only. (Select the point constraint’s selection handle ifdisplayed, or use the Hypergraph to select the point constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

USING POINT ON CURVE LOCATOR CONSTRAINTS

You can constrain points on a NURBS curve (curve points) to locators. This is usefulfor deforming individual curves at specific points along the curves. By moving(translating) the locators you can change the shape of the curve without beinglimited to being able to move only the curve’s CVs. Also, when modeling, you coulduse point on curve locator constraints to connect two or more curves together so thatthey intersect.

Creating point on curve locator constraint

To create a point on curve locator constraint:

1 Create a NURBS curve.

2 To select a curve point on the curve, right-click the curve and select Curve Pointfrom the marking menu.

3 Click on the curve at where you would like to create the point on curve locatorconstraint. The curve point is displayed as a small yellow box.

4 Drag along the curve to adjust the point’s position on the curve.

As you drag, you move the curve point. The curve point’s position is defined interms of the curve’s U parameter.

To set point on curve options now, see next section.

5 Select Deform > Point On Curve.

Maya creates a locator at the curve point with the default point on curve options.The curve point is now constrained to the locator.

For each curve, Maya creates a least squares modifier node (default name:leastSquaresModifiern).

Page 392: Maya Character Setup

CHARACTER SETUP PART 5

392

USING POINT CONSTRAINTS | 29Using point on curve locator constraints

To set point on curve options:

1 Select Deform > Point On Curve ❒.

2 In the Point On Curve Options window, set the following:

Keep Original If on, specifies that Maya make a copy of the original curve shape (default name:lsqModCurven). Default is off.

Point Weight Specifies how much influence the point on curve locator constraint should have onthe curve’s shape relative to other point on curve locator constraints. Set values from0.1000 (least influence) to 1.0000 (most influence). Default is 1.0000.

• Click Create to create a point on curve locator constraint.

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Point On Curve Options window.

Editing least squares modifier attributesThe least squares modifier node controls how closely curve points stick to thelocators. If you are using many point on curve locator constraints on a curve, or theshape of the curve is particularly complex, the curve might not always be able tostick to all of the point on curve locator constraints at the same time.

To edit least squares modifier attributes with Attribute Editor:

1 Select a locator that acting as a point on curve locator constraint.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a). From the Attribute Editor, go to the least squares modifier node (defaultname: leastSquaresModifiern), which is downstream of the locator. (In the ChannelBox, the node is listed under the locator’s OUTPUTS.)

3 The following sections make available attributes: Least Squares Modifier Attributes,Point Constraints, Node Behavior, and Extra Attributes.

Least Squares Modifier Attributes

Input NurbsObject Informs you of the NURBS curve the least squares modifier node is affecting (for

example, curveShapenOriginal).

Point Constraints

pointConstraint[n] Identifies a point on curve locator constraint. The value of n corresponds to the

default locator name minus 1. For example, pointConstraint[0] corresponds tolocator1.

U Specifies the location of the point on curve locator constraint on the NURBS curve interms of the curve’s U parameter.

Page 393: Maya Character Setup

USING POINT CONSTRAINTS | 29Using point on curve locator constraints

CONSTRAINTS CHARACTER SETUP

393

Weight Specifies how much influence the point on curve locator constraint should have onthe curve’s shape relative to other point on curve locator constraints. Use slider toselect values from 0.100 to 1.000. Default is 1.000. (The value is initially specified bythe Point Weight point on curve option.)

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

(No extra attributes by default.)

Page 394: Maya Character Setup

CHARACTER SETUP PART 5

394

USING POINT CONSTRAINTS | 29Using point on curve locator constraints

Page 395: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

395

30 USING AIM CONSTRAINTS

Aim constraints constrain an object’s orientation so that it always aims at otherobjects. If you’d like to explore some examples now, see "Examples" on page 404.

UNDERSTANDING AIM CONSTRAINTS

An aim constraint constrains an object’s orientation so that the object aims at otherobjects. Typical uses of the aim constraint include aiming a light or camera at anobject or group of objects. In character setup, a typical use of an aim constraint is toset up a locator that controls eyeball movement.

Constrained and target objectsA constrained object is an object whose orientation is driven by the position of one ormore target objects. The position of the one or more target objects is called the targetpoint.

Target pointThe target point is the position of the target object’s rotate pivot. If there is more thanone target object, the target point is the average position of all the rotate pivots of thetarget objects. If you are using more than one target object, you can vary theinfluence of each target object on the calculation of the target point. The target pointcan be a weighted average of the positions of the target objects, with some targetobjects having more influence than others. The influence of target objects on theweighted average is specified by target object weights. Of course, you can alsochange the target point by moving each target object’s rotate pivot.

Page 396: Maya Character Setup

CHARACTER SETUP PART 5

396

USING AIM CONSTRAINTS | 30Understanding aim constraints

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target point. The resulting weightedaverage drives the constrained object’s orientation.

Constrained object’s orientationThe constrained object’s orientation is controlled by three vectors: the aim vector, theup vector, and the world up vector. These vectors are not displayed in theworkspace, but you can infer their effect on the constrained object’s orientation.

You do not need to understand the details of how these vectors work in order to useconstraints effectively. If you are new to constraints, you can skip the rest of thissection. However, if you want to exercise a high degree of control over an aimconstraint, you’ll need to work with these vectors. Also, familiarity with thesevectors can help you to understand how a constrained object can suddenly roll.

Aim vectorThe aim vector constrains the constrained object so that it always points at the targetpoint. The aim vector starts at the constrained object’s pivot point and always pointsat the target point.

How the object rotates to point at the target point depends on how the aim vector isdefined relative to the object’s local space. For instance, by default, the aim vector isdefined so that it points in the same direction as the local rotation positive X-axis.Consequently, by default, a constrained object’s local rotation positive X-axis willpoint at the target point.

By itself, the aim vector does not completely constrain the object, because the aimvector does not control how the object might rotate about the aim vector. Theorientation of the object about the aim vector is controlled by the up vector and theworld up vector.

Up vector and world up vectorThe up vector controls the orientation of the constrained object about the aim vector.Like the aim vector, the up vector is defined relative to the constrained object’s localspace. By default, the up vector tries to point in the same direction as the world upvector, which is defined relative to the scene’s world space. The up vector orients theconstrained object about the aim vector by trying to align itself as closely as possiblewith the world up vector.

When you move the target object(s), the constrained object’s aim vector moves topoint at the target point, and orients the constrained object accordingly.Simultaneously, the constrained object orients itself about the aim vector as directedby the up vector.

For instance, by default, the up vector is defined so that it points in the samedirection as the local rotation positive Y-axis. A constrained object’s local positive X-axis will point at the target point, as directed by the default aim vector.Simultaneously, the object’s local positive Y-axis will try to point in the samedirection as the world up vector, as directed by the object’s up vector. The aim vectorand up vector work together to constrain the orientation of the constrained object.

Page 397: Maya Character Setup

USING AIM CONSTRAINTS | 30Understanding aim constraints

CONSTRAINTS CHARACTER SETUP

397

By default, the up vector tries to stay as closely aligned with the world up vector aspossible. However, you can control the role of the world up vector in a variety ofways. For example, instead of defining the world up vector relative to theworkspace’s world space (the default), you can define it relative to some otherobject’s local space. Such an object is called a world up object.

Rolling effectsIn certain situations, the constrained object can rapidly rotate about its aim vector.To understand why this happens, you need to understand how aim vectors, upvectors, and world up vectors work. If you are new to constraints, you can skip thissection. For more information, see the previous section, "Constrained object’sorientation" on page 396.

As the aim vector approaches pointing in the same direction or the oppositedirection of the up vector, the constrained object rotates more rapidly about the aimvector. When the aim vector points in exactly the same direction, or in exactly theopposite direction, the constrained object can suddenly rotate by 180 degrees aboutthe aim vector.

These rapid rotations provide rolling effects that you might want to prevent. You canprevent rolling effects by moving or animating the world up vector. For moreinformation, see "Preventing rolling effects" on page 403.

Motion history dependence effectsMotion history dependence refers to how an object can provide different motioneffects in situations that are identical except that the object has been previouslymanipulated or animated.

For instance, when you animate an object and run the animation in a loop, if theobject ends up moving in slightly different ways at the same frame in each loop, theobject is motion history dependent. At a certain frame, the object may be orienteddifferently depending on its previous orientations. In contrast, if the object moves inexactly the same way during each loop, then the object is motion historyindependent.

Motion history dependence effects can be a problem if you want predictable motioneffects. However, if you are seeking some unpredictable motion effects, you mightwant to take advantage of an object’s motion history dependence.

In certain situations, a constrained object’s orientation can become motion historydependent. To understand why this happens, you need to be familiar with aimvectors and up vectors (see "Constrained object’s orientation" on page 396).

A constrained object can become motion history dependent if you define the aimvector and the up vector to point in the same direction. For example, you might dothis if you define the aim vector relative to the constrained object’s local Y-axis, butdo not change the default direction of the up vector, which is also relative to theobject’s local Y-axis. For more information, see "Controlling motion historydependence effects" on page 403.

A constrained object can also become motion history dependent if you set theconstraint’s World Up Type attribute to None. For more information, see "Editingaim constraint attributes" on page 400.

Page 398: Maya Character Setup

CHARACTER SETUP PART 5

398

USING AIM CONSTRAINTS | 30Creating aim constraints

Locked channelsAim constraints lock a constrained object’s orientation (Rotate X, Y, and Z) channels.

Related MEL commandsMEL commands related to aim constraints include the following:

• aimConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for an aim constraint include the following:

• Aim constraint node (default name: constrainedObject_aimConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING AIM CONSTRAINTS

When creating aim constraints, you can first set creation options and then create anaim constraint, or you can immediately create a constraint with the current creationoptions.

The default constraint options work well for constraining objects so that they aimalong their local rotation positive X-axis.

Setting constraint options

To set constraint options:

1 If you want to create an aim constraint now, select one or more objects. The lastobject selected will be the constrained object.

2 Select Constrain > Aim ❒.

The Aim Constraint Options window is displayed.

3 Set the constraint options:

Weight Specifies how much the orientation of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector will point at the target point, forcing the constrained object toorient itself accordingly. The default specifies that the object’s local rotation positiveX-axis aligns with the aim vector to point at the target point (1.0000, 0.0000, 0.0000).

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis will align with theup vector. In turn, by default, the up vector will try to align with the world upvector. Further, by default, the world up vector will point in the direction of theworld space’s positive Y-axis (0.0000, 1.0000, 0.0000).

Page 399: Maya Character Setup

USING AIM CONSTRAINTS | 30Editing aim constraints

CONSTRAINTS CHARACTER SETUP

399

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 397.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create an aim constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Aim Constraint Options window.

Creating an aim constraint

To create an aim constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

2 Select Constrain > Aim.

An aim constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s orientation attributes (Rotate X, Y, and Z) are now locked.Their values are now provided by how the constraint object’s aim vector points atthe target point.

EDITING AIM CONSTRAINTS

Editing aim constraints is described in the following topics.

Editing aim constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The aim constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

Page 400: Maya Character Setup

CHARACTER SETUP PART 5

400

USING AIM CONSTRAINTS | 30Editing aim constraints

2 In the Channel Box, the following channels are listed for the aim constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object. (The n in Wn is anidentifier for each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing aim constraint attributes

To edit attributes with Attribute Editor:

1 Select the aim constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, AimConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the aim constraint’s selection handle.

Aim Constraint Attributes

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector points at the target point, forcing the constrained object toorient itself accordingly. The default specifies that the object’s local rotation positiveX-axis aligns with the aim vector to point at the target point (1.0000, 0.0000, 0.0000).

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis aligns with the upvector. In turn, by default, the up vector tries to align with the world up vector.Further, by default, the world up vector points in the direction of the world space’spositive Y-axis (0.0000, 1.0000, 0.0000).

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 397.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

World Up Type Specifies the role of the world up vector. Selections include Scene Up, Object Up,Object Rotation Up, Vector, and None.

Scene Up specifies that the up vector try to align with the scene’s up axis instead ofthe world up vector. The world up vector is ignored.

Page 401: Maya Character Setup

USING AIM CONSTRAINTS | 30Editing aim constraints

CONSTRAINTS CHARACTER SETUP

401

(To specify the scene’s up axis, select Window > Settings/Preferences > Preferences.In the Settings category of the Preferences window, select Y or Z for the Up Axis ofthe World Coordinate System. Y is the default.)

Object Up specifies that the up vector try to aim at the origin of a specified objectinstead of aligning with the world up vector. The world up vector is ignored. Theobject whose origin the up vector tries to aim at is called the world up object. Youcan specify the world up object with the aimConstraint MEL command (use -wuoflag). If no world up object is specified, the up vector tries to aim at the origin of thescene’s world space.

Object Rotation Up specifies that the world up vector is defined relative to someobject’s local space instead of the scene’s world space. The up vector tries to alignwith the world up vector after transforming it relative to the scene’s world space.The object whose origin the up vector tries to aim at is called the world up object.You can specify the world up object with the aimConstraint MEL command (use -wuo flag). If no world up object is specified, the world up vector is defined relativeto the scene’s world space.

Vector specifies that the up vector tries to align with world up vector as closely aspossible. The world up vector is defined relative to the scene’s world space. (This isthe default.)

None specifies no calculation of the constrained object’s orientation about the aimvector. The orientation continues as whatever the orientation is right before youspecify None. With None selected, the constrained object becomes motion historydependent. For more information, see "Motion history dependence effects" on page397.

Select Scene Up, Object Up, Object Rotation Up, Vector, or None. Default is Vector.

ConstraintRotate Informs you of the current orientation of the constrained object.

ConstraintVector Informs you of the current target point, which is what the aim vector aims at.

Pivots

Selections for displaying the constraint’s local rotate and scale pivots in local orworld space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

(For more information, see “Constraint node behavior” on page 382 in Chapter 28.)

Page 402: Maya Character Setup

CHARACTER SETUP PART 5

402

USING AIM CONSTRAINTS | 30Editing aim constraints

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object’s position.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created an aim constraint, you can add more target objects foradditional control over the constrained object’s orientation. Adding more targetobjects is similar to creating aim constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Aim ❒.

The Aim Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Removing target objectsAfter you’ve created an aim constraint, you can remove any of the target objects sothat the objects no longer constrain the constrained object. Removing target objects issimilar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Aim ❒.

The Aim Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s orientation changes, indicating that it is no longerconstrained by the target objects you’ve just removed.

Page 403: Maya Character Setup

USING AIM CONSTRAINTS | 30Editing aim constraints

CONSTRAINTS CHARACTER SETUP

403

Changing target object weightsA target object’s weight specifies how much the orientation of the constrained objectcan be influenced by a target object. The weights are attributes of the aim constraint.For each target object, an attribute named targetObject Wn is included that specifiesthe weight of each target object. By default, the weights are set to 1, which gives eachtarget object an equal influence over the constrained object’s orientation. However,you can change the weights so that some target objects can have more (or less)influence than others. You can change target object weights with the Channel Box orthe Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing aim constraint channels"on page 399.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing aim constraint attributes"on page 400.

Preventing rolling effectsIn certain situations, a constrained object can rapidly roll about its aim vector.Rolling effects can happen when the aim vector approaches or points in the samedirection or in the opposite direction as the up vector. For more information, see"Rolling effects" on page 397.

You can avoid rolling effects by keeping the target point clear of the world upvector’s direction. For example, if the world up vector points in the direction of thescene’s world space Y-axis (the default), you would try to avoid having the positiveor negative Y-axis intersect the target point. You could move the target object(s) asneeded, or perhaps change the target object weights so that the target point does notget to close to the Y-axis.

However, if your animation makes such avoidances impossible, you can preventrolling by changing or animating the world up vector.

To change world up vector with Attribute Editor:

Edit the World Up Vector attribute as described in "Editing aim constraint attributes"on page 400. Note that you can also use the Channel Box to edit the World UpVector.

To animate world up vector with Channel Box:

You can set keys on the World Up Vector attribute by using the Channel Box. Toselect the World Up Vector attribute, see “Editing aim constraint channels withChannel Box” on page 25. To set keys, after you select the attribute press the rightmouse button and select Key Selected.

Controlling motion history dependence effectsIn certain situations, a constrained object can become motion history dependent. Formore information, see "Motion history dependence effects" on page 397.

Page 404: Maya Character Setup

CHARACTER SETUP PART 5

404

USING AIM CONSTRAINTS | 30Deleting aim constraints

You can control motion history dependence by making sure that the aim vector andthe up vector do not point in the same direction. In they are pointing in the samedirection, the best way to prevent motion history dependence is to change the upvector’s direction. You could also change the aim vector, but it’s likely that youchoose the aim vector so that the object aims in a particular way.

Additionally, if the aim constraint’s World Up Type is set to None, the constrainedobject can be motion history dependent.

To change up vector or aim vector direction with Attribute Editor:

Check the Aim Vector and Up Vector attributes as described in "Editing aimconstraint attributes" on page 400. If they are the same, edit one of the them so thatthey do not both point in the same direction.

To change World Up Type attribute with Attribute Editor:

Check the World Up Type attribute as described in "Editing aim constraintattributes" on page 400. If set to None, the constrained object can be motion historydependent.

DELETING AIM CONSTRAINTS

To delete an aim constraint, delete the aim constraint node.

To delete an aim constraint:

1 Select the aim constraint node only. (Select the aim constraint’s selection handle ifdisplayed, or use the Hypergraph to select the aim constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

EXAMPLES

This section includes two examples of using aim constraints:

Aiming a sphere at a sphere

To setup the two spheres:

1 Create a NURBS sphere.

2 Move the sphere some distance away from the center of the scene.

3 Create another NURBS sphere. Leave it at the scene’s origin.

4 Display the sphere’s local rotation axis (Display > Component Display > LocalRotation Axes).

To create aim constraint:

1 Select the you moved sphere, and then select the sphere at the origin.

2 If you are sure that the constraint options have their default settings, select Constrain> Aim. (To be sure that you are using the defaults, select Constrain > Aim ❒. ClickReset, and then click Add/Remove.)

Page 405: Maya Character Setup

USING AIM CONSTRAINTS | 30Examples

CONSTRAINTS CHARACTER SETUP

405

Now you have constrained the sphere at the origin to aim at the other sphere.

To use the constraint:

Select the sphere you moved (nurbsSphere1), and select the Move Tool. As youmove the sphere, the other sphere (nurbsSphere2) will rotate accordingly.

Note how nurbsSphere2’s local rotation X-axis always points at the nurbsSphere1.Also, note how nurbsSphere2’s local rotation Y-axis always tries to point as closelyas possible in the same direction as the scene’s Y-axis.

By default, the aim vector causes nurbsSphere2’s local rotation X-axis to point atnurbsSphere1. Also, by default, the up vector causes nurbsSphere2’s Y-axis to alignitself as closely as possible with the scene’s Y-axis.

Aiming a cone at a sphere

To create sphere and cone:

1 Create a NURBS sphere.

2 Move the sphere some distance away from the scene’s origin.

3 Create a NURBS cone.

To create aim constraint:

1 Select the sphere, and then select the cone.

2 Select Constrain > Aim ❒.

By default, the aim vector will direct the cone to point at the sphere along its localrotation positive X-axis. However, the cone narrows along its local positive Y-axis.You could change the orientation of the cone’s local rotation axis, or you could setthe aim vector to direct the cone to point along its local positive Y-axis.

For now, orient the aim vector to point along the cone’s local positive Y-axis.

3 Set Aim Vector to 0.0, 1.0, 0.0. (The default is 1.0, 0.0, 0.0.)

The aim vector will now point along the cone’s local positive Y-axis instead of the X-axis.

By default, the up vector points along the cone’s local positive Y-axis. If the aimvector and the up vector point in the same direction, the constrained object will bemotion history dependent.To prevent this, you can change the up vector’s direction.

4 Set Up Vector to 0.0, 0.0, 1.0.

The up vector will now point along the cone’s local positive Z-axis.

For convenience, set the world up vector to point in the same direction relative toworld space as the up vector does relative to the cone’s local space.

5 Set World Up Vector to 0.0, 0.0, 1.0.

6 Click Add/Remove.

7 Now you have constrained the cone to aim at the sphere.

To use the constraint:

Select the sphere, and select the Move Tool. As you move the sphere, the cone willalways point at the sphere.

Page 406: Maya Character Setup

CHARACTER SETUP PART 5

406

USING AIM CONSTRAINTS | 30Examples

Page 407: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

407

31 USING ORIENT CONSTRAINTS

An orient constraint causes an object to follow the orientation of one or more objects.The constraint does not affect the object’s position or scaling, only its orientation.

UNDERSTANDING ORIENT CONSTRAINTS

An orient constraint matches the orientation of one object to one or more otherobjects. This constraint is useful for making several objects orient simultaneously. Forexample, you can make a group of characters all look in the same direction at thesame time by animating one character’s head and then constraining all the othercharacter’s heads to the head you’ve just animated.

Constrained and target objectsA constrained object is an object whose position is driven by the orientation of one ormore target objects. The orientation of one or more target objects is called the targetorientation.

Target orientationThe target orientation is the orientation (Rotate X, Y, and Z attributes) of the targetobject. If there is more than one target object, the target orientation is the averageorientation of all the target objects. However, if you are using more than one target

Page 408: Maya Character Setup

CHARACTER SETUP PART 5

408

USING ORIENT CONSTRAINTS | 31Creating orient constraints

object, you can vary the influence of each target object on the calculation of the targetorientation. The target orientation can be a weighted average of the orientations ofthe target objects, with some target objects having more influence than others. Theinfluence of target objects on the weighted average is specified by target objectweights.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target orientation. The resulting weightedaverage drives the constrained object’s orientation.

Constrained object’s orientationThe constrained object’s orientation is driven by the target orientation.

Locked channelsOrient constraints lock a constrained object’s orientation (Rotate X, Y, and Z)channels.

Related MEL commandsMEL commands related to orient constraints include the following:

• orientConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for an orient constraint include the following:

• Orient constraint node (default name: constrainedObject_orientConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING ORIENT CONSTRAINTS

When creating orient constraints, you can first set creation options and then createan orient constraint, or you can immediately create a constraint with the currentcreation options.

Setting constraint options

To set constraint options:

1 If you also want to create an orient constraint now, select one or more objects. Thelast object selected will be the constrained object.

2 Select Constrain > Orient ❒.

The Orient Constraint Options window is displayed.

3 Set the constraint options:

Page 409: Maya Character Setup

USING ORIENT CONSTRAINTS | 31Editing orient constraints

CONSTRAINTS CHARACTER SETUP

409

Weight Specifies how much the position of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create an orient constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Orient Constraint Options window.

Creating an orient constraint

To create an orient constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

2 Select Constrain > Orient.

An orient constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s orientation attributes (Rotate X, Y, and Z) are now locked.Their values are now provided by the target orientation.

EDITING ORIENT CONSTRAINTS

Editing orient constraints is described in the following topics.

Editing orient constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The orient constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the orient constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

Page 410: Maya Character Setup

CHARACTER SETUP PART 5

410

USING ORIENT CONSTRAINTS | 31Editing orient constraints

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained object can be influenced by the target object. (The n in Wn is an identifierfor each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing orient constraint attributes

To edit attributes with Attribute Editor:

1 Select the orient constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, OrientConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the orient constraint’s selection handle.

Orient Constraint Attributes

ConstraintRotate Informs you of the constrained object’s current orientation.

Pivots

Selections for displaying the orient constraint’s local rotate and scale pivots in localor world space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained object can be influenced by the target object.

Page 411: Maya Character Setup

USING ORIENT CONSTRAINTS | 31Editing orient constraints

CONSTRAINTS CHARACTER SETUP

411

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created an orient constraint, you can add more target objects foradditional control over the constrained object’s position. Adding more target objectsis similar to creating orient constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Orient ❒.

The Orient Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Removing target objectsAfter you’ve created an orient constraint, you can remove any of the target objects sothat the objects no longer constrain the constrained object. Removing target objects issimilar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Orient ❒.

The Orient Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s position changes, indicating that it is no longer constrainedby the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the orientation of the constrained objectcan be influenced by a target object. The weights are attributes of the orientconstraint. For each target object, an attribute named targetObject Wn is included thatspecifies the weight of each target object. By default, the weights are set to 1, whichgives each target object an equal influence over the constrained object’s orientation.

Page 412: Maya Character Setup

CHARACTER SETUP PART 5

412

USING ORIENT CONSTRAINTS | 31Deleting orient constraints

However, you can change the weights so that some target objects can have more (orless) influence than others. You can change target object weights with the ChannelBox or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing orient constraint channels"on page 409.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing orient constraintattributes" on page 410.

Animating target object weightsAn interesting technique you can use with orient constraints is to animate the targetobject weights specified by the targetObject Wn channels. You can vary the weightsfrom 0 to any value, so that as an animation progresses different target objects cantake turns driving a constrained object’s orientation.

DELETING ORIENT CONSTRAINTS

To delete an orient constraint, delete the orient constraint node.

To delete an orient constraint:

1 Select the orient constraint node only. (Select the orient constraint’s selection handleif displayed, or use the Hypergraph to select the orient constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 413: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

413

32 USING SCALE CONSTRAINTS

A scale constraint causes an object to follow the scale of one or more objects.Theconstraint does not affect the object’s position or orientation, only its scale.

UNDERSTANDING SCALE CONSTRAINTS

A scale constraint matches the scaling of one object to one or more other objects. Thisconstraint is useful for making several objects scale simultaneously. For example,you can make a group of characters all look in the same direction at the same time byanimating one character’s head and then constraining all the other character’s headsto the head you’ve just animated.

Constrained and target objectsA constrained object is an object whose scaling is driven by the scaling of one ormore target objects. The scaling of one or more target objects is called the target scale.

Page 414: Maya Character Setup

CHARACTER SETUP PART 5

414

USING SCALE CONSTRAINTS | 32Creating scale constraints

Target scaleThe target scale is the scaling (Scale X, Y, and Z attributes) of the target object. Ifthere is more than one target object, the target scale is the average scaling of all thetarget objects. However, if you are using more than one target object, you can varythe influence of each target object on the calculation of the target scale. The targetscale can be a weighted average of the scales of the target objects, with some targetobjects having more influence than others. The influence of target objects on theweighted average is specified by target object weights.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target scale. The resulting weightedaverage drives the constrained object’s scaling.

Constrained object’s scalingThe constrained object’s scaling is driven by the target scale.

Locked channelsScale constraints lock a constrained object’s scaling (Scale X, Y, and Z) channels.

Related MEL commandsMEL commands related to scale constraints include the following:

• scaleConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a scale constraint include the following:

• Scale constraint node (default name: constrainedObject_scaleConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING SCALE CONSTRAINTS

When creating scale constraints, you can first set creation options and then create ascale constraint, or you can immediately create a constraint with the current creationoptions.

Setting constraint options

To set constraint options:

1 If you also want to create a scale constraint now, select one or more objects. The lastobject selected will be the constrained object.

2 Select Constrain > Scale ❒.

The Scale Constraint Options window is displayed.

Page 415: Maya Character Setup

USING SCALE CONSTRAINTS | 32Editing scale constraints

CONSTRAINTS CHARACTER SETUP

415

3 Set the constraint options:

Weight Specifies how much the scaling of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create a scale constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Scale Constraint Options window.

Creating a scale constraint

To create a scale constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

2 Select Constrain > Scale.

A scale constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s scale attributes (Scale X, Y, and Z) are now locked. Theirvalues are now provided by the target’s scaling.

EDITING SCALE CONSTRAINTS

Editing scale constraints is described in the following topics.

Editing scale constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The scale constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the scale constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

Page 416: Maya Character Setup

CHARACTER SETUP PART 5

416

USING SCALE CONSTRAINTS | 32Editing scale constraints

targetObject Wn Specifies a target object’s weight. The weight specifies how much the scale of theconstrained object can be influenced by the target object. (The n in Wn is an identifierfor each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing scale constraint attributes

To edit attributes with Attribute Editor:

1 Select the scale constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, ScaleConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the scale constraint’s selection handle.

Scale Constraint Attributes

ConstraintScale Informs you of the constrained object’s current scaling.

Pivots

Selections for displaying the scale constraint’s local rotate and scale pivots in local orworld space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the scaling of theconstrained object can be influenced by the target object.

Page 417: Maya Character Setup

USING SCALE CONSTRAINTS | 32Editing scale constraints

CONSTRAINTS CHARACTER SETUP

417

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created a scale constraint, you can add more target objects foradditional control over the constrained object’s position. Adding more target objectsis similar to creating scale constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Scale ❒.

The Scale Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s scaling changes, indicating that it is now constrained by theobjects you’ve just added as target objects.

Removing target objectsAfter you’ve created a scale constraint, you can remove any of the target objects sothat the objects no longer constrain the constrained object. Removing target objects issimilar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Scale ❒.

The Scale Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s scaling changes, indicating that it is no longer constrainedby the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the scaling of the constrained object canbe influenced by a target object. The weights are attributes of the scale constraint. Foreach target object, an attribute named targetObject Wn is included that specifies theweight of each target object. By default, the weights are set to 1, which gives eachtarget object an equal influence over the constrained object’s scaling. However, you

Page 418: Maya Character Setup

CHARACTER SETUP PART 5

418

USING SCALE CONSTRAINTS | 32Deleting scale constraints

can change the weights so that some target objects can have more (or less) influencethan others. You can change target object weights with the Channel Box or AttributeEditor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing scale constraint channels"on page 415.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing scale constraint attributes"on page 416.

Animating target object weightsYou can animate the target object weights specified by the targetObject Wn channels.You can vary the weights from 0 to any value, so that as an animation progresses,different target objects can take turns driving a constrained object’s scale.

DELETING SCALE CONSTRAINTS

To delete a scale constraint, delete the scale constraint node.

To delete a scale constraint:

1 Select the scale constraint node only. (Select the scale constraint’s selection handle ifdisplayed, or use the Hypergraph to select the scale constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 419: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

419

33 USING GEOMETRYCONSTRAINTS

A geometry constraint restricts an object to a surface or curve.

UNDERSTANDING GEOMETRY CONSTRAINTS

A geometry constraint restricts an object to a NURBS surface, NURBS curve, orpolygonal surface (mesh). If you also want the constrained object to orient itself tothe surface of the target object(s), use a normal constraint. For more information onnormal constraints, see “Using Normal Constraints” in Chapter 34.

Constrained and target objectsA constrained object is an object whose position is driven by the nearest surfacelocation of one or more target objects. The nearest surface location of one or moretarget objects is called the target position.

Page 420: Maya Character Setup

CHARACTER SETUP PART 5

420

USING GEOMETRY CONSTRAINTS | 33Understanding geometry constraints

Target pointThe target point is the position of the target object’s nearest surface location. If thereis more than one target object, the target point is the average position of the nearestsurface locations of all the target objects. If you are using more than one target object,you can vary the influence of each target object on the calculation of the target point.The target point can be a weighted average of the nearest surface locations of thetarget objects, with some target objects having more influence than others. Theinfluence of target objects on the weighted average is specified by target objectweights.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target point. The resulting weightedaverage drives the constrained object’s position.

Constrained object’s positionThe constrained object’s position is driven by the target point. However, you canoffset the constrained object’s position from the target point. Offsetting theconstrained object’s position from the target point can be useful in situations whereyou don’t want the local axis of the constrained object to coincide exactly with thetarget point. For example, if you want to constrain a ball to a joint in a character’shand so that the hand holds the ball, you’ll need to offset the ball from the joint. Byoffsetting, you can have the ball in the palm of the hand rather than centered insidethe hand.

Motion history dependenceMotion history dependence refers to how an object can provide different motioneffects in situations that are identical except that the object has been previouslymanipulated or animated.

For instance, when you animate an object and run the animation in a loop, if theobject ends up moving in slightly different ways at the same frame in each loop, theobject is motion history dependent. At a certain frame, the object may be orienteddifferently depending on its previous orientations. In contrast, if the object moves inexactly the same way during each loop, then the object is motion historyindependent.

Objects constrained by geometry constraints are motion history dependent. Thatmeans that the end result of a constrained object’s animation depends on where theobject started.

Locked channelsGeometry constraints do not lock any of the constrained object’s position,orientation, or scale channels. This means you can easily use other constraints withthe geometry constraint. For example, you could also use a normal constraint (seeChapter 34, “Using Normal Constraints”).

Related MEL commandsMEL commands related to geometry constraints include the following:

• geometryConstraint

Page 421: Maya Character Setup

USING GEOMETRY CONSTRAINTS | 33Creating geometry constraints

CONSTRAINTS CHARACTER SETUP

421

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a geometry constraint include the following:

• Geometry constraint node (default name: constrainedObject_geometry Constraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING GEOMETRY CONSTRAINTS

When creating geometry constraints, you can first set creation options and thencreate a geometry constraint, or you can immediately create a constraint with thecurrent creation options.

Setting constraint options

To set constraint options:

1 If you also want to create a geometry constraint now, select one or more objects. Thelast object selected will be the constrained object.

2 Select Constrain > Geometry ❒.

The Geometry Constraint Options window is displayed.

3 Set the constraint options:

Weight Specifies how much the position of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create a geometry constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Geometry Constraint Options window.

Creating a geometry constraint

To create a geometry constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

2 Select Constrain > Geometry.

Page 422: Maya Character Setup

CHARACTER SETUP PART 5

422

USING GEOMETRY CONSTRAINTS | 33Editing geometry constraints

A geometry constraint is created with the current constraint options. (The AddTargets option should be on.)

EDITING GEOMETRY CONSTRAINTS

Editing geometry constraints is described in the following topics.

Editing geometry constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The geometry constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the geometry constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained object can be influenced by the target object. (The n in Wn is an identifierfor each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing geometry constraint attributes

To edit attributes with Attribute Editor:

1 Select the geometry constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, GeometryConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the geometry constraint’s selection handle.

Geometry Constraint Attributes

ConstraintRotate Informs you of the constrained object’s current orientation.

Page 423: Maya Character Setup

USING GEOMETRY CONSTRAINTS | 33Editing geometry constraints

CONSTRAINTS CHARACTER SETUP

423

Pivots

Selections for displaying the geometry constraint’s local rotate and scale pivots inlocal or world space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained object can be influenced by the target object.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created a geometry constraint, you can add more target objects foradditional control over the constrained object’s position. Adding more target objectsis similar to creating geometry constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Geometry ❒.

The Geometry Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Page 424: Maya Character Setup

CHARACTER SETUP PART 5

424

USING GEOMETRY CONSTRAINTS | 33Editing geometry constraints

Removing target objectsAfter you’ve created a geometry constraint, you can remove any of the target objectsso that the objects no longer constrain the constrained object. Removing targetobjects is similar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Geometry ❒.

The Geometry Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s position changes, indicating that it is no longer constrainedby the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the position of the constrained objectcan be influenced by a target object. The weights are attributes of the geometryconstraint. For each target object, an attribute named targetObject Wn is included thatspecifies the weight of each target object. By default, the weights are set to 1, whichgives each target object an equal influence over the constrained object’s position.However, you can change the weights so that some target objects can have more (orless) influence than others. You can change target object weights with the ChannelBox or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing geometry constraintchannels" on page 422.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing geometry constraintattributes" on page 422.

Animating target object weightsAn interesting technique you can use with geometry constraints is to animate thetarget object weights specified by the targetObject Wn channels. You can vary theweights from 0 to any value, so that as an animation progresses different targetobjects can take turns driving a constrained object’s position.

If all the target objects have the same weight (the default), the target point is takenfrom the first target object you selected when you created the constraint. Forinstance, if all the weights are 1, the target object whose weight is specified by theconstraint’s targetObject W0 channel provides the target point.

You should animate the target weights so that only one target has the highest weightat any given frame.

Note that objects constrained by geometry constraints are motion history dependent.

Page 425: Maya Character Setup

USING GEOMETRY CONSTRAINTS | 33Deleting geometry constraints

CONSTRAINTS CHARACTER SETUP

425

Animating the constrained objectIn contrast with the point constraint, the geometry constraint allows you to set keyson the constrained object’s position (Translate X, Y, and Z channels). The constrainedobject’s position will be the point on the target object’s surface that is closest to thekeyed position.

Using a point constraint with a geometry constraintYou can create a point constraint for an object that is already constrained by ageometry constraint. The constrained object’s position will be the point on the targetobject’s surface that is closest to the point constraint’s target point.

For more information on point constraints, see “Using Point Constraints” in Chapter29.

DELETING GEOMETRY CONSTRAINTS

To delete a geometry constraint, delete the geometry constraint node.

To delete a geometry constraint:

1 Select the geometry constraint node only. (Select the geometry constraint’s selectionhandle if displayed, or use the Hypergraph to select the geometry constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 426: Maya Character Setup

CHARACTER SETUP PART 5

426

USING GEOMETRY CONSTRAINTS | 33Deleting geometry constraints

Page 427: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

427

34 USING NORMALCONSTRAINTS

A normal constraint constrains an object’s orientation so that it aligns with thenormal vectors of a NURBS or polygonal surface (mesh).

UNDERSTANDING NORMAL CONSTRAINTS

A normal constraint constrains an object’s orientation so that it aligns with thenormal vectors of a NURBS surface or polygonal surface (mesh). Normal constraintsare useful for having an object travel across a surface that has a unique, complexshape. Without normal constraints, moving or animating the object across the surfacecould be tedious and time-consuming. For example, you might want to have a tearfalling down along character’s face. Instead of animating the tear directly, you couldconstrain it to the face’s surface.

Cone constrained to a sphere’ssurface with a geometryconstraint, and constrained toalign with the surface’s shapewith a normal constraint.

Page 428: Maya Character Setup

CHARACTER SETUP PART 5

428

USING NORMAL CONSTRAINTS | 34Understanding normal constraints

Typically, you use normal constraints with geometry constraints. For moreinformation on geometry constraints, see “Understanding geometry constraints” inChapter 33.

Constrained and target objectsA constrained object is an object whose orientation is driven by the direction of atarget vector.

Target vectorThe target vector, or weighted average vector, represents the normal vector at theposition of the constrained object. Maya calculates the target vector as a weightedaverage of the nearby normal vectors on the surface or mesh.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target vector. The resulting weightedaverage drives the constrained object’s orientation.

Constrained object’s orientationThe constrained object’s orientation is controlled by three vectors: the aim vector, theup vector, and the world up vector. These vectors are not displayed in theworkspace, but you can infer their effect on the constrained object’s orientation.

You do not need to understand the details of how these vectors work in order to useconstraints effectively. If you are new to constraints, you can skip the rest of thissection. However, if you want to exercise a high degree of control over a normalconstraint, you’ll need to work with these vectors. Also, familiarity with thesevectors can help you to understand how a constrained object can suddenly roll.

Aim vectorThe aim vector constrains the constrained object so that it always aligns with thetarget vector. The aim vector starts at the constrained object’s pivot point and thenaligns with the target vector.

How the object rotates to align with the target vector depends on how the aim vectoris defined relative to the object’s local space. For instance, by default, the aim vectoris defined so that it points in the same direction as the local rotation positive X-axis.Consequently, by default, a constrained object’s local rotation positive X-axis willalign with the target vector.

By itself, the aim vector does not completely constrain the object, because the aimvector does not control how the object might rotate about the aim vector. Theorientation of the object about the aim vector is controlled by the up vector and theworld up vector.

Up vector and world up vectorThe up vector controls the orientation of the constrained object about the aim vector.Like the aim vector, the up vector is defined relative to the constrained object’s localspace. By default, the up vector tries to point in the same direction as the world upvector, which is defined relative to the scene’s world space. The up vector orients theconstrained object about the aim vector by trying to align itself as closely as possiblewith the world up vector.

Page 429: Maya Character Setup

USING NORMAL CONSTRAINTS | 34Understanding normal constraints

CONSTRAINTS CHARACTER SETUP

429

When you move the target object(s), the constrained object’s aim vector moves toalign with the target vector, and orients the constrained object accordingly.Simultaneously, the constrained object orients itself about the aim vector as directedby the up vector.

For instance, by default, the up vector is defined so that it points in the samedirection as the local rotation positive Y-axis. A constrained object’s local positive X-axis will align with the target vector as directed by the default aim vector.Simultaneously, the object’s local positive Y-axis will try to point in the samedirection as the world up vector, as directed by the object’s up vector. The aim vectorand up vector work together to constrain the orientation of the constrained object.

By default, the up vector tries to stay as closely aligned with the world up vector aspossible. However, you can control the role of the world up vector in a variety ofways. For example, instead of defining the world up vector relative to theworkspace’s world space (the default), you can define it relative to some otherobject’s local space. Such an object is called a world up object.

Rolling effectsIn certain situations, the constrained object can rapidly rotate about its aim vector.To understand why this happens, you need to understand how aim vectors, upvectors, and world up vectors work. If you are new to constraints, you can skip thissection. For more information, see the previous section, "Constrained object’sorientation" on page 428.

As the aim vector approaches pointing in the same direction or the oppositedirection of the up vector, the constrained object rotates more rapidly about the aimvector. When the aim vector points in exactly the same direction, or in exactly theopposite direction, the constrained object can suddenly rotate by 180 degrees aboutthe aim vector.

These rapid rotations provide rolling effects that you might want to prevent. You canprevent rolling effects by moving or animating the world up vector. For moreinformation, see "Preventing rolling effects" on page 435.

Motion history dependence effectsMotion history dependence refers to how an object can provide different motioneffects in situations that are identical except that the object has been previouslymanipulated or animated.

For instance, when you animate an object and run the animation in a loop, if theobject ends up moving in slightly different ways at the same frame in each loop, theobject is motion history dependent. At a certain frame, the object may be orienteddifferently depending on its previous orientations. In contrast, if the object moves inexactly the same way during each loop, then the object is motion historyindependent.

Motion history dependence effects can be a problem if you want predictable motioneffects. However, if you are seeking some unpredictable motion effects, you mightwant to take advantage of an object’s motion history dependence.

In certain situations, a constrained object’s orientation can become motion historydependent. To understand why this happens, you need to be familiar with aimvectors and up vectors (see "Constrained object’s orientation" on page 428).

Page 430: Maya Character Setup

CHARACTER SETUP PART 5

430

USING NORMAL CONSTRAINTS | 34Creating normal constraints

A constrained object can become motion history dependent if you define the aimvector and the up vector to point in the same direction. For example, you might dothis if you define the aim vector relative to the constrained object’s local Y-axis, butdo not change the default direction of the up vector, which is also relative to theobject’s local Y-axis. For more information, see "Controlling motion historydependence effects" on page 436.

A constrained object can also become motion history dependent if you set theconstraint’s World Up Type attribute to None. For more information, see "Editingnormal constraint attributes" on page 432.

Locked channelsNormal constraints lock a constrained object’s orientation (Rotate X, Y, and Z)channels.

Related MEL commandsMEL commands related to normal constraints include the following:

• normalConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a normal constraint include the following:

• Normal constraint node (default name: constrainedObject_normalConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING NORMAL CONSTRAINTS

When creating normal constraints, you can first set creation options and then createa normal constraint, or you can immediately create a constraint with the currentcreation options.

Typically, you would want to first create a geometry constraint to constrain theobject to some surface, and then create a normal constraint to constrain the object’sorientation so that it aligns with the normal vectors of the surface.

The default constraint options work well for constraining objects so that they aimalong their local rotation positive X-axis.

Setting constraint options

To set constraint options:

1 If you want to create a normal constraint now, select one or more objects. The lastobject selected will be the constrained object.

2 Select Constrain > Normal ❒.

The Normal Constraint Options window is displayed.

3 Set the constraint options:

Page 431: Maya Character Setup

USING NORMAL CONSTRAINTS | 34Creating normal constraints

CONSTRAINTS CHARACTER SETUP

431

Weight Specifies how much the orientation of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector will align with the target vector, forcing the constrained objectto orient itself accordingly. The default specifies that the object’s local rotationpositive X-axis aligns with the aim vector to align with the target vector (1.0000,0.0000, 0.0000).

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis will align with theup vector. In turn, by default, the up vector will try to align with the world upvector. Further, by default, the world up vector will point in the direction of theworld space’s positive Y-axis (0.0000, 1.0000, 0.0000).

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 429.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create a normal constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Normal Constraint Options window.

Creating a normal constraint

To create a normal constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

Note that typically you would want to first create a geometry constraint, and thencreate a normal constraint.

2 Select Constrain > Normal.

A normal constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s orientation attributes (Rotate X, Y, and Z) are now locked.Their values are now provided by how the constraint object’s aim vector aligns withthe target vector.

Page 432: Maya Character Setup

CHARACTER SETUP PART 5

432

USING NORMAL CONSTRAINTS | 34Editing normal constraints

EDITING NORMAL CONSTRAINTS

Editing normal constraints is described in the following topics.

Editing normal constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The normal constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the normal constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object. (The n in Wn is anidentifier for each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing normal constraint attributes

To edit attributes with Attribute Editor:

1 Select the normal constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, NormalConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the normal constraint’s selection handle.

Normal Constraint Attributes

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector aligns with the target vector, forcing the constrained object toorient itself accordingly. The default specifies that the object’s local rotation positiveX-axis aligns with the aim vector, which aligns with the target vector (1.0000, 0.0000,0.0000).

Page 433: Maya Character Setup

USING NORMAL CONSTRAINTS | 34Editing normal constraints

CONSTRAINTS CHARACTER SETUP

433

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis aligns with the upvector. In turn, by default, the up vector tries to align with the world up vector.Further, by default, the world up vector points in the direction of the world space’spositive Y-axis (0.0000, 1.0000, 0.0000).

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 429.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

World Up Type Specifies the role of the world up vector. Selections include Scene Up, Object Up,Object Rotation Up, Vector, and None.

Scene Up specifies that the up vector try to align with the scene’s up axis instead ofthe world up vector. The world up vector is ignored.

(To specify the scene’s up axis, select Window > Settings/Preferences > Preferences.In the Settings category of the Preferences window, select Y or Z for the Up Axis ofthe World Coordinate System. Y is the default.)

Object Up specifies that the up vector try to aim at the origin of a specified objectinstead of aligning with the world up vector. The world up vector is ignored. Theobject whose origin the up vector tries to aim at is called the world up object. Youcan specify the world up object with the aimConstraint MEL command (use -wuoflag). If no world up object is specified, the up vector tries to aim at the origin of thescene’s world space.

Object Rotation Up specifies that the world up vector is defined relative to someobject’s local space instead of the scene’s world space. The up vector tries to alignwith the world up vector after transforming it relative to the scene’s world space.The object whose origin the up vector tries to aim at is called the world up object.You can specify the world up object with the aimConstraint MEL command (use -wuo flag). If no world up object is specified, the world up vector is defined relativeto the scene’s world space.

Vector specifies that the up vector tries to align with world up vector as closely aspossible. The world up vector is defined relative to the scene’s world space. (This isthe default.)

None specifies no calculation of the constrained object’s orientation about the aimvector. The orientation continues as whatever the orientation is right before youspecify None. With None selected, the constrained object becomes motion historydependent. For more information, see "Motion history dependence effects" on page429.

Select Scene Up, Object Up, Object Rotation Up, Vector, or None. Default is Vector.

ConstraintRotate Informs you of the current orientation of the constrained object.

ConstraintVector Informs you of the current target vector, which is what the aim vector aligns with.

Page 434: Maya Character Setup

CHARACTER SETUP PART 5

434

USING NORMAL CONSTRAINTS | 34Editing normal constraints

Pivots

Selections for displaying the constraint’s local rotate and scale pivots in local orworld space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

(For more information, see “Constraint node behavior” on page 382 in Chapter 28.)

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object’s position.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created a normal constraint, you can add more target objects foradditional control over the constrained object’s orientation. Adding more targetobjects is similar to creating normal constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Normal ❒.

The Normal Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Page 435: Maya Character Setup

USING NORMAL CONSTRAINTS | 34Editing normal constraints

CONSTRAINTS CHARACTER SETUP

435

Removing target objectsAfter you’ve created a normal constraint, you can remove any of the target objects sothat the objects no longer constrain the constrained object. Removing target objects issimilar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Normal ❒.

The Normal Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s orientation changes, indicating that it is no longerconstrained by the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the orientation of the constrained objectcan be influenced by a target object. The weights are attributes of the normalconstraint. For each target object, an attribute named targetObject Wn is included thatspecifies the weight of each target object. By default, the weights are set to 1, whichgives each target object an equal influence over the constrained object’s orientation.However, you can change the weights so that some target objects can have more (orless) influence than others. You can change target object weights with the ChannelBox or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing normal constraintchannels" on page 432.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing normal constraintattributes" on page 432.

Preventing rolling effectsIn certain situations, a constrained object can rapidly roll about its aim vector.Rolling effects can happen when the aim vector approaches or points in the samedirection or in the opposite direction as the up vector. For more information, see"Rolling effects" on page 429.

You can avoid rolling effects by keeping the target vector clear of the world upvector’s direction. For example, if the world up vector points in the direction of thescene’s world space Y-axis (the default), you would try to avoid having the positiveor negative Y-axis point in the same direction as the target vector. You could movethe target object(s) as needed, or perhaps change the target object weights so that thetarget vector does not get to close to the Y-axis.

Page 436: Maya Character Setup

CHARACTER SETUP PART 5

436

USING NORMAL CONSTRAINTS | 34Deleting normal constraints

However, if your animation makes such avoidances impossible, you can preventrolling by changing or animating the world up vector.

To change world up vector with Attribute Editor:

Edit the World Up Vector attribute as described in "Editing normal constraintattributes" on page 432. Note that you can also use the Channel Box to edit theWorld Up Vector.

To animate world up vector with Channel Box:

You can set keys on the World Up Vector attribute by using the Channel Box. Toselect the World Up Vector attribute, see “Editing aim constraint channels withChannel Box” on page 25. To set keys, after you select the attribute press the rightmouse button and select Key Selected.

Controlling motion history dependence effectsIn certain situations, a constrained object can become motion history dependent. Formore information, see "Motion history dependence effects" on page 429.

You can control motion history dependence by making sure that the aim vector andthe up vector do not point in the same direction. If they are pointing in the samedirection, the best way to prevent motion history dependence is to change the upvector’s direction. You could also change the aim vector, but it’s likely that youchoose the aim vector so that the object aims in a particular way.

Additionally, if the normal constraint’s World Up Type is set to None, theconstrained object can be motion history dependent.

To change up vector or aim vector direction with Attribute Editor:

Check the Aim Vector and Up Vector attributes as described in "Editing normalconstraint attributes" on page 432. If they are the same, edit one of the them so thatthey do not both point in the same direction.

To change World Up Type attribute with Attribute Editor:

Check the World Up Type attribute as described in "Editing normal constraintattributes" on page 432. If set to None, the constrained object can be motion historydependent.

DELETING NORMAL CONSTRAINTS

To delete a normal constraint, delete the normal constraint node.

To delete a normal constraint:

1 Select the normal constraint node only. (Select the normal constraint’s selectionhandle if displayed, or use the Hypergraph to select the normal constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 437: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

437

35 USING TANGENTCONSTRAINTS

A tangent constraint constrains an object’s orientation so that the object alwayspoints in the direction of a curve.

UNDERSTANDING TANGENT CONSTRAINTS

Tangent constraints constrain an object’s orientation so that as an object moves alonga curve, the object always points in the direction a curve. The curve provides thepath of the object’s motion, and the object orients itself to point along the curve.Tangent constraints are useful for having an object follow a curve’s direction, such asa roller coaster car following the tracks.

Typically, you use tangent constraints with geometry constraints. For moreinformation on geometry constraints, see “Understanding geometry constraints” inChapter 33.

Cone moving along a curve andpointing forward along the curve.Cone is constrained to curvewith a geometry constraint, andconstrained to point forward witha tangent constraint.

Page 438: Maya Character Setup

CHARACTER SETUP PART 5

438

USING TANGENT CONSTRAINTS | 35Understanding tangent constraints

Constrained and target objectsA constrained object is an object whose orientation is driven by the direction of atarget vector.

Target vectorThe target vector, or weighted average vector, represents the tangent vector alongthe curve at the position of the constrained object. Maya calculates the target vectoras a weighted average of the curve’s nearby tangents (that is, the curve’s tangentvectors).

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target vector. The resulting weightedaverage drives the constrained object’s orientation.

Constrained object’s orientationThe constrained object’s orientation is controlled by three vectors: the aim vector, theup vector, and the world up vector. These vectors are not displayed in theworkspace, but you can infer their effect on the constrained object’s orientation.

You do not need to understand the details of how these vectors work in order to useconstraints effectively. If you are new to constraints, you can skip the rest of thissection. However, if you want to exercise a high degree of control over a tangentconstraint, you’ll need to work with these vectors. Also, familiarity with thesevectors can help you to understand how a constrained object can suddenly roll.

Aim vectorThe aim vector constrains the constrained object so that it always aligns with thetarget vector. The aim vector starts at the constrained object’s pivot point and thenaligns with the target vector.

How the object rotates to align with the target vector depends on how the aim vectoris defined relative to the object’s local space. For instance, by default, the aim vectoris defined so that it points in the same direction as the local rotation positive X-axis.Consequently, by default, a constrained object’s local rotation positive X-axis willalign with the target vector.

By itself, the aim vector does not completely constrain the object, because the aimvector does not control how the object might rotate about the aim vector. Theorientation of the object about the aim vector is controlled by the up vector and theworld up vector.

Up vector and world up vectorThe up vector controls the orientation of the constrained object about the aim vector.Like the aim vector, the up vector is defined relative to the constrained object’s localspace. By default, the up vector tries to point in the same direction as the world upvector, which is defined relative to the scene’s world space. The up vector orients theconstrained object about the aim vector by trying to align itself as closely as possiblewith the world up vector.

Page 439: Maya Character Setup

USING TANGENT CONSTRAINTS | 35Understanding tangent constraints

CONSTRAINTS CHARACTER SETUP

439

When you move the target object(s), the constrained object’s aim vector moves toalign with the target vector, and orients the constrained object accordingly.Simultaneously, the constrained object orients itself about the aim vector as directedby the up vector.

For instance, by default, the up vector is defined so that it points in the samedirection as the local rotation positive Y-axis. A constrained object’s local positive X-axis will align with the target vector, as directed by the default aim vector.Simultaneously, the object’s local positive Y-axis will try to point in the samedirection as the world up vector, as directed by the object’s up vector. The aim vectorand up vector work together to constrain the orientation of the constrained object.

By default, the up vector tries to stay as closely aligned with the world up vector aspossible. However, you can control the role of the world up vector in a variety ofways. For example, instead of defining the world up vector relative to theworkspace’s world space (the default), you can define it relative to some otherobject’s local space. Such an object is called a world up object.

Rolling effectsIn certain situations, the constrained object can rapidly rotate about its aim vector.To understand why this happens, you need to understand how aim vectors, upvectors, and world up vectors work. If you are new to constraints, you can skip thissection. For more information, see the previous section, "Constrained object’sorientation" on page 438.

As the aim vector approaches pointing in the same direction or the oppositedirection of the up vector, the constrained object rotates more rapidly about the aimvector. When the aim vector points in exactly the same direction, or in exactly theopposite direction, the constrained object can suddenly rotate by 180 degrees aboutthe aim vector.

These rapid rotations provide rolling effects that you might want to prevent. You canprevent rolling effects by moving or animating the world up vector. For moreinformation, see "Preventing rolling effects" on page 445.

Motion history dependence effectsMotion history dependence refers to how an object can provide different motioneffects in situations that are identical except that the object has been previouslymanipulated or animated.

For instance, when you animate an object and run the animation in a loop, if theobject ends up moving in slightly different ways at the same frame in each loop, theobject is motion history dependent. At a certain frame, the object may be orienteddifferently depending on its previous orientations. In contrast, if the object moves inexactly the same way during each loop, then the object is motion historyindependent.

Motion history dependence effects can be a problem if you want predictable motioneffects. However, if you are seeking some unpredictable motion effects, you mightwant to take advantage of an object’s motion history dependence.

In certain situations, a constrained object’s orientation can become motion historydependent. To understand why this happens, you need to be familiar with aimvectors and up vectors (see "Constrained object’s orientation" on page 438).

Page 440: Maya Character Setup

CHARACTER SETUP PART 5

440

USING TANGENT CONSTRAINTS | 35Creating tangent constraints

A constrained object can become motion history dependent if you define the aimvector and the up vector to point in the same direction. For example, you might dothis if you define the aim vector relative to the constrained object’s local Y-axis, butdo not change the default direction of the up vector, which is also relative to theobject’s local Y-axis. For more information, see "Controlling motion historydependence effects" on page 446.

A constrained object can also become motion history dependent if you set theconstraint’s World Up Type attribute to None. For more information, see "Editingtangent constraint attributes" on page 442.

Locked channelsTangent constraints lock a constrained object’s orientation (Rotate X, Y, and Z)channels.

Related MEL commandsMEL commands related to tangent constraints include the following:

• tangentConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for tangent constraint include the following:

• Tangent constraint node (default name: constrainedObject_tangentConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING TANGENT CONSTRAINTS

When creating tangent constraints, you can first set creation options and then createa tangent constraint, or you can immediately create a constraint with the currentcreation options.

Typically, you would want to first create a geometry constraint to constrain theobject to some curve, and then create a tangent constraint to constrain the object’sorientation so that it aligns with the tangents of the curve.

The default constraint options work well for constraining objects so that they aimalong their local rotation positive X-axis.

Setting constraint options

To set constraint options:

1 If you want to create a tangent constraint now, select one or more objects. The lastobject selected will be the constrained object.

2 Select Constrain > Tangent ❒.

The Tangent Constraint Options window is displayed.

3 Set the constraint options:

Page 441: Maya Character Setup

USING TANGENT CONSTRAINTS | 35Creating tangent constraints

CONSTRAINTS CHARACTER SETUP

441

Weight Specifies how much the orientation of the constrained object can be influenced by thetarget object(s). Use slider to select values from 0.0000 to 10.0000. Default is 1.0000.

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector will align with the target vector, forcing the constrained objectto orient itself accordingly. The default specifies that the object’s local rotationpositive X-axis aligns with the aim vector to align with the target vector (1.0000,0.0000, 0.0000).

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis will align with theup vector. In turn, by default, the up vector will try to align with the world upvector. Further, by default, the world up vector will point in the direction of theworld space’s positive Y-axis (0.0000, 1.0000, 0.0000).

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 439.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create tangent constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Tangent Constraint Options window.

Creating a tangent constraint

To create a tangent constraint:

1 Select one or more target objects, followed by the object you want to constrain tothem.

Note that typically you would want to first create a geometry constraint, and thencreate a tangent constraint.

2 Select Constrain > Tangent.

A tangent constraint is created with the current constraint options. (The Add Targetsoption should be on.)

The constrained object’s orientation attributes (Rotate X, Y, and Z) are now locked.Their values are now provided by how the constraint object’s aim vector aligns withthe target vector.

Page 442: Maya Character Setup

CHARACTER SETUP PART 5

442

USING TANGENT CONSTRAINTS | 35Editing tangent constraints

EDITING TANGENT CONSTRAINTS

Editing tangent constraints is described in the following topics.

Editing tangent constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained object.

The tangent constraint node is in the constrained object’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the tangent constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object. (The n in Wn is anidentifier for each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing tangent constraint attributes

To edit attributes with Attribute Editor:

1 Select the tangent constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

3 The following sections make available attributes: Transform Attributes, TangentConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the tangent constraint’s selection handle.

Tangent Constraint Attributes

Aim Vector Specifies the direction of the aim vector relative to the constrained object’s localspace. The aim vector aligns with the target vector, forcing the constrained object toorient itself accordingly. The default specifies that the object’s local rotation positiveX-axis aligns with the aim vector, which aligns with the target vector (1.0000, 0.0000,0.0000).

Page 443: Maya Character Setup

USING TANGENT CONSTRAINTS | 35Editing tangent constraints

CONSTRAINTS CHARACTER SETUP

443

Up Vector Specifies the direction of the up vector relative to the constrained object’s local space.The default specifies that the object’s local rotation positive Y-axis aligns with the upvector. In turn, by default, the up vector tries to align with the world up vector.Further, by default, the world up vector points in the direction of the world space’spositive Y-axis (0.0000, 1.0000, 0.0000).

If you define the up vector to point in the same direction as the aim vector, theconstrained object will be motion history dependent. For more information, see"Motion history dependence effects" on page 439.

World UpVector Specifies the direction of the world up vector relative to the scene’s world space.

Because Maya’s world space is “Y-up” by default, the default world up vector pointsin the direction of the world space’s positive Y-axis (0.0000, 1.0000, 0.0000).

World Up Type Specifies the role of the world up vector. Selections include Scene Up, Object Up,Object Rotation Up, Vector, and None.

Scene Up specifies that the up vector try to align with the scene’s up axis instead ofthe world up vector. The world up vector is ignored.

(To specify the scene’s up axis, select Window > Settings/Preferences > Preferences.In the Settings category of the Preferences window, select Y or Z for the Up Axis ofthe World Coordinate System. Y is the default.)

Object Up specifies that the up vector try to aim at the origin of a specified objectinstead of aligning with the world up vector. The world up vector is ignored. Theobject whose origin the up vector tries to aim at is called the world up object. Youcan specify the world up object with the aimConstraint MEL command (use -wuoflag). If no world up object is specified, the up vector tries to aim at the origin of thescene’s world space.

Object Rotation Up specifies that the world up vector is defined relative to someobject’s local space instead of the scene’s world space. The up vector tries to alignwith the world up vector after transforming it relative to the scene’s world space.The object whose origin the up vector tries to aim at is called the world up object.You can specify the world up object with the aimConstraint MEL command (use -wuo flag). If no world up object is specified, the world up vector is defined relativeto the scene’s world space.

Vector specifies that the up vector tries to align with world up vector as closely aspossible. The world up vector is defined relative to the scene’s world space. (This isthe default.)

None specifies no calculation of the constrained object’s orientation about the aimvector. The orientation continues as whatever the orientation is right before youspecify None. With None selected, the constrained object becomes motion historydependent. For more information, see "Motion history dependence effects" on page439.

Select Scene Up, Object Up, Object Rotation Up, Vector, or None. Default is Vector.

ConstraintRotate Informs you of the current orientation of the constrained object.

ConstraintVector Informs you of the current target vector, which is what the aim vector aligns with.

Page 444: Maya Character Setup

CHARACTER SETUP PART 5

444

USING TANGENT CONSTRAINTS | 35Editing tangent constraints

Pivots

Selections for displaying the constraint’s local rotate and scale pivots in local orworld space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

(For more information, see “Constraint node behavior” on page 382 in Chapter 28.)

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the orientation ofthe constrained object can be influenced by the target object’s position.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Adding target objectsAfter you’ve created a tangent constraint, you can add more target objects foradditional control over the constrained object’s orientation. Adding more targetobjects is similar to creating tangent constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained object.

2 Select Constrain > Tangent ❒.

The Tangent Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained object’s position changes, indicating that it is now constrained bythe objects you’ve just added as target objects.

Page 445: Maya Character Setup

USING TANGENT CONSTRAINTS | 35Editing tangent constraints

CONSTRAINTS CHARACTER SETUP

445

Removing target objectsAfter you’ve created a tangent constraint, you can remove any of the target objectsso that the objects no longer constrain the constrained object. Removing targetobjects is similar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained object.

2 Select Constrain > Tangent ❒.

The Tangent Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained object’s orientation changes, indicating that it is no longerconstrained by the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the orientation of the constrained objectcan be influenced by a target object. The weights are attributes of the tangentconstraint. For each target object, an attribute named targetObject Wn is included thatspecifies the weight of each target object. By default, the weights are set to 1, whichgives each target object an equal influence over the constrained object’s orientation.However, you can change the weights so that some target objects can have more (orless) influence than others. You can change target object weights with the ChannelBox or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing tangent constraintchannels" on page 442.

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing tangent constraintattributes" on page 442.

Preventing rolling effectsIn certain situations, a constrained object can rapidly roll about its aim vector.Rolling effects can happen when the aim vector approaches or points in the samedirection or in the opposite direction as the up vector. For more information, see"Rolling effects" on page 439.

You can avoid rolling effects by keeping the target vector clear of the world upvector’s direction. For example, if the world up vector points in the direction of thescene’s world space Y-axis (the default), you would try to avoid having the positiveor negative Y-axis point in the same direction as the target vector. You could movethe target object(s) as needed, or perhaps change the target object weights so that thetarget vector does not get to close to the Y-axis.

Page 446: Maya Character Setup

CHARACTER SETUP PART 5

446

USING TANGENT CONSTRAINTS | 35Deleting tangent constraints

However, if your animation makes such avoidances impossible, you can preventrolling by changing or animating the world up vector.

To change world up vector with Attribute Editor:

Edit the World Up Vector attribute as described in "Editing tangent constraintattributes" on page 442. Note that you can also use the Channel Box to edit theWorld Up Vector.

To animate world up vector with Channel Box:

You can set keys on the World Up Vector attribute by using the Channel Box. Toselect the World Up Vector attribute, see “Editing aim constraint channels withChannel Box” on page 25. To set keys, after you select the attribute press the rightmouse button and select Key Selected.

Controlling motion history dependence effectsIn certain situations, a constrained object can become motion history dependent. Formore information, see "Motion history dependence effects" on page 439.

You can control motion history dependence by making sure that the aim vector andthe up vector do not point in the same direction. If they are pointing in the samedirection, the best way to prevent motion history dependence is to change the upvector’s direction. You could also change the aim vector, but it’s likely that youchoose the aim vector so that the object aims in a particular way.

Additionally, if the tangent constraint’s World Up Type is set to None, theconstrained object can be motion history dependent.

To change up vector or aim vector direction with Attribute Editor:

Check the Aim Vector and Up Vector attributes as described in "Editing tangentconstraint attributes" on page 442. If they are the same, edit one of the them so thatthey do not both point in the same direction.

To change World Up Type attribute with Attribute Editor:

Check the World Up Type attribute as described in "Editing tangent constraintattributes" on page 442. If set to None, the constrained object can be motion historydependent.

DELETING TANGENT CONSTRAINTS

To delete a tangent constraint, delete the tangent constraint node.

To delete a tangent constraint:

1 Select the tangent constraint node only. (Select the tangent constraint’s selectionhandle if displayed, or use the Hypergraph to select the tangent constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 447: Maya Character Setup

CONSTRAINTS CHARACTER SETUP

447

36 USING POLE VECTORCONSTRAINTS

A pole vector constraint constrains an IK rotate plane handle’s pole vector.

UNDERSTANDING POLE VECTOR CONSTRAINTS

A pole vector constraint causes the end of a pole vector to move to and follow theposition of an object, or the average position of several objects.

In character setup, the pole vectors of IK rotate plane handles for arm joint chains areoften constrained to locators placed behind the character.

Pole vectorsconstrained tolocators enableyou to control thepole vectors bymeans of thelocators.

Page 448: Maya Character Setup

CHARACTER SETUP PART 5

448

USING POLE VECTOR CONSTRAINTS | 36Understanding pole vector constraints

In general, you will want to constrain a pole vector so that the joint chain does notunexpectedly flip when you manipulate the IK rotate plane handle. Because flippingcan occur when the handle vector approaches or intersects the pole vector, youshould constrain the pole vector so that the handle vector is unlikely to cross it.

For more information about pole vectors and IK rotate plane handles, see Chapter21, “Using IK Rotate Plane Handles.”

Target objectsA constrained pole vector is a pole vector whose position is driven by the position ofone or more target objects. The position of one or more target objects is called thetarget point.

Target pointThe target point is the position of the target object. If there is more than one targetobject, the target point is the average position of all the target objects. However, ifyou are using more than one target object, you can vary the influence of each targetobject on the calculation of the target point. The target point can be a weightedaverage of the positions of the target objects, with some target objects having moreinfluence than others. The influence of target objects on the weighted average isspecified by target object weights.

Target object weightsFor each target object, you can specify a target object weight that controls thatobject’s influence in the calculation of the target point. The resulting weightedaverage drives the constrained pole vector’s position.

Constrained pole vector’s end positionThe constrained pole vector’s end position is driven by the target point. However,you can offset the constrained pole vector’s end position from the target point.Offsetting the constrained pole vector’s end position from the target point can beuseful in situations where you don’t want the local axis of the constrained polevector to coincide exactly with the target point.

Keep in mind that the IK chain controlled by the pole vector’s IK rotate plane handlerotates when the target point moves. If you move the target object, the movement ofthe pole vector will cause the IK chain to rotate.

Locked channelsPole vector constraints lock an IK rotate plane handle’s pole vector direction (PoleVector X, Y, and Z) channels.

Page 449: Maya Character Setup

USING POLE VECTOR CONSTRAINTS | 36Creating pole vector constraints

CONSTRAINTS CHARACTER SETUP

449

Related MEL commandsMEL commands related to pole vector constraints include the following:

• poleVectorConstraint

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph nodes for a pole vector constraint include the following:

• Pole vector constraint node (default name: constrainedObject_poleVectorConstraintn).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING POLE VECTOR CONSTRAINTS

When creating pole vector constraints, you can first set creation options and thencreate a pole vector constraint, or you can immediately create a constraint with thecurrent creation options.

Setting constraint options

To set constraint options:

1 If you also want to create a pole vector constraint now, select one or more objects,followed by the IK rotate plane handle whose pole vector you want to constrain.

2 Select Constrain > Pole Vector ❒.

The Pole Vector Constraint Options window is displayed.

3 Set the constraint options:

Weight Specifies how much the constrained pole vector’s end position can be influenced bythe target object(s). Use slider to select values from 0.0000 to 10.0000. Default is1.0000.

ConstraintOperation Specifies whether to add or remove target objects. Click Add Targets to add targets,

or Remove Targets to remove targets. Add Targets is the default because creating theconstraint involves adding target objects.

• Click Add/Remove to create a pole vector constraint (assuming Add Targets is on).

or

• Click Save to save the constraint options.

or

• Click Reset to reset to the default constraint options.

or

• Click Close to close the Pole Vector Constraint Options window.

Page 450: Maya Character Setup

CHARACTER SETUP PART 5

450

USING POLE VECTOR CONSTRAINTS | 36Editing pole vector constraints

Creating a pole vector constraint

To create a pole vector constraint:

1 Select one or more target objects, followed by the IK rotate plane handle whose polevector you want to constrain to them.

2 Select Constrain > Pole Vector.

A pole vector constraint is created with the current constraint options. (The AddTargets option should be on.)

The pole vector’s position attributes (Pole Vector X, Y, and Z) are now locked. Theirvalues are now provided by the target point.

EDITING POLE VECTOR CONSTRAINTS

Editing pole vector constraints is described in the following topics.

Editing pole vector constraint channels

To edit channels with the Channel Box:

1 In the scene, select the constrained pole vector’s IK rotate plane handle.

The pole vector constraint node is in the IK rotate plane handle’s history, listed andautomatically selected in the Channel Box under SHAPES.

Note that you can control which attributes are listed as keyable attributes (channels)in the Channel Box with the Channel Control editor (select Window > GeneralEditors > Channel Control).

2 In the Channel Box, the following channels are listed for the pole vector constraint:

Node State Specifies the node state. Specify Normal, HasNoEffect, Blocking, Waiting-Normal,Waiting-HasNoEffect, or Waiting-Blocking. Default is Normal. For moreinformation, see “Constraint node behavior” on page 382 in Chapter 28.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the end position ofthe constrained pole vector can be influenced by the target object. (The n in Wn is anidentifier for each target object, starting from 0.)

3 Click on a channel name with the left mouse button.

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key gives you finercontrol, and pressing the Shift key gives you coarser control.

Editing pole vector constraint attributes

To edit attributes with Attribute Editor:

1 Select the pole vector constraint node.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a).

Page 451: Maya Character Setup

USING POLE VECTOR CONSTRAINTS | 36Editing pole vector constraints

CONSTRAINTS CHARACTER SETUP

451

3 The following sections make available attributes: Transform Attributes, Pole VectorConstraint Attributes, Pivots, Limit Information, Display, Node Behavior, and ExtraAttributes.

Transform Attributes

Specifies transform attributes of the pole vector constraint’s selection handle.

Pole Vector Constraint Attributes

ConstraintOffset Specifies an offset position (translate X, Y, and Z) for the constrained pole vector

relative to the target point. Note that the target point is the position of the targetobject, or the average position of the target objects. Default values are all 0.

Offset Polarity Specifies the polarity of the Constraint Offset. In effect, the Constraint Offset valuesare multiplied by the Offset Polarity to give the constrained pole vector’s endposition. Default is 1.

ConstraintTranslate Informs you of the constrained pole vector’s current end position. Useful to know

when you are specifying the Constraint Offset and Offset Polarity.

Pivots

Selections for displaying the pole vector constraint’s local rotate and scale pivots inlocal or world space.

Limit Information

(For Maya internal use only: attributes inherited from transform node.)

Display

Selections for selection handle display attributes, including handle display, local axisdisplay, selection handle position (relative to current Translate X, Y, and Z attributevalues), default manipulator display selections, visibility, and template. BoundingBox Information and Drawing Overrides not applicable.

Node Behavior

See “Constraint node behavior” on page 382 in Chapter 28.

Extra Attributes

Lists the weights for each target object. Their initial values are all from the weightcreation option.

targetObject Wn Specifies a target object’s weight. The weight specifies how much the position of theconstrained pole vector can be influenced by the target object.

• Click Select to select the node you are now editing as the currently selected object inyour scene.

or

• Click Load Attributes to load the attribute values of the currently selected node.

or

• Click Close to close the Attribute Editor.

Page 452: Maya Character Setup

CHARACTER SETUP PART 5

452

USING POLE VECTOR CONSTRAINTS | 36Editing pole vector constraints

Adding target objectsAfter you’ve created a pole vector constraint, you can add more target objects foradditional control over the constrained pole vector’s position. Adding more targetobjects is similar to creating pole vector constraints.

To add target objects:

1 Select one or more objects you want to add as target objects, followed by theconstrained pole vector.

2 Select Constrain > Pole Vector ❒.

The Pole Vector Constraint Options window is displayed.

3 Be sure that Add Targets is selected as the Constraint Operation.

4 Click Add/Remove to add the selected objects as target objects.

The constrained pole vector’s position changes, indicating that it is now constrainedby the objects you’ve just added as target objects.

Removing target objectsAfter you’ve created a pole vector constraint, you can remove any of the targetobjects so that the objects no longer constrain the constrained pole vector. Removingtarget objects is similar to adding target objects.

Note that when you remove a target object, you also remove any animation curvesattached to the constraint object for that target object.

To remove target objects:

1 Select one or more target objects, followed by the constrained pole vector’s IK rotateplane handle.

2 Select Constrain > Pole Vector ❒.

The Pole Vector Constraint Options window is displayed.

3 Select Remove Targets as the Constraint Operation.

4 Click Add/Remove to remove the selected objects as target objects.

The constrained pole vector’s end position changes, indicating that it is no longerconstrained by the target objects you’ve just removed.

Changing target object weightsA target object’s weight specifies how much the position of the constrained polevector can be influenced by a target object. The weights are attributes of the polevector constraint. For each target object, an attribute named targetObject Wn isincluded that specifies the weight of each target object. By default, the weights areset to 1, which gives each target object an equal influence over the constrained polevector’s end position. However, you can change the weights so that some targetobjects can have more (or less) influence than others. You can change target objectweights with the Channel Box or the Attribute Editor.

To change target object weights with Channel Box:

Edit the targetObject Wn channels as described in "Editing pole vector constraintchannels" on page 450.

Page 453: Maya Character Setup

USING POLE VECTOR CONSTRAINTS | 36Deleting pole vector constraints

CONSTRAINTS CHARACTER SETUP

453

To change target object weights with Attribute Editor:

Edit the targetObject Wn attributes as described in "Editing pole vector constraintattributes" on page 450.

Offsetting constrained pole vector’s end positionThe constrained pole vector’s end position is driven by the target point, but you canoffset the end position from the target point. To do so, edit the Constraint Offset andOffset Polarity attributes with the Attribute Editor.

To offset constrained pole vector’s end position:

Edit the Constraint Offset and Offset Polarity attributes as described in "Editing polevector constraint attributes" on page 450.

By default, these attributes are not displayed as channels in the Channel Box. Ifyou’d like to control them from the Channel Box, you can add them by using theChannel Control editor (select Window > General Editors > Channel Control.).

DELETING POLE VECTOR CONSTRAINTS

To delete a pole vector constraint, delete the pole vector constraint node.

To delete a pole vector constraint:

1 Select the pole vector constraint node only. (Select the point constraint’s selectionhandle if displayed, or use the Hypergraph to select the point constraint node.)

2 Select Edit > Delete (default shortcut: Backspace key).

Page 454: Maya Character Setup

CHARACTER SETUP PART 5

454

USING POLE VECTOR CONSTRAINTS | 36Deleting pole vector constraints

Page 455: Maya Character Setup

PART 6

CHARACTER SETS

Page 456: Maya Character Setup
Page 457: Maya Character Setup

CHARACTER SETS CHARACTER SETUP

457

37 INTRODUCING CHARACTERSETS

With character sets, you can bring together all of a character’s attributes that areessential for its animation.

UNDERSTANDING CHARACTER SETS

In Maya, a character set is a node that brings together into a set all the attributes ofany collection of objects that you want to animate together. The character set couldbe anything: a well-armed robot, an automobile, or even some seemingly unrelatedcollection of objects. Maya enables you to bring together all the attributes together ina character node, so you only have to select one node, the character node, when youwant to animate all the various attributes.

For example, suppose you have created a snowman that consists of several NURBSspheres and cylinders parented into a hierarchy, along with several IK handles andsome locators that include certain attribute controls (by adding new attributes fromthe Attribute Editor and using Animate > Set Driven Key > Set). By selecting all these

Character byJason Schleifer

Page 458: Maya Character Setup

CHARACTER SETUP PART 6

458

INTRODUCING CHARACTER SETS | 37Character node behavior

entities that you want to animate together and creating a character node, you bringall the attributes of these entities together. You can name the character node“snowman,” and when you select the “snowman” character node, you haveimmediate access to all of the snowman’s attributes that you might want to animate.All the keyable attributes (channels) relevant for animating the snowman can beimmediately accessible from the Channel Box, for instance. You can then set keys allon all the channels or on just some of them. Without the character node, you wouldhave to select and animate the various objects that make up the snowman separately.

The power of character sets in Maya is that once you have created a character set,you can leverage Maya’s animation features to animate at the character level. Thisenables Maya to provide the kind of intuitive interaction typically associated withtraditional animation techniques. With character sets, you can also take advantage ofMaya’s nonlinear character animation feature, the Trax Editor. The Trax Editor takescharacter animation to a new, powerful level of artistic control and productivity (seeUsing Maya: Animation). Finally, you can build libraries of character sets that are allorganized in a common manner.

In summary, Maya’s character set feature brings together all of a character’sattributes that are essential for its animation. By bringing these attributes together,you can set up a character that is much easier and faster to animate. Animators cantake advantage of Maya’s animation features to work on the character as a whole,and do not have to worry about the more technical details of a character’s setup.

CHARACTER NODE BEHAVIOR

You don’t need to know about character node behavior in order to use character setseffectively. If you are new to character sets, you can skip this section. However,familiarity with character node behavior can provide you with more control overcharacter manipulation and performance.

For each object in your scene, if there has been any change to its node or any of thenodes in its history (its upstream or downstream nodes), Maya will evaluate thenodes and update the display based on the node’s node behavior attributes. Thenode behavior attributes for character nodes can affect how characters are evaluatedand displayed.

Understanding node behavior attributesThe node behavior attributes include Caching and Node State.

Caching Specifies that Maya store the results of upstream evaluations, and then provide thoseresults to the node. This saves Maya from having to re-evaluate the upstream nodesevery time the node needs the results. If there are no changes to the upstream nodes,then this setting can improve display performance with no loss of results. However,note that caching uses more memory than would otherwise be used, which couldadversely affect performance. Also, if there are changes to upstream nodes, morememory is allocated and then freed, which could also adversely affect displayperformance.

Node State Set Node State to Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, or Waiting-Blocking. (Note that the Node State attribute is available asa channel in the Channel Box.)

Normal Specifies that Maya evaluate and display the character. Maya will evaluate the nodeas usual. This is the default.

Page 459: Maya Character Setup

INTRODUCING CHARACTER SETS | 37Workflow summary

CHARACTER SETS CHARACTER SETUP

459

HasNoEffect Specifies that Maya prevent actions on the character set, but still display thecharacter set. Maya will evaluate the nodes in the node’s history, but not the nodeitself.

Blocking Specifies that Maya prevent actions on the character set, and not display thecharacter set. Maya will not report the results of any evaluations of upstream nodesto this node.

Waiting-Normal (For Maya internal use only.) Specifies that if the dependency graph evaluationrefresh performance setting (Window > Settings/Preferences > PerformanceSettings) is set to Demand or Release, the node will take the Normal state when youclick Update or release the mouse button.

Waiting-HasNoEffect (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theHasNoEffect state when you click Update or release the mouse button.

Waiting-Blocking (For Maya internal use only.) Specifies that if the dependency graph evaluation

refresh performance setting is set to Demand or Release, the node will take theBlocking state when you click Update or release the mouse button.

Editing node behavior

To set node behavior with Attribute Editor:

1 Open the node’s Attribute Editor.

2 In the Attribute Editor, open Node Behavior.

3 Click Caching on or off.

4 Select the Node State as Normal, HasNoEffect, or Blocking. (The Waiting-Normal,Waiting-HasNoEffect, and Waiting-Blocking states are for Maya’s internal use.)

5 Close the Attribute Editor.

To set Node State channel with Channel Box:

When editing constraint channels with the Channel Box, you can set the Node Stateto Normal, HasNoEffect, Blocking, Waiting-Normal, Waiting-HasNoEffect, orWaiting-Blocking.

WORKFLOW SUMMARY

Using Maya’s character set feature involves defining the character set and thenanimating it. Defining the character set includes creating the character set andediting its collection of attributes. Animating the character set includes setting thecurrent character set, and then setting and editing keys. For more information ondefining character sets, see Chapter 38, “Defining Character Sets.” For moreinformation on animating character sets, see Chapter 39, “Animating CharacterSets.”

By setting up characters with Maya’s new character set feature, you can provide acomplete, ready-to-animate character whose essential attributes are all gatheredtogether for the animator’s convenience. Once you’ve done this, character setup iscomplete and animation can begin.

Page 460: Maya Character Setup

CHARACTER SETUP PART 6

460

INTRODUCING CHARACTER SETS | 37Workflow summary

Page 461: Maya Character Setup

CHARACTER SETS CHARACTER SETUP

461

38 DEFINING CHARACTER SETS

Defining character sets includes creating and editing character sets. Once you’vedefined your character set, you’ve completed character setup.

UNDERSTANDING CHARACTER SET DEFINITION

During character setup, you create a complex, hierarchical organization of objectsthat provides the features of a distinct character. The character might be a characterin the traditional sense (a robot, for example), or could be any collection of objectsthat make up something you want to animate as a distinct entity (a flying logo, forexample).

You can bring together all the attributes of these objects you want to animatetogether by defining a character set for these objects. Defining a character setprovides greater convenience during animation because all the attributes areavailable in the same place, and also because you can leverage Maya’s animationfeatures to act on the character rather than on various separate objects.

You can also develop a hierarchy of character sets by creating subcharacter setswithin a character set. With subcharacter sets, you can maintain a hierarchicalrelationship between a character’s various parts, while still providing character-levelcontrol over those various parts. A subcharacter is a subset of a character set.

Character byJason Schleifer

Page 462: Maya Character Setup

CHARACTER SETUP PART 6

462

DEFINING CHARACTER SETS | 38Creating character sets

Subcharacter sets are useful for keyframing and for creating animation clips with theTrax Editor. For example, you could define the attributes of a character’s right armas a subcharacter set because you plan to do extensive keyframe animation of theright arm as compared to other body parts.

When a subcharacter set is current and you set a key, Maya keys only thesubcharacter set’s attributes. When a character set is current and you set a key, Mayakeys the character set’s attributes and all its subcharacter set’s attributes.

If you create a clip while a subcharacter set is current, the clip contains only thekeyed subcharacter set’s attributes. If you create a clip while the character is current,the clip contains all keyed attributes on the character and the subcharacter. Thehierarchical relationship of a subcharacter set to its parent character set is displayedin the Outliner and in the Trax Editor.

When you define a collection of objects as a Maya character set (or subcharacter set),Maya creates a character node that brings together all the various attributes that youmight want to animate. These attributes are placed in a type of set, called a characterset, which is by default placed in Maya’s character partition. (If you are not familiarwith sets and partitions, refer to Using Maya: Essentials.) By default, Maya places allthe keyable attributes of the objects into the character set. You can, however, edit thecharacter set, adding any other attributes, or removing any attributes that you feelare not relevant to the animation of the character.

Defining a character set in Maya is the process of creating the character node, andthen editing it so that you are then ready to animate it.

Related MEL commandsThe MEL command related to character sets is the following:

• character

For more information about this command, refer to the online MEL CommandReference documentation.

Dependency graph nodesThe dependency graph node for a character set is the following:

• Character node, a set node that includes all the character set’s attributes (defaultname: charactern).

For more information about this and other nodes, refer to the online Node andAttribute Reference documentation.

CREATING CHARACTER SETS

When creating character sets, you can first set creation options and then create acharacter set, or you can immediately create a character set with the currently setcreation options.

Setting creation options

To set creation options:

1 If you also want to create a character set now, select all the objects whose attributesyou want to use to animate the character.

Page 463: Maya Character Setup

DEFINING CHARACTER SETS | 38Creating character sets

CHARACTER SETS CHARACTER SETUP

463

2 Select Character > Create Character Set ❒.

The options window is displayed.

Name Specifies the name of the character set. Default name is charactern.

Character SetAttributes Specifies which attributes will be included with the character set as keyable. You can

choose All Keyable, From Channel Box, or All Keyable Except.

All Keyable Specifies that all the keyable attributes of all selected objects will be included as thecharacter set’s attributes.

From ChannelBox Specifies that only the currently selected channels in the Channel Box will be

included with the character set.

All Keyableexcept Specifies whether certain attributes will be included with the character set. This

allows you to control the number of attributes included in a character set as youcreate the character set. This can save you time, reduce the number of attributeslisted in the Channel Box, and help make your animation work more efficient.

No Translate specifies that the translation attributes will be included as keyableattributes unless checked on (default is off).

No Rotate specifies that the rotation attributes will be included as keyable attributesunless checked on (default is off).

No Scale specifies that the scaling attributes will be excluded as keyable attributesunless checked off (default is on).

No Visibility specifies that the visibility attribute will be excluded as a keyableattribute unless checked off (default is on).

No Dynamic specifies that any dynamic attributes will be excluded as keyableattributes unless checked off (default is on).

Hierarchy Specifies that all of the objects in the hierarchy below the selected objects areincluded in the character set. When turned off, only the selected objects are includedin the character set.

3 Click Create Character if you want to create a character set and close the windownow. Click Apply to create and keep the window open. Click Close to close thewindow.

Creating a character set

To create a character set:

1 Select the objects whose attributes you want to use to animate the character set.

2 Select Character > Create Character Set.

A character set is created. The character node (default name: charactern) provides aset of the keyable attributes from all the selected objects. All the keyable attributesare now conveniently organized in one character set provided by the character node.

You might find that you don’t need immediate access to all of the attributes in thecharacter set. Removing some of the attributes from the character set can make thelisting of channels in the Channel Box shorter and more manageable. Forinformation on removing and adding attributes, see "Editing a character set" onpage 466.

Page 464: Maya Character Setup

CHARACTER SETUP PART 6

464

DEFINING CHARACTER SETS | 38Creating subcharacter sets

To create a character set from the Relationship Editor:

You can also create characters while using the Relationship Editor in CharacterEditing mode (select Window > Relationship Editors > Character Sets). Select theobjects you want to include in the character set, and in the Relationship Editor, selectEdit > Create Character Set.

Creating character sets within character setsYou can create character sets within character sets. When you create a character set,you can include character sets among the objects you select before selectingCharacter > Create Character Set. By creating character sets within character sets,you can create a hierarchy of character sets that you want to animate together. Youcould also think of the character sets within character sets as subcharacter sets,aspects of a character that you might want to animate separately in certainsituations.

CREATING SUBCHARACTER SETS

You can create subcharacter sets within previously defined character sets. When youcreate a subcharacter set, Maya adds the subcharacter set to the current character set.This is useful because you can apply the power of Maya’s character animationfeatures to parts of a character’s hierarchy.

Creating subcharacter sets is similar to creating character sets: you select acharacter’s objects that you want to define as a subcharacter set (for example, theobjects that make up the character’s face) and then select Character > CreateSubcharacter Set. The creation options for subcharacters are the same as the optionsfor creating characters (see "Creating character sets" on page 462).

EDITING CHARACTER SETS

Editing character sets is described in the following topics.

Selecting character sets

To select a character set:

Select Character > Select Character Set Node > charactern, where charactern is thedefault name for a character set.

The character set is selected. (Note that the objects in the character set are notselected.)

To select the objects in a character set:

Select Character > Select Character Set Members > charactern, where charactern isthe default name for a character set.

The objects that make up the character set are selected, but the character set itself isnot selected.

Page 465: Maya Character Setup

DEFINING CHARACTER SETS | 38Editing character sets

CHARACTER SETS CHARACTER SETUP

465

To select a character set from the Relationship Editor:

If using the Relationship Editor in Character Editing mode, you can select a characterset so that it is currently selected in the workspace. To do so, select the character set,and then select Edit > Select Character Set.

Adding channels to a character setYou can quickly add the channels (attributes) of any object to a character set. Theobject need not already be part of the character set.

To add channels to the current character set:

1 Make sure the character set you want to add the channels to is the current characterset.

2 Select the objects some or all of whose channels you want to add to the character set.

3 In the Channel Box, select the channels you want to add to the character set.

4 Select Character > Add To Character Set.

Maya adds the selected channels to the current character set.

To add channels to a character set using drag-and-drop in the Outliner:

You can move an attribute from one character set to another. You can can similarlyadd to a character set any numeric attribute that’s not currently in a character set.

1 In the Outliner, display the attribute and the destination character set.

2 Use the middle mouse button to drag and drop the attribute on the character set.

Removing channels from a character setYou can quickly remove the channels from a character set.

To remove channels:

1 Make sure the character set you want to remove the channels from is the currentcharacter set.

2 In the Channel Box, select the channels you want to add to the character set.

3 Select Character > Remove From Character Set.

Maya removes the selected channels from the current character set.

Editing character set channelsChannels are the attributes displayed in the Channel Box. The Channel Box providesa convenient way to edit a character set’s channels.

To edit all attributes, use the Attribute Editor (see "Editing character attributes" onpage 466).

To edit channels with the Channel Box:

1 Select a character set.

2 In the Channel Box, the character set’s channels are listed by default.

3 Click on a channel name with the left mouse button.

Page 466: Maya Character Setup

CHARACTER SETUP PART 6

466

DEFINING CHARACTER SETS | 38Editing character sets

4 In your scene, press the middle mouse button and move the mouse to the left orright. By moving the mouse, you interactively change the value of the selectedchannel. As you move the mouse, note that pressing the Ctrl key will give you finercontrol, and pressing the Shift key will give you coarser control.

Editing character attributes

To edit attributes with the Attribute Editor:

1 Select the character set.

2 Open the Attribute Editor by selecting Window > Attribute Editor (default shortcut:Ctrl a). Note that you can also open the Attribute Editor by double-clicking on thecharacter set icon in the Outliner.

3 The following sections make available attributes: Character Set Attributes, NodeBehavior, and Extra Attributes.

Character Attributes

Lists all of the attributes in the character set. To edit which attributes are in thecharacter set, see "Editing a character set" on page 466.

Node Behavior

See "Character node behavior" on page 458.

Extra Attributes

(No extra attributes by default.)

Editing a character setEditing a character set involves adding or removing attributes from the set. Bydefault, a character set includes all the keyable attributes of the objects included inthe character. Typically, you only want to work with some of these attributes.Depending on the number and complexity of the objects included in the character,keeping all of these attributes in the character set can result in a needlessly long listof channels in the Channel Box. Consequently, after you create a character set, youmay find you want to remove some of the attributes from the character set. Ofcourse, you can later add them back to the character set.

For general information about sets and partitions, see Using Maya: Essentials. Editinga character set involves using the Relationship Editor. For more information aboutthe Relationship Editor, see Using Maya: Essentials.

To view which objects are in a character set:

1 Select Window > Relationship Editors > Character Sets, or if you already have theRelationship Editor open, select its Character Editing mode option.

The editor’s left column (Character Sets) lists all the character sets in your scene.

2 Select a character set so that it is highlighted.

3 From the Relationship Editor, select Edit > Select Character Set Members.

The objects in the character set are now all selected in the workspace. This provides aquick way to select and view those objects. It’s useful if you just want to check whichobjects are part of a particular character set.

Page 467: Maya Character Setup

DEFINING CHARACTER SETS | 38Editing character sets

CHARACTER SETS CHARACTER SETUP

467

To remove attributes from the character set:

1 Select Window > Relationship Editors > Character Sets, or if you already have theRelationship Editor open, select its Character Editing mode option.

The editor’s left column (Character Sets) lists all the character sets in your scene.

2 Select a character set so that it is highlighted.

3 Click on the + icon next to the selected character set to list all the attributes in thecharacter set.

4 Select the attributes you want to remove from the character set so that they arehighlighted in yellow. Remember that you can select items next to each other bypressing the Shift key and left mouse button, and that you can select items not nextto each other by pressing the Ctrl key and left mouse button.

5 In the Relationship Editor, select Edit > Remove Highlighted Attributes.

The selected attributes are removed from the character set.

6 If you’d like to return to the workspace and pose or animate the character, with thecharacter set still selected, select Edit > Select Character Set.

The Channel Box now lists the new collection of attributes in the character set.

To add attributes to the character set:

1 Select Window > Relationship Editors > Character Sets, or if you already have theRelationship Editor open, select its Character Editing mode option.

The editor’s left column (Character Sets) lists all the character sets in your scene; theright column (Objects) lists all the objects in your scene.

2 In the left column (Character Sets), select the character set to which you want to addattributes so that it is highlighted.

3 In the right column (Objects), select the object whose attributes you want to add tothe character set.

4 Expand the object so that its attributes are listed (click the + icons next to the object’sname).

The attributes currently in the selected character set are highlighted in yellow. Also,note that the names of these attributes are displayed in italics.

5 Click on the names of the attributes you want to add to the character set.

The selected attributes are added to the character set.

6 If you’d like to return to the workspace and pose or animate the character, with thecharacter set still selected, select Edit > Select Character Set.

The Channel Box now lists the new collection of attributes in the character set.

Viewing and editing the character partitionBy default, each character set you create is placed in a default character partition.With all the character sets in the same partition, you can be sure that the attributes inone character set will not be in some other character set. To view the defaultcharacter partition, you can use the Relationship Editor.

Page 468: Maya Character Setup

CHARACTER SETUP PART 6

468

DEFINING CHARACTER SETS | 38Merging character sets

You should avoid editing the character partition. Editing the character partition canlead to problems because in doing so you might unintentionally end up havingattributes in more than one character set.

To view the character partition:

1 If you already have the Relationship Editor open to edit character sets, change theCharacter Editing selection to Partition Editing. If you don’t have the RelationshipEditor open, select Window > Relationship Editors > Partitions.

2 In the Relationship Editor, note the character partition (default name:characterPartition). To find out the character sets in the character partition, click onthe + icon. To find out all the attributes in a character set, click on the + icon next tothe character set’s icon.

For more information about using the Relationship Editor, refer to Using Maya:Essentials.

MERGING CHARACTER SETS

You can merge multiple character sets into a single character set without losing anyclip data.

To merge multiple character sets into a single character set:

1 Select the character sets.

If you select a character set and one or more of its subcharacter sets, the selectedsubcharacter sets are merged into the top level character set. If none of the selectedcharacter sets are hierarchically related, the character sets are merged into the lastselected character set.

2 Select Character > Merge Character Sets.

DELETING CHARACTER SETS

To delete a character set:

1 Select the character set.

2 Select Edit > Delete (default shortcut: Backspace key).

The character node is deleted. However, the objects that made up the character arenot deleted.

Note that if you select all of the nodes that are in a character and delete them, thecharacter node will also be deleted.

To delete a character set with the Relationship Editor:

You can also delete the character set while using the Relationship Editor in CharacterEditing mode (select Window > Relationship Editors > Character Sets). In theRelationship Editor, select a character set, and then select Edit > Delete HighlightedCharacter Sets. Note that the Edit > Undo selection from Maya’s main menu appliesto actions you perform in the Relationship Editor.

Page 469: Maya Character Setup

CHARACTER SETS CHARACTER SETUP

469

39 ANIMATING CHARACTER SETS

After you’ve defined character sets, you can leverage Maya’s animation features toanimate them at the character level.

UNDERSTANDING ANIMATING CHARACTERS

Defining character sets enables you to animate characters as a single entity ratherthan as a group of separate objects. For your convenience, all the attributes relevantfor the character’s animation can be available together in one place. For example,animators can set keys and breakdowns on characters instead of on the variousobjects that make up a character. This enables Maya to provide animators with a

Image by Cristoph Berndt

Page 470: Maya Character Setup

CHARACTER SETUP PART 6

470

ANIMATING CHARACTER SETS | 39Setting the current character Set

more intuitive approach to animating characters. Further, you can set a character asthe current character set, identifying it as the character you want to focus on andanimate.

SETTING THE CURRENT CHARACTER SET

As you animate, you can set a character set as the current character set so that youcan animate that character set only. Similar to layers, the current character set isseparate from items in the selection list. This allows you to select items in your scenewithout changing which character set is the current character set. You can set thecurrent character set from the Time Slider, the Character menu, or the Relationshipeditor.

To set the current character set from Time Slider:

You can quickly set any character set as the current character set as you animate. Inthe Time Slider, near the Timeline, note the black triangle button and the text fieldnext to the Auto Keyframe icon. The text field displays the current character set’sname. To set another character set as the current character set, click on the triangleicon. Select the character set you want as the current character set, or access theRelationship Editor by selecting Other.

To set the current character set from Character menu:

You can set the current character set by selecting Character > Set Current CharacterSet. Select the character set you want as the current character set, or access theRelationship Editor by selecting Other. You can select character sets by selectingCharacter > Character Set Node > charactern (the default name of a character).

To check and set current character sets from Relationship Editor:

When using the Relationship Editor in Character Editing mode, you can check whichcharacter sets are current by selecting Edit > Highlight Current Character Sets. Tomake character sets you’ve selected in the editor as current character sets, select Edit> Make Highlighted Character Sets Current.

For more information about selecting and editing character sets with theRelationship Editor, see "Selecting character sets" on page 464, and "Editing acharacter set" on page 466. For more information about using the RelationshipEditor, refer to Using Maya: Essentials.

KEYFRAMING CHARACTER SETS

As with any animatable object in Maya, you can set keys and breakdowns oncharacter sets. For more information on animation, including setting keys andbreakdowns, refer to Using Maya: Animation.

CREATING EXPRESSIONS FOR CHARACTER SETS

You can create expressions for character sets, or for the objects that make up acharacter set. Expressions provide an excellent way to incorporate automatic oroverlapping, secondary actions into a character’s behavior. For example, you could

Page 471: Maya Character Setup

ANIMATING CHARACTER SETS | 39Using motion capture for character sets

CHARACTER SETS CHARACTER SETUP

471

create an expression that acts on smooth skin influence objects behind a character’schest or belly, making the character seem to breathe. For more information onexpressions, refer to Using Maya: Expressions.

USING MOTION CAPTURE FOR CHARACTER SETS

You can impart motion to your character sets by using motion capture data. Formore information on capturing, filtering, and using motion capture data, refer toUsing Maya: Animation.

Page 472: Maya Character Setup

CHARACTER SETUP PART 6

472

ANIMATING CHARACTER SETS | 39Using motion capture for character sets

Page 473: Maya Character Setup

CHARACTER SETUP

473

AN

IMA

TIO

N

INDEXAAdd button 62Add Holder selection 183

Add In-Between Target addoption 68

Add Influence Object selection 339,340

Add Influence Optionswindow 339

Add Influence selection 200Add operation

Paint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Add option 48Add selection 67, 69, 176Add Targets button 389, 402, 411,

417, 423, 434, 444, 452Add To Character Set selection 465

advanced creation optionsdeformers 52

After placement 45Aim Constraint Options

window 398, 402aim constraints 395

adding target objects 402changing target objectweights 403

controlling motion historydependence effects 403

creating 398deleting 404dependency graph nodes 398editing 399editing attributes 400editing channels 399examples 404MEL commands 398preventing rolling effects 403removing target objects 402setting creation options 398understanding 395

Aim selection 398, 399, 402Aim Vector attribute 400, 432, 442Aim Vector constraint option 398,

431, 441aim vectors 396, 428, 438

All Keyable except creationoption 463

All Keyable option 463Alphabetically 328Amount tool setting 187

Amplitude attribute 130, 153Amplitude channel 129, 153Amplitude creation option 126, 150

Angle Interpolation attribute 91,359

animatingcharacters 469necks, tails, spines 273

animation controllers 382Animation Details 240Animation menu set 31

arrow keys 223Assume Preferred Angles

selection 229attributes 43

adding 54channels 54connecting 54keyable 54non-keyable 54setting IK spline handle 281

Auto CreateCurve 280Root Axis 279, 286

Auto Create Curve tool setting 280

Auto Create Root Axis toolsetting 279

Auto Joint Limits tool setting 217Auto Joint Orient tool setting 216Auto Parent Curve 286

Auto Parent Curve tool setting 279Auto Simplify Curve 280Auto Simplify Curve tool

setting 280Autopriority tool setting 253, 265,

299

BBake History option 337ball joints 213baseOrigin attribute 63

Before placement 45

bend deformers 111creating 112deleting 116dependency graph nodes 112editing attributes 115editing channels 114editing deformation effects 113manipulating handles 114MEL commands 111setting creation options 112understanding 111

Bend selection 112, 113

Bicep channel 373Bind Method option 320, 355bind pose 311, 321, 356

changing 322, 357global 357going to 321, 356local 357problems 322, 357

Bind to option 319, 355binding

rigid skin 354smooth skin 319

blend shape deformers 57adding target object shapes 67blending objects with differenttopologies 64

creating 59creating new blend shapedeformer 67

deleting 70deleting a target’s object 65dependency graph nodes 59editing attributes 63editing channels 62editing deformation effects 61matching position, rotation, andscaling of targets 64

MEL commands 58removing target objectshapes 69

saving a blend shape as a newtarget 66

scaling influence of alltargets 64

selecting node 67setting creation options 59setting keys for blend shapes 66setting target weights 65swapping target objectshapes 70

understanding 57using the Blend Shape editor 61

Page 474: Maya Character Setup

CHARACTER SETUP

474

INDEX

Blend Shape editor 61using 61

BlendShape Add Optionswindow 67

BlendShape Node add option 68BlendShape Node creation

option 60BlendShape Node remove

option 69BlendShape Node swap option 70

BlendShape Options window 59BlendShape Remove Options

window 69BlendShape Swap Options

window 70Blocking node state option 55, 208,

314bone lattice flexors 353bone sculpt flexors 354

bones 213Bones creation option 369box around the start joint 254, 267

By Hierarchy 328

CC icon 89, 188Cache Time Range 108Caching attribute 54, 208, 313

Changing Blend Shape editor sliderorientation 62

channels 54Character menu 37Character menu selections

Add To Character Set 465Character Set Node 470Create Character Set 463Create Subcharacter Set 464Remove From Character Set 465Select Character SetMembers 464

Set Current Character 470character nodes 462character partitions 462, 467

character rigging 30Character Set Attributes

options 463

character sets 37, 457, 467adding attributes 467adding channels to 465creating character sets withincharacter sets 464

creating expressions 470defining 461deleting 468dependency graph nodes 462editing 464editing attributes 466editing channels 465editing character partition 468keyframing 470MEL commands 462merging 468node behavior 458removing attributes 467removing channels from 465selecting 464setting creation options 462understanding 457understanding characterdefinition 461

using motion capture 471viewing objects in acharacter 466

character setup 30features 33

charactersanimating 469creating 462setting current character 470

from Character menu 470from RelationshipEditor 470from Time Slider 470

Check Topology creation option 60

Clamp settingsPaint Cluster Weights Tool 97Paint Jiggle Weights Tool 101Paint Skin Weights Tool 97

Clamp Value settingPaint Cluster Weights Tool 97Paint Jiggle Weights Tool 102Paint Skin Weights Tool 97

cloth garment wrap influenceobjects 193

cluster deformers 87controlling deformationpercentage of entire cluster 102

creating 88deleting 102dependency graph nodes 88editing attributes 90editing channels 90editing cluster deformer sets 91editing cluster weights 92editing deformation effects 89manipulating the clusterhandle 89

MEL commands 87pruning cluster deformersets 91

setting cluster relative to parenttransform 102

setting creation options 88setting location of clusterhandle 102

understanding 87using weighted nodes 102

Cluster Options window 88Cluster selection 92cluster weights

flooding 95mapping 95, 100masking 95paint operations 96painting 93, 97, 361

Color Feedback option 47Color Feedback setting 93, 97, 99,

327, 361Coloring option 337, 355, 367

Complete List selection 51Component Editor 92, 325, 359Components Matrix channel 323

Connect Joint Options window 225Connect Joint selection 225Connect to IK/FK 239

Constrain menu 36Constrain menu selections

Aim 398, 399, 402Geometry 421, 423, 424Normal 430, 431, 434, 435Orient 408, 409, 411Point 387, 389, 390, 452Pole Vector 449, 450, 452Scale 414, 415, 417Tangent 440, 441, 444, 445

constrained objects 385, 395, 407,413, 419, 428, 438

Constraint Offset attribute 388, 451

Page 475: Maya Character Setup

INDEX

CHARACTER SETUP

475

Constraint Operation constraintoption 387, 399, 409, 415, 421,431, 441, 449

Constraint Rotate attribute 401,410, 422, 433, 443

Constraint Scale attribute 416Constraint Translate attribute 389,

451Constraint Vector attribute 401,

433, 443constraints 36, 381

aim 395basic 381enabling and disabling allnodes 383

geometry 419node behavior 382normal 427orient 407point 385pole vector 447scale 413tangent 437understanding 381

construction history 53deleting 53

control points 42Copy Flexor selection 372

Copy Jiggle Disk Cache Files onSave Scene As 108

Copy Skin Weights selection 332Creasing channel 371

Create Bend Deformer Optionswindow 112

Create Blend Shape selection 59, 61Create Character button 463Create Character Set Options

window 463Create Cluster selection 88, 89

Create Flare Deformer Optionswindow 118

Create Flexor selection 369Create Flexor window 369Create IK Handle tool setting 217

Create Jiggle Deformer Optionswindow 105

Create Lattice selection 75, 76Create Sculpt selection 161, 162Create Sine Deformer Options

window 126Create Squash Deformer Options

window 132

Create Twist Deformer Optionswindow 144

Create Wave Deformer Optionswindow 150

Create Wrap Deformer Optionswindow 193

Create Wrap selection 193, 195creating

aim constraints 398bend deformers 112blend shape deformers 59character sets 462cluster deformers 88flare deformers 118geometry constraints 421IK rotate plane handles 253IK single chain handles 265IK spline handles 274IK two bone handles 299jiggle deformers 105joint chains 216lattice deformers 74limbs 216normal constraints 430orient constraints 408parent transform with IKspline 279

point constraints 387pole vector constraints 449rigid skin 354scale constraints 414sculpt deformers 161sine deformers 126skeletons 216smooth skin 319squash deformers 132tangent constraints 440twist deformers 144wave deformers 150wire deformers 171wrap deformers 192wrinkle deformers 187

Crossing Effect attribute 179Crossing Effect channel 177

Crossing Effect tool setting 172current character set 470Current Solver tool setting 253,

265, 299Curvature attribute 115

Curvature channel 115Curvature creation option 113Curve attribute 122

curve attribute 179Curve channel 121

Curve creation option 119Curve Editing Tool 275

curve points 391constraining to locators 391

curvesauto-creating with IK splinehandle 280

auto-simplifying with IK splinehandle 280

IK spline handle 274transforming IK handle 278

custom deformable objects 42custom wrinkle deformers 186

DDamping 106Default placement 45Default Weight option 339

Deform menu 34

Page 476: Maya Character Setup

CHARACTER SETUP

476

INDEX

Deform menu selectionsCreate Blend Shape 59, 61Create Cluster 88, 89Create Jiggle Deformer 105Create Lattice 75, 76Create Nonlinear

Bend 112, 113Flare 118, 119Sine 126, 127Squash 132, 133Twist 144, 145Wave 150, 151

Create Sculpt 161, 162Create Wrap 193, 195Edit Blend Shape

Add 67, 69Remove 69Swap 70

Edit LatticeRemove Lattice Tweaks 80Reset Lattice 80, 81Reset Lattice Tweaks 81

Edit Membership Tool 47, 363Edit Wire

Add 176Add Holder 183Parent Base Wire 177Remove 176, 183Reset 177

Edit WrapAdd Influence 200Remove Influence 200

Point On Curve 391, 392Prune Membership

Cluster 92Lattice 81Sculpt 165Wire 183

Wire Dropoff Locator 180Wire Tool 172, 173, 174Wrinkle Tool 187, 188

deformable object points 42deformable objects 42, 309

user-defined 42deformation chain 44

deformation order 43changing 50

Deformation Order creationoption 52

After 45Before 45Default 45Front Of Chain 46Parallel 45Split 45

Deformation Order tool setting 172

deformer sets 43deformers 34, 41

bend 111blend shape 57blending influences of severaldeformers 45

changing performancesettings 51

cluster 87deformation orderplacement 44

editing advanced creationoptions 52

editing node behavior 54editing set membership 46flare 117jiggle 105lattice 73modeling 53painting set membership 47sculpt 159setup and animation 54showing and hiding 51sine 125squash 131twist 143wave 149wire 167wrap 191wrinkle 185

Degrees of Freedom attribute 219

Degrees of Freedom toolsetting 216

Delete History option 337Delete Targets creation option 60Demand refresh option 51

Dependency 252, 265, 298dependency graph 43dependency graph loops

IK spline 279, 284

Detach Selected Joints selection 368Detach Skeleton selection 367Detach Skin Options window 337,

367Detach Skin selection 337, 366, 367

Direction option 331Disable Weight Normalization

selection 333Disconnect Joint selection 225Disk Cache 107

disk cachejiggle 107

Display menu selectionsHide

Hide DeformersLattices 82

Joint Size 227Object Components

Lattice Points 82Lattice Shape 81Local Rotation Axes 222

ShowShow Deformers

Lattices 82

Divisions creation option 75double transformation effects 311,

353downstream nodes 43Drag refresh option 51

Dropoff attribute 130, 154, 323,340, 341

Dropoff channel 129, 153, 196, 197Dropoff creation option 127, 151Dropoff Distance attribute 160, 164

Dropoff Distance channel 163, 178,374

Dropoff Distance creationoption 162, 369

Dropoff Distance tool setting 172Dropoff option 339

Dropoff Position 153Dropoff Rate option 320Dropoff Type attribute 164

Dropoff Type creation option 162,370

EEdit Membership Tool 46, 363Edit Membership Tool selection 47,

363

Page 477: Maya Character Setup

INDEX

CHARACTER SETUP

477

editingaim constraints 399bend deformation effects 113blend shape deformationeffects 61

character sets 464cluster deformation effects 89flare deformation effects 120geometry constraints 422IK rotate plane handles 255IK single chain handles 267IK spline handles 281IK two bone handles 301joints 218lattice deformation effects 76normal constraints 432orient constraints 409point constraints 387pole vector constraints 450rigid skin 356scale constraints 415sculpt deformation effects 162sine deformation effects 127squash deformation effects 133tangent constraints 442twist deformation effects 145wave deformation effects 151wire deformation effects 175wrinkle deformation effects 188

Enable 106Enable IK Solver 239Enable State

displaying IK handle 240Enable Weight Normalization

selection 333End Angle attribute 147

End Angle channel 147End Angle creation option 144End Effector attribute 257, 269, 303

end effectors 247, 263, 293End Flare X attribute 122End Flare X channel 121

End Flare X creation option 119End Flare Z attribute 122End Flare Z channel 121

End Flare Z creation option 119end joints 246, 262, 292End Smoothness attribute 136

End Smoothness channel 135End Smoothness creation

option 133Envelope 107

Envelope attribute 64, 79, 91, 115,122, 130, 136, 147, 154, 164,180, 199, 324, 359

Envelope attributesfor wire dropoff locators 180

Envelope channel 53, 63, 77, 90,115, 121, 129, 135, 146, 153,163, 177, 198, 323, 358, 374

Envelope creation option 60, 89

Envelope tool setting 172Even mode 161examples

aiming cone at sphere 405aiming sphere at sphere 404deforming high-res sphere withlow-res sphere 201

deforming plane with fivecones 202

hand muscle bulge withinfluence object 345

IK two bone handlequickstart 290

influence objects preventingdeformation 348

ripple animation 154skinning a cylinder by rigidskinning 375

skinning cylinder by smoothskinning 341

spiral staircase modeling 148wire deformer quickstart 167

Exclusive creation option 52Exclusive Partition tool setting 172Exclusive tool setting 172

Existing Nodes add option 68Existing Nodes remove option 69Existing Nodes swap option 70

Existing Partitions tool setting 172Expand attribute 136Expand channel 135

Expand creation option 133Export Value 335expressions 54

character set 470

FFactor attribute 136Factor channel 135Factor creation option 133

Filter buttonPaint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

fishanimating with IK spline 284,286

FK posing 236switching to IK 239

FK to IKexample of switching 242

flare deformers 117creating 118deleting 123dependency graph nodes 118editing attributes 122editing channels 121editing deformation effects 120manipulating handles 120MEL commands 117setting creation options 118understanding 117

Flare selection 118, 119Flexor Type creation option 369flexors 353, 368

bone lattice flexors 353bone sculpt flexors 354creating 368editing bone lattice flexors 372editing bone sculpt flexors 374editing joint cluster flexors 375editing joint lattice flexors 370editing joint sculpt flexors 374joint cluster flexors 354joint lattice flexors 353joint sculpt flexors 353

Flip mode 159, 161flipping

IK rotate plane handles 255IK two bone handles 301preventing IK spline startjoint 282

Flood button 100Paint Cluster Weights Tool 97Paint Jiggle Weights Tool 102Paint Skin Weights Tool 97

flooding clusters 95flooding jiggle deformers 100Force Along Normal 106

Force On Tangent 106forward kinematics (FK) 232Freeze Geometry attribute 79, 84,

179Freeze Mode creation option 76

Page 478: Maya Character Setup

CHARACTER SETUP

478

INDEX

From Channel Box option 463Front of Chain creation option 61

Front Of Chain placement 46

Ggarment 193

Geometry Constraint Optionswindow 421, 423, 424

geometry constraints 419adding target objects 423animating target objectweights 424

animating the constrainedobject 425

changing target objectweights 424

creating 421deleting 425dependency graph nodes 421editing 422editing attributes 422editing channels 422MEL commands 420removing target objects 424setting constraint options 421understanding 419using point constraints with 425

Geometry option 339Geometry selection 421, 423, 424global bind pose 357

Global Snap attribute 238Global Solver attribute 238gnomon 263

Go to Bind Pose selection 322, 357Grouping creation option 76, 162

Hhair

jiggling 105

hand 346handle position and orientation

control 263handle position control 247, 292handle vectors 248, 264, 294

handle wires 248, 264, 293HasNoEffect node state option 55,

208, 313hierarchy

skeleton 215Hierarchy creation option 463

High Bound attribute 115,122,130,136, 147

High Bound channel 115, 121, 129,135, 147

High Bound creation option 112,118, 126, 132, 144

hinge joints 214history 43

construction 53deleting 53

History option 337, 367

Hold 326Hold Weights attribute 323Holders tool setting 172

Horizontal slider option 62human spines

IK spline handle 284

IIgnore Transform 106, 107

IK and FKswitching between 239

IK chains 234IK Handle Tool selection 253, 254,

265, 266, 299, 300IK handles 234

dependency graph nodes 236difference between single chainand rotate plane 264

MEL commands 235IK multi-chain (MC) solvers 238IK posing 236

switching to FK 239IK rotate plane handles 245

controlling joint chainflipping 255

creating 253deleting 260dependency graph nodes 252editing 255editing attributes 256editing channels 255manipulating the polevector 254

manipulating twist disc 255MEL commands 252posing 254understanding 246

IK rotate plane solverediting attributes 259understanding behavior 253

IK single chain handles 261creating 265deleting 271dependency graph nodes 265editing 267editing attributes 268editing channels 267MEL commands 264moving 267posing 267rotating 267understanding 262

IK single chain solverediting attributes 270understanding behavior 265

IK Solver attribute 257, 269, 303

IK solvers 233, 235creating 237creating IK multi-chain (MC)solver 238

disabling and enabling allnodes 239

using 237

IK spline handle 273animating sinuous motion 286auto-creating curve 280auto-parenting curve 279creating 274curve 274dependency graph nodes 274human spines 284manipulating curve CVs 275,284

MEL commands 273motion path 283offset 277parenting to transform orjoint 284

rolling 276selecting 276setting keys 275sliding joint chain 276snapping curve to start joint 280soft body on curve 283tail, back, and neck 285tips for using 284tool options 278twisting 276

IK systemsediting attributes 238using 237

Page 479: Maya Character Setup

INDEX

CHARACTER SETUP

479

IK two bone handles 289controlling joint chainflipping 301

creating 299deleting 305dependency graph nodes 298editing 301editing attributes 302editing channels 301manipulating the polevector 300

manipulating twist disc 301MEL commands 298posing 300understanding 291with more than two bones 291

IK two bone solverediting attributes 305source code 306understanding behavior 298

ik2Bsolver 306

Image Format 336In-Between creation option 60In-Between Weight add option 68

Infl Type channel 197Inherits Transform attribute 219,

257, 268, 303Input Nurbs Object attribute 392Insert Joint Tool selection 224

Inside Mode attribute 164Inside Mode creation option 161,

370Intensity tool setting 187intermediate objects 44, 50

displaying 50hiding 50

inverse kinematics (IK) 232, 233

JJ icon 375jiggle

deleting or disabling cache 109disk cache 107motion blur 107

jiggle deformers 105creating 105setting creation options 106

Jiggle Only After Object Stops 106

Jiggle Weight 106

jiggle weightsflooding 100mapping 100masking 100paint operations 101painting 99

joint chain plane indicators 250,295

joint chain planes 249, 295

joint chains 214best length for IK 265creating 216editing 223

joint cluster flexors 354joint cluster nodes 354joint lattice flexors 353

Joint Orient attributes 220joint sculpt flexors 353Joint Tool selection 216, 218

joints 213ball joints 213connecting 225dependency graph nodes 216disconnecting 225displaying local axis 222editing 218editing attributes 218hinge joints 214inserting 224MEL commands 215mirroring 226moving, rotating, or scaling ajoint and its bone 222

orienting local axis 222removing 224root joints 215selecting all in hierarchy 223setting and assuming preferredangles 228

setting display size 227universal joints 214

Joints creation option 369

KKeep Aspect Ratio 336Keep History option 337

Keep Original point on curveoption 392

Key All button 62Key buttons 62

LL icon 81

lattice deformers 73assuring smooth deformationthrough base lattice 85

changing influence latticeresolution 81

changing lattice resolutionperformance settings 85

creating 74deforming a lattice with otherdeformers 84

deleting 85dependency graph nodes 74editing attributes 78editing channels 77editing deformation effects 76editing influence lattice shapeattributes 79

editing influence lattice shapechannels 79

editing lattice deformer sets 80editing the base lattice 84editing the influence lattice 77freezing the lattice deformationmapping 82

grouping base and influencelattices 84

improving performance 85MEL commands 74parenting lattices to objectsbeing deformed 84

pruning lattice deformer sets 81resetting influence lattice pointsand removing tweaks 80

resting influence lattice shapeand location 80

sculpting the influencelattice 82

setting creation options 75showing and hiding all latticedeformers 82

skinning 86toggling lattice shape handle 81turning on or off display oflattice points 82

understanding 73weighting lattice points to altertheir influence 82

Lattice Options window 75lattice points 42

Lattice Points selection 82Lattice selection 81Lattice Shape selection 81

Lattices selection 82

Page 480: Maya Character Setup

CHARACTER SETUP

480

INDEX

least squares modifier 392least squares modifier

attributes 392Length In channel 371, 373

Length Out channel 371, 373limbs 214

creating 216editing 223mirroring 226

Limit Influence Area creationoption 194

List of paintable attributes buttonPaint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Local attribute 78local bind pose 357Local creation option 60

Local Divisions creation option 75Local Influence attribute 179Local Influence channel 178

Local Influence S attribute 78Local Influence S channel 77Local Influence T attribute 78

Local Influence T channel 77Local Influence tool setting 172Local Influence U attribute 78

Local Influence U channel 78Local Mode creation option 75Local Position attribute 181

Local Rotation Axes selection 222Locator Envelope channels 178locked attributes

joints 357

Low Bound attribute 115, 122, 130,136, 147

Low Bound channel 115, 121, 129,135, 147

Low Bound creation option 112,118, 126, 132, 144

Lower Bound attribute 359Lower Bound channel 358Lower Dropoff Type attribute 359

Lower Dropoff Type channel 358Lower Value attribute 359Lower Value channel 358

MMap Size X, Y 336

mappingcluster weights 95, 100jiggle weights 100

masked surfacespainting cluster weights 95painting jiggle weights 100painting skin weights 328

Max Damp Range attributes 220Max Damp Strength attributes 220Max Displacement attribute 164

Max Displacement channel 374Max Displacement creation

option 161, 369Max Distance attribute 199Max Distance channel 198

Max Distance creation option 194Max Expand Pos attribute 136Max Expand Position channel 135

Max Expand Position creationoption 133

Max Influences option 320Max Influences setting 322Max Iterations attribute 259, 271,

305Max Radius attribute 154

Max Radius channel 153Max Radius creation option 150

Maximum Displacementattribute 160

Maximum Displacementchannel 163

Maya API examplesIK two bone solver (ik2Bsolver)plug-in 306

meshes 42

Min Damp Range attributes 220Min Damp Strength attributes 220Min Radius attribute 154

Min Radius channel 153Min Radius creation option 150Min/Max Value setting

Paint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Mirror 227

Mirror Across 226Mirror Axis option 331Mirror button 331

Mirror Function 226Mirror Joint 227Mirror Joint Options window 227

Mirror Joint selection 226

Mirror Skin Weights selection 331Mode attribute 164

Mode creation option 88, 161, 370modeling

with deformers 53models 42, 310modifiers 42

morph 58morphing 58motion capture

character sets 471

motion history dependence 397,420, 429, 439

Motion Multiplier 107motion path

IK spline handle 283moving

start joint off IK splinecurve 279

NName creation option 463

New button 62New Partition Name creation

option 52No Dynamic option 463Node State attribute 54, 208, 313

Node State channel 388, 400, 409,415, 422, 432, 442, 450

nodes 43nonlinear deformers

bend 111flare 117sine 125squash 131twist 143wave 149

Normal Constraint Optionswindow 430, 434, 435

Page 481: Maya Character Setup

INDEX

CHARACTER SETUP

481

normal constraints 427adding target objects 434changing target objectweights 435

controlling motion historydependence effects 436

creating 430deleting 436dependency graph nodes 430editing 432editing attributes 432editing channels 432MEL commands 430preventing rolling effects 435removing target objects 435setting creation options 430understanding 427

Normal node state option 54, 208,313

Normal selection 430, 431, 434, 435

Normalize Weights attribute 324Normalize Weights channel 324Normalize Weights selection 334

Number of Spans 280, 281Number of Spans tool setting 280NURBS control vertices (CVs) 42

NURBS curves 42NURBS Samples attribute 340NURBS Samples option 339

NURBS surfaces 42

Ooffset

IK spline handle 277

Offset attribute 130, 154, 282Offset channel 129, 153, 256, 268,

302Offset creation option 127, 151Offset Polarity attribute 388, 451

operationPaint Set Membership Tool 48

Orient Constraint Optionswindow 408, 411

orient constraints 407adding target objects 411animating target objectweights 412

changing target objectweights 411

creating 408deleting 412dependency graph nodes 408editing 409editing attributes 410editing channels 409MEL commands 408removing target objects 411setting constraint options 408understanding 407

Orient selection 408, 409, 411

Origin attribute 63, 102Origin creation option 60, 63Over Sample 108

overlappingIK spline handle joints 284

PPaint Cluster Weights Tool 93, 97,

361settings 96

Paint Jiggle Weights Tool 99

paint operationsPaint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Paint Set Membership Tool 47, 364operations 48options, setting 48painting weights 47selection 47

Paint Skin Weight Toolsettings 96

Paint Skin Weights Tool 327

paintingcluster weights 93, 97, 361jiggle weights 99set membership 47skin weights 327

Parallel placement 45

Param attribute 179, 181Param channel 181Parent Base Wire selection 177

Parenting creation option 76Partial Resolution attribute 78, 91,

359

Partition option 355Partition To Use creation option 52

partitions 46pelvic region

positioning skeleton root in 287Percent attribute 181Percent attributes 179

Percent channel 181Percent Resolution attribute 91, 359Pick Color Mode hotkey 47, 94, 98,

100, 362plug-ins

IK two bone solver(ik2Bsolver) 306

Po Weight attribute 257, 269, 303

Point Constraint Optionswindow 387, 389, 390

point constraints 385adding target objects 389animating target objectweights 390

changing target objectweights 390

creating 387deleting 391dependency graph nodes 386editing 387editing attributes 388editing channels 388MEL commands 386offsetting constrained object’sposition 390

removing target objects 390setting constraint options 387understanding 385

point on curve locatorconstraints 385, 391

creating 391editing least squares modifierattributes 392

using 391Point On Curve selection 391, 392Point selection 387, 389, 390, 452

point tweaking 49Point Weight point on curve

option 392pointConstraint attributes 392points 42

Pole Vector attributes 257, 303Pole Vector channels 256, 268, 302Pole Vector Constraint Options

window 449, 452

Page 482: Maya Character Setup

CHARACTER SETUP

482

INDEX

pole vector constraints 447adding target objects 452changing target objectweights 452

creating 449deleting 453dependency graph nodes 449editing 450editing attributes 450editing channels 450MEL commands 449offsetting pole vector’s endposition 453

removing target objects 452setting constraint options 449understanding 447

Pole Vector selection 449, 450, 452

pole vectors 251, 296, 447Polygon Smoothness option 339polygonal surfaces 42

polygonal vertices 42Position the Flexor creation

option 369Positioning creation option 75, 162Positive to Negative (+Z to -Z)

option 331POWeight tool setting 254, 266,

300

Power AnimatorIK spline twisting in Maya 281

Power Animator (PA)IK PA solver 235

Preferred Angle attribute 219Primary Visibility attribute 193

Priority attribute 257, 269, 303Priority tool setting 254, 266, 300Project mode 160, 161

pruning skin weights 334

RRadial Branch Amount tool

setting 187Radial Branch Depth tool

setting 188radial wrinkle deformers 186

Randomness tool setting 187Rate 109Reassign Bone Lattice Joint

selection 374Reattach Selected Joints

selection 368

Reattach Skeleton selection 368reference plane indicators 252, 297

reference planes 251, 296Refresh On options 51Relative attribute 90, 102, 359

Relative creation option 88Release refresh option 51Remove From Character Set

selection 465Remove Influence Object

selection 340Remove Influence selection 200

Remove Joint selection 225Remove Lattice Tweaks

selection 80Remove option 48Remove selection 69, 176, 183

Remove Targets button 390, 402,411, 417, 424, 435, 445, 452

Remove Unused Influences 334Render Globals option 108rendering

wrap influence objects 193Replace operation

Paint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Reset All button 62

Reset Lattice selection 80, 81Reset Lattice Tweaks selection 81Reset selection 177

Reset Weights to Defaultselection 332

rigging 30Rigid Bind selection 355, 356Rigid Bind Skin Options

window 355rigid bound skins, weight

painting 97, 361rigid skin objects 352

rigid skin point sets 353organizing before binding 353

rigid skin point weights 352rigid skin points 352

rigid skinning 351adjusting skin behavior 356binding 354changing bind pose 357checking binding 356creating flexors 368dependency graph nodes 354detaching 366detaching selected joints 368detaching skeleton 367editing 356editing bone lattice flexors 372editing joint clusterattributes 358

editing joint clusterchannels 357

editing joint cluster flexors 375editing joint lattice flexors 370editing joint or bone sculptflexors 374

editing rigid skin point setmemberships 363

editing rigid skin pointweights 359

example 375going to bind pose 356MEL commands 354overcoming bind poseproblems 357

painting rigid skin point setmemberships 364

reattaching selected joints 368reattaching skeleton 367setting rigid bind options 355understanding 352using cluster deformers 353using lattice deformers 353

Ring mode 161

Roll attribute 282Roll channel 256, 268, 302rolling

IK spline handle 276rolling effects

aim constraints 397normal constraints 429tangent constraints 439

root joints 215

Root on Curve 276Root on Curve attribute 282Root On Curve tool setting 278

Root Twist Mode 281Root Twist Mode attribute 282Root Twist Mode tool setting 281

Rot Limit X attribute 221, 258, 270,304

Page 483: Maya Character Setup

INDEX

CHARACTER SETUP

483

Rot Limit Y attribute 221, 258, 270,304

Rot Limit Z attribute 221, 258, 270,304

Rotate attributes 218, 257, 268, 303Rotate Axis attribute 219, 257, 268,

303Rotate creation option 463

Rotate Order attribute 219, 257,268, 303

Rotate X channel 256, 302Rotate Y channel 256, 302Rotate Z channel 256, 302

Rotation attribute 178Rotation channel 178rotation discs 249, 294

Rounding channel 371

SS Divisions attribute 80

S Divisions channel 79S, T, U Divisions creation

options 369Scale attributes 219, 257, 268, 303Scale channels 178

Scale Compensate tool setting 217Scale Constraint Options

window 414, 417scale constraints 413

adding target objects 417animating target objectweights 418

changing target objectweights 417

creating 414deleting 418dependency graph nodes 414editing 415editing attributes 416editing channels 415MEL commands 414removing target objects 417setting constraint options 414understanding 413

Scale creation option 463Scale Limit X attribute 221, 258,

270, 304Scale Limit Y attribute 221, 258,

270, 304Scale Limit Z attribute 221, 258,

270, 304Scale menu selection 417

Scale operationPaint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Scale selection 414, 415, 417Scale X channel 256, 302Scale Y channel 256, 302

Scale Z channel 256, 302scaling weights 96, 101scenes 43

sculpt deformers 159creating 161deleting 165dependency graph nodes 160editing attributes 164editing channels 163editing deformation effects 162editing sculpt deformer sets 165manipulating sculpt sphere 162manipulating stretch originlocator 163

MEL commands 160pruning sculpt deformersets 165

setting creation options 161understanding 159

Sculpt Options window 161

Sculpt selection 165sculpt sphere 159seals

animating with IK spline 286

Segment Scale Compensateattribute 220

Select button 62Select Character Set Node

selection 464Select Cluster Mode hotkey 97Select Set To Modify box 48

selectingIK spline handle 276

Set Driven Key selection 54Set IK/FK Key 239

Graph Editor display 242Set Max Influences selection 322

Set Max Influences window 322set membership

painting 47painting operations 48

Set Preferred Angles selection 228Set To Modify box 48

settingkeys 275

shape interp 58

Shear attributes 257, 268, 303Shear XY channel 53

Shear XZ channel 53Shear YZ channel 53shearing effects 53

sine deformers 125creating 126deleting 130dependency graph nodes 125editing attributes 129editing channels 129editing deformation effects 127manipulating handles 128MEL commands 125setting creation options 126understanding 125

Sine selection 126, 127

sinuous motionIK spline handle 286

Skeleton menu 35Skeleton menu selections

Assume Preferred Angles 229Connect Joint 225Disconnect Joint 225IK Handle Tool 253, 254, 265,266, 299, 300

IK Spline Handle Tool 278Insert Joint Tool 224Joint Tool 216, 218Mirror Joint 226Remove Joint 225Reroot skeleton 227Set Preferred Angles 228

Page 484: Maya Character Setup

CHARACTER SETUP

484

INDEX

skeletons 35, 207building 211connecting joints to combine twoskeletons 225

disconnecting joints to createnew skeletons 225

displaying all local axes in a limbor skeleton 223

editing 223editing node behavior 208inserting a joint 224MEL commands 215mirroring 226mirroring limbs orskeletons 226

navigating hierarchy 223posing 231posing with forward kinematics(FK) 236

posing with inverse kinematics(IK) 236

removing a joint 224reorienting all local axes in limbor skeleton 223

rerooting 227selecting joints and navigatinghierarchy 223

setting and assuming preferredangles 228

setting display size of alljoints 227

understanding 207understanding construction 212using IK rotate planehandles 245

using IK single chainhandles 261

using IK two bone handles 289viewing hierarchy 223viewing skeleton hierarchy 223

skin 316, 352skin cluster nodes 319

Skin menu 36

Skin menu selectionsBind Skin

Rigid Bind 355, 356Smooth Bind 319, 320

Detach Skin 337, 366, 367Edit Rigid Skin

Copy Flexor 372Create Flexor 369Detach Selected Joints 368Detach Skeleton 367Preserve Skin Groups 367,368Reassign Bone LatticeJoint 374Reattach SelectedJoints 368Reattach Skeleton 368

Edit Smooth SkinAdd Influence Object 339,340Remove InfluenceObject 340Reset Weights toDefault 332Set Max Influences 322

Go to Bind Pose 322, 357skin objects 309, 316, 352

skin points 316, 352skin weights

masking 328paint operations 96painting 327pruning 334

skinning 36, 309changing deformationorder 311

editing node behavior 313point tweaking 312rigid 351smooth 315understanding 309

slider orientationBlend Shape editor 62

slidingjoint chain along curve 276

Smooth Bind selection 319, 320Smooth Bind Skin Options

window 319Smooth operation

Paint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

smooth skin influence objects 318

smooth skin objects 316smooth skin point sets 318

smooth skin point weights 316smooth skin points 316

smooth skinning 315adding influence objects 339adjusting skin behavior 321binding 319changing bind pose 322checking binding 321controlling weightnormalization 333

dependency graph nodes 319detaching 337editing 321editing joint attributes 322editing maximuminfluences 322

editing NURBS influence objectattributes 340

editing polygonal influenceobject attributes 341

editing skin clusterattributes 324

editing skin clusterchannels 323

editing skin point weights 325examples 341exporting/importing weightmaps 334

going to bind pose 321holding weights 332MEL commands 319mirroring weights 331overcoming bind poseproblems 322

pruning skin weights 334removing influence objects 340removing unusedinfluences 334

resetting skin point weights todefaults 332

setting bind options 319understanding 316using influence objects 338

smoothing weights 96, 101Smoothness attribute 341Smoothness channel 197

snakesanimating with IK spline 284,286

Snap Curve To Root 280Snap Curve To Root tool setting 280Snap Enable attribute 257, 269, 303

Snap Enable tool setting 253, 266,299

Page 485: Maya Character Setup

INDEX

CHARACTER SETUP

485

Solver Enable attribute 257, 269,303

IK spline handle 281

Solver Enable channel 256, 268,302

Solver Enable tool setting 253, 266,299

source codeIK two bone solver 306

space warp 42Specify Node add option 67

Specify Node remote option 69Specify Node swap option 70Split placement 45

squash deformers 131creating 132deleting 136dependency graph nodes 131editing attributes 135editing channels 135editing deformation effects 133examples 137manipulating handles 134MEL commands 131setting creation options 132understanding 131

Squash selection 132, 133Start Angle attribute 147

Start Angle channel 147Start Angle creation option 144

Start Flare X attribute 122Start Flare X channel 121Start Flare X creation option 119

Start Flare Z attribute 122Start Flare Z channel 121Start Flare Z creation option 119

Start Joint attribute 257, 269, 303start joint flipping

in motion path 283preventing IK spline 282

start joints 246, 262, 292Start Smoothness attribute 136

Start Smoothness channel 135Start Smoothness creation

option 132Start Time/End Time 108Stickiness attribute 257, 269, 303

Sticky tool setting 253, 266, 300Stiffness 106Stiffness attribute 219

Stretch mode 160, 161stretch origin locator 160

subdivision surfaces 42Swap selection 70

TT Divisions attribute 80T Divisions channel 79

Tangent Constraint Optionswindow 440, 444, 445

tangent constraints 437adding target objects 444changing target objectweights 445

controlling motion historydependence effects 446

creating 440deleting 446dependency graph nodes 440editing 442editing attributes 442editing channels 442MEL commands 440preventing rolling effects 445removing target objects 445setting constraint options 440understanding 437

Tangent selection 440, 441, 444,445

tangential wrinkle deformers 186target attributes 64

target channels 63Target Index add option 68Target names 62

target object weights 386, 396, 408,414, 420, 428, 438, 448

target objects 385, 395, 407, 413,419, 448

target orientation 407target points 386, 395, 420, 448target scale 414

Target Shape Options addoptions 68

Target Shape Options creationoptions 60

target vector 428, 438Target weight boxes 62Target weight sliders 62

targetOrigin attribute 63Tension attribute 179Tension channel 177

Thickness tool setting 187Time Slider option 108

tipsIK spline handle creation 284

Tolerance attribute 259, 271, 305tool options

IK spline handle 278

Tool Settings windowIK Handle Tool 253, 265, 299Joint Tool 216Wire Tool 172Wrinkle Tool 187

Trans Limit X attribute 221, 258,270, 304

Trans Limit Y attribute 221, 258,270, 304

Trans Limit Z attribute 221, 258,270, 304

Transfer option 48

Transform box 328transforming

IK spline handle curve 278Translate attributes 218, 256, 268,

302Translate creation option 463Translate X channel 256, 302

Translate Y channel 256, 302Translate Z channel 256, 302Tricep channel 373

tweak nodes 49tweaking

deformers 49Twist attribute

IK rotate plane handles 258IK spline handles 282IK two bone handles 304

Twist attributesfor wire dropoff locators 179

Twist channel 256, 268, 302

twist deformers 143creating 144deleting 148dependency graph nodes 143editing attributes 147editing channels 146editing deformation effects 145manipulating handles 145MEL commands 143setting creation options 144understanding 143

twist discs 250, 296

twist indicators 252, 297Twist selection 144, 145Twist Type 281

Twist Type attribute 282

Page 486: Maya Character Setup

CHARACTER SETUP

486

INDEX

Twist Type tool setting 281twisting

IK spline handle 276Type tool setting 187

UU attribute 392U Divisions attribute 80

U Divisions channel 79Under Sample 108universal joints 214

Up Vector attribute 400, 433, 443Up Vector constraint option 398,

431, 441up vectors 396, 428, 438Update Weights attribute 323, 340,

341Upper Bound attribute 358

Upper Bound channel 358Upper Dropoff Type attribute 359Upper Dropoff Type channel 358

Upper Value attribute 358Upper Value channel 358upstream nodes 43

Use Component Matrixattribute 324

Use Components attribute 324Use Components channel 323

Vvalue range

Paint Cluster Weights Tool 96Paint Jiggle Weights Tool 101Paint Skin Weights Tool 96

Value SettingPaint Skin Weights Tool 96

Value settingPaint Cluster Weights Tool 96Paint Jiggle Weights Tool 101

Vector Index settingPaint Cluster Weights Tool 97Paint Jiggle Weights Tool 102Paint Skin Weights Tool 97

Vertical slider option 62Visibility channel 256, 302Visibility creation option 463

WWaiting-Blocking node state

option 55, 208, 314Waiting-HasNoEffect node state

option 55, 208, 314Waiting-Normal node state

option 55, 208, 314wave deformers 149

creating 150deleting 154dependency graph nodes 149editing attributes 153editing channels 152editing deformation effects 151manipulating handles 151MEL commands 149setting creation options 150understanding 149

Wave selection 150, 151Wavelength attribute 130, 154

Wavelength channel 129, 153Wavelength creation option 127,

150Weight 106weight (W) of target object

attribute 444, 451weight (W) of target object

channel 442, 450Weight attribute 257, 269, 303, 393

Weight channels 53Weight constraint option 387, 398,

409, 415, 421, 431, 441, 449Weight Holding option 339weight maps

exporting/importing smoothskin 334

weight paintingclusters 93jiggle 99rigid bound skins 97, 361smooth bound skins 327

Weight Threshold attribute 198,199

Weight Threshold channel 198Weight Threshold creation

option 194Weight tool setting 254, 266, 300

weight valuesadding 96, 101flooding 95, 100replacing 96, 101scaling 96, 101selecting 94, 98, 100, 362smoothing 96, 101

weighted average vector 428, 438

Weighted Node attribute 102Width Left channel 371, 373Width Right channel 371, 373

wire deformers 167adding and removingholders 182

adding influence wires 176creating 171creating wires groups 177creating with holders 174creating without holders 173deleting 183dependency graph nodes 171editing attributes 178editing channels 177editing deformation effects 175editing effects of crossedinfluence wires 176

editing shape of influencewires 175

editing wire deformer sets 183limiting wire deformationregion 182

MEL commands 171moving, rotating, and scalingdeformable objects 175

pruning wire deformer sets 183removing influence wires 176resetting influence wires 177smoothing jagged effects 182specifying tool settings 172understanding 170using wire dropoff locators 180

Wire Dropoff Locator selection 180

Wire Locator Twist channels 178Wire selection 183Wire Tool selection 172, 173, 174

World creation option 60World Up Type attribute 400, 433,

443World Up Vector attribute 400,433,

443World Up Vector constraint

option 399, 431, 441world up vectors 397, 429, 439

Page 487: Maya Character Setup

INDEX

CHARACTER SETUP

487

wrap deformers 191adding and removing wrapinfluence objects 200

creating 192creating objects to use as wrapinfluence objects 193

deleting 200dependency graph nodes 192editing attributes 199editing channels 197editing deformation effects 195editing NURBS wrap influenceobject channels 196

editing polygonal wrapinfluence object channels 197

examples 201improving performance 200manipulating wrap influenceobject points 196

moving, rotating, or scalingdeformed object 196

moving, rotating, or scalingwrap influence objects 195

setting creation options 193skinning 201understanding 191

wrap influence objects 192rendering 193

Wrap Samples channel 197

wrinkle deformers 185creating 187deleting 189dependency graph nodes 186editing cluster deformer 189editing deformation effects 188editing wire deformers 189manipulating cluster deformerhandle 188

MEL commands 186moving, rotating, and scalinginfluence wires 189

specifying tool settings 187understanding 185

Wrinkle Tool selection 187, 188

XXY option 331XZ option 331

YYZ option 331

Zzero rotation

IK spline joint orientation 282