You are previewing Rigging for Games.
O'Reilly logo
Rigging for Games

Book Description

Rigging for Games: A Primer for Technical Artists Using Maya and Python is not just another step-by-step manual of loosely related tutorials. Using characters from the video game Tin, it takes you through the real-world creative and technical process of rigging characters for video games and cinematics, allowing readers a complete inside look at a single project.

You’ll explore new ways to write scripts and create modular rigs using Maya and Python, and automate and speed up the rigging process in your creative pipeline. Finally, you’ll learn the most efficient ways of exporting your rigs into the popular game engine Unity. This is the practical, start-to-finish rigging primer you’ve been waiting for!

  • Enhance your skillset by learning how to efficiently rig characters using techniques applicable to both games and cinematics
  • Keep up with all the action with behind-the-scenes images and code scripts
  • Refine your rigging skills with tutorials and project files available on the companion website

Table of Contents

  1. Cover
  2. Title
  3. Copyright
  4. Contents
  5. Acknowledgments
  6. Introduction
  7. Chapter 1: The Creative Cycle
    1. From Page to Screen
    2. Where Do Ideas Come From?
    3. The Production Cycle
    4. Pre-Production
      1. Step 1: Planning the Story / Game Outline
      2. Step 2: The Script / Game Design Document
      3. Step 3: Concept Art
      4. Step 4: Storyboards
        1. Planning the Storyboard Scenes
        2. Color Scripts
      5. Step 5: Asset Lists
      6. Step 6: Asset Management and Organization
      7. Step 7: Animatic / First Playable Prototype
    5. Production
      1. Modeling
      2. Surfacing
      3. Rigging
      4. Animation
    6. Post-Production
  8. Chapter 2: Concept Art and Modeling
    1. Concept Art
      1. References
      2. Character Sheets
    2. 3D Modeling
      1. Output Medium
      2. Level of Detail and Topology
      3. Square Is Good—Polygon Types to Use and Avoid
      4. Alternatives to Mesh Density
      5. Sculpting Pitfalls
      6. UV Maps
      7. File Referencing
  9. Chapter 3: Rigging Concepts
    1. An Overview of Rigging
    2. The Basics
      1. Nodes and Connections
      2. Parenting
      3. Constraints
      4. Direct Connections
      5. Deformers
      6. Joints
      7. Joint Orientation
      8. Kinematics
      9. Attaching Meshes to Joints
      10. Smooth Binding
      11. Rigid Binding
    3. Introduction to Scripting
      1. Scripting in Maya
    4. MEL
      1. The Script Editor
      2. MEL 101
      3. Anatomy of a Script
      4. Saving the Script
    5. Python
      1. Our First Python Script—tgpGears
      2. Creating the GUI
      3. Querying the GUI Values
      4. Creating the Gears
      5. String Formatting in Python
  10. Chapter 4: Scripting Mechanics
    1. Engineering the Fantastic
    2. Python’s Object-Oriented Programming
      1. Classes in Python
    3. Building a GUI Framework
      1. Defining the UI Class
      2. Adding Button Functionality
    4. Creating tgpMechanix
      1. Referencing the UI Class
      2. Error Checks
      3. Creating a Utility Section
      4. The Connectors
      5. Making the Spring
      6. Assign Functionality to the Buttons
      7. Making the Piston
    5. And Now for a Lite Version of the GUI Framework …
  11. Chapter 5: Rigging Mechanoids
    1. Rigging Meep
    2. Rigging Pre-Flight
      1. Sketching Out the Rig
      2. Which Rig? Bind vs. Control
      3. Analyzing the Rig Behavior
    3. Rigging the Legs
      1. Placing the Leg Joints
      2. IK/FK Leg Setup
      3. Setting Up the Switch
      4. Creating FK Leg Controls
      5. Scripting tgpControlOrient
      6. Stretchy FK Joints
      7. Creating IK Leg Controls
      8. Knee Controls
      9. Stretchy IK Joints
      10. The Condition Node
      11. Going the Distance
    4. Setting Up the Wings
    5. Neck
    6. Building the Head
    7. Putting Together the Body
    8. Finishing Touches
      1. Global Scale
  12. Chapter 6: Rigging Humanoids
    1. Rigging Leaf
    2. Analyzing the Bind Skeleton
      1. To T-Pose or not to T-Pose?
      2. Human IK Overview
    3. Creating the Bind Skeleton
      1. Rotate Order
      2. Scripting tgpRotateOrder
      3. Binding Leaf’s Mesh to the Skeleton
      4. Smooth Bind Overview
      5. Weight Assignment and Painting
  13. Chapter 7: The Control Rig
    1. The Control Rig
      1. snapAB Script
      2. Building the IK Leg
    2. Automating the Limb Creation—the Limb Class
      1. Using a Dictionary
      2. Coding tgpLimb
    3. Building the Spine
      1. Hips, Shoulders …
      2. Stretching the Spine
      3. The Neck and Head
    4. Building the Arms
      1. Setting Up the Clavicles
      2. Driven Keys
    5. After You! No, After You—Polite Space Switching
      1. Space Switching Using Parent Constraints
    6. IK/FK Redux
      1. Snappy Logic Part 1—FK to IK
      2. Snappy Logic Part 2—IK to FK (with a dash of pole vector magic)
    7. Finalizing the Rig
      1. Adding Global Scale to the Rig
      2. Cleaning Up the Channels
      3. And …?
  14. Chapter 8: Game On!
    1. Exporting to Unity
    2. Animating for Games
    3. Prepping the Rig in Maya
    4. Methods of Exporting Animation from Maya to Unity
    5. Baking the Animation Keys
    6. Exporting to the FBX Format
    7. Importing Animation Files in Unity
    8. Blending the Animation Cycles
  15. Epilogue
  16. Appendix
  17. Index