This site houses some materials related to my GDC
2005 talk titled: Moving Beyond Ragdolls: Generating Versatile
Human Behaviors by Combining Motion Capture and Controlled Physical
You can find links to the slides, my thesis materials, and the source
code to a simplified version of the demo presented during the talk.
The main idea of the talk is to look at techniques to improve the
quality of simulated humans by augmenting ragdolls with control systems
as well as techniques to interface these simulated behaviors with
existing motion data.
Here's the abstract for the talk:
This talk looks at how developers can create new kinds of animation
systems capable of moving from existing motion data to controlled
physical simulation and back. Games create compelling characters
through imaginative designers combined with skillful artists
or a talented actor in a motion capture studio. However, virtual
characters often look unrealistic when interacting with living
and dynamic environments because the artist’s keyframes or the
actor’s movements predetermine the character’s abilities. “Ragdolls”
have recently been used to model the physics of the body as
it collides with the environment and other characters. Unfortunately,
their usefulness is limited because the ragdoll appears lifeless
without control systems to produce realistic behavior. Returning
character control to prerecorded motion is also difficult because
the final pose of the ragdoll is not known beforehand. This
lecture discusses how the strengths of motion capture data and
physically controlled behaviors can be combined. Hybrid animation
systems using this approach can transition from motion data
to simulation and back so that each method may be used in the
appropriate context. Physical controllers are developed using
techniques from biomechanics and robotics literature to infuse
life into simulated motion. The proportional derivative controllers
may be artist directed and can guide simulated characters to
realistic behaviors while retaining their physical realism.
These controllers also allow the simulation to move back towards
motion data in a natural way. Fast search techniques build a
correspondence between simulated postures and large motion databases.
This session should provide developers with practical implementation
details, proper high-level concepts, and resources to learn
more about this emerging approach to animation. Such an approach
can drive the future of modern animation systems to empower
game developers to deploy characters that can move and respond
to the living world of their imaginations.
Attendees will understand the advantages of combining both
simulation and traditional motion data for character animation.
The complementary strengths and weaknesses of these approaches
motivate the need for an effective hybrid system that can
utilize either technique interchangeably. Attendees learn
how to move beyond ragdolls to add believable life into simulated
character animation with the added ability to move back to
motion data. State-of-the-art techniques from the research
community are presented in the context of games so developers
can understand how to integrate physically simulated behavior
into their existing pipelines. Practical implementation tips
and references give attendees the resources to get started
Intended Audience and Prerequisites:
This talk is mostly intended for programmers with at least
some high-level familiarity with skeletal animation systems
and ragdoll simulation. Each topic covered will review fundamentals
so beginners should be able to follow most of the talk and
have the resources to begin implementing the presented techniques.
In addition, game designers may wish to attend to understand
the high-level concepts and how the technology presented can
be used to create new gameplay experiences.
The slides presented at GDC are available in PDF form here: GDC Slides [PDF]
Controller Demo Source
This is the release of a simplied version of the PD Controller demo
shown in my GDC 2005 talk (released under the LGPL). The demo basically
sets up a ragdoll character using ODE
and demonstrates how a control system can be used to drive the motion
of the body. You can download it here.
A description of the demo from the Readme: An OpenGL implementation of a PD controller based pose controller.
The freely available Open Dynamics Engine (ODE) is used to perform
the rigid body simulation of the human figure. When the example
controller is enabled, the target joint angles are set to 0, pushing
the body into the base pose with the arms and legs extended (through
joint torques computed by the controller). There is also an option
to apply forces to the pelvis to see that the body still responds
to the physical world while being controlled.
A more full-featured demo (which was actually shown in my talk)
and detailed description of the algorithms used is available in
Programming Gems 5.
Please feel free to contact me by email
with any questions/comments.