Responsive Characters from Motion Fragments

Alex J. Champandard on August 5, 2007

Siggraph 2007 is underway today. See the previous two articles discussing this year’s innovations character animation technology.

Today’s research project is from the Carnegie Mellon Graphics department, and involves creating responsive characters from motion fragments. There are two main innovative ideas behind this paper:

  • Gathering traces from the gameplay helps model player movement.

  • Using reinforcement learning helps predict future motion transitions.

Combined together, these two ideas help the animation system understand what’s going to happen ahead of time to select better animations, without using too much computation time (e.g. for doing full planning).

Two characters jumping.

View or download the movie (AVI, 151 Mb).

Here’s the abstract:

In game environments, animated character motion must rapidly adapt to changes in player input — for example, if a directional signal from the player’s gamepad is not incorporated into the character’s trajectory immediately, the character may blithely run off a ledge. Traditional schemes for data-driven character animation lack the split-second reactivity required for this direct control; while they can be made to work, motion artifacts will result. We describe an on-line character animation controller that assembles a motion stream from short motion fragments, choosing each fragment based on current player input and the previous fragment.

By adding a simple model of player behavior we are able to improve an existing reinforcement learning method for precalculating good fragment choices. We demonstrate the efficacy of our model by comparing the animation selected by our new controller to that selected by existing methods and to the optimal selection, given knowledge of the entire path. This comparison is performed over real-world data collected from a game prototype. Finally, we provide results indicating that occasional low-quality transitions between motion segments are crucial to high-quality on-line motion generation; this is an important result for others crafting animation systems for directly-controlled characters, as it argues against the common practice of transition thresholding.

Download the paper (PDF, 1.2 Mb):

Responsive Characters from Motion Fragments
McCann, J. and Pollard, N.S.
ACM Transactions on Graphics, Vol 26.

Here’s a quick assessment of how easy it would be to integrate the technology into upcoming games.

Applicability to games: 8/10
The video does a poor job of selling this technology, but the idea of predicting player movement is useful. This should be combined with collision queries (which most games do already) for better looking animations.
Usefulness for character AI: 2/10
The AI typically knows what it wants to do ahead of time, so there’s no need to predict it.
Simplicity to implement: 5/10
Most games have blend-trees and motion graphs already, but understanding reinforcement learning is necessary to model and predict the player’s behavior.
A console user in front of a TV

Interacting with the motion controller in real-time.

Which situations do you think this technology is particularly useful for?

Discussion 1 Comments

gware on August 7th, 2007

As you (and the paper) said most development teams today are using blend trees/graphs to do motion planning. This is very interesting topic in my opinion. This paper adresses, what I consider to be, a major issue of motion planning : reactivity. I think a lot of games which are searching for realistic animations sequencing are using blend tree may face a reactivity problem due to the animation data and the transitions available. This kind of approach can be of a great help when dealing with these issues. I'm quite sure gameplay/animation engines could integrate inputs like quality control and reactivity controls which could be very useful to select animations. My ratings would be : Applicability to games: 6/10 Fragmenting the animations can create various issues : lower quality of transitions, create enormous transition graphs, etc. Usefulness for character AI: 7/10 In some games AI can only be reactive. Although it can plan few motion ahead, I believe animation could still get some benefit from applying some of the ideas described in the paper. Simplicity to implement: 8/10 As is , it may be very difficult to implement in a game engine. But I think that with little modifications this approach can be really easilly integrated to most animation engines which are already using some kind of blend graph.

If you'd like to add a comment or question on this page, simply log-in to the site. You can create an account from the sign-up page if necessary... It takes less than a minute!