|
|
Intelligent Agents Inside the Computer:
Physics-based Character Animation
By Marlys Amundson
Imagine a virtual actor able to move as naturally as a person, with an almost unlimited range of motion - one governed only by the laws of physics that control our own motion. Such an actor could be used to perform dangerous stunts in movies and television shows, reducing the risk to live actors.
Researchers developing physics-based animation systems are constructing dynamic, anthropomorphic figures governed by gravity and other natural forces. It is a challenging problem, and one that, for the most part, has been addressed by individual, unconnected researchers thus far.
Petros Faloutsos, a computer science professor at UCLA, and his research partner Victor Ng at Honda R&D in California have developed a software system that simulates the physics of an animated character and computes the forces affecting it.
Dynamic Animation and Control Environment (DANCE) - an open, object-oriented software package for physics-based character animation - provides a common platform for researchers to test their control methods and share results with others. DANCE allows programmers to create new controllers and physical models using data from biomechanics, robotics, control, or animation, which can be easily integrated into a common simulation environment.
The complexity of the actions governed by controllers ranges from relatively simple motions such as balancing when standing to more complicated movements such as plunging down a flight of stairs.
"There are two traditional types of animation," notes Faloutsos. "The kinematic model relies on positioning and motion-capture to determine movements. All of the animation is prescribed, and it is difficult to manipulate it and adapt it to slightly different environments and interactive settings. For instance, if you have created a running figure, it is a time-consuming and complicated process to have it reach out to pick up an object while running."
With robotics - physics-based animation - a figure's motion is the result of applied forces, both internal (muscles) and external (gravity). Faloutsos has developed a method to easily combine controllers within DANCE, allowing the character to perform sequences of tasks autonomously.
Using DANCE and a series of basic controllers he and his team developed, Faloutsos has created a fully-articulated skeleton able to pick itself up off the ground, sit in a chair and stand back up, and throw itself down a flight of steps, among other actions. Although they are initially focusing on a set of simple actions, their long-term goal is to create dynamic human characters with broadly integrated action repertoires.
Eventually, Faloutsos hopes their animation system will be able to substitute for human stuntmen in dangerous scenes. "We're creating tools that will help people. Our virtual stuntmen won't be able to replace people in all scenarios, but we're hoping they will eventually be used to perform many stunts more safely and less expensively."
Their system also has tremendous potential to improve gaming systems, offering players a greater range of realistic character movements, as the figures' motions would not be constrained by the number and type of pre-set movements programmed into the game.
"We also have developed a control framework that operates within DANCE that decides which controller should be active in order to achieve a desired action or result," explains Faloutsos. Their "supervisor controller" regulates which controller is active by querying each of the controllers to determine which is best able to move the dynamic figure from its current state to the desired goal.
Each of the controllers is governed by a set of pre-conditions determined by parameters such as its initial state, environment, and balance. The post-conditions are determined by similar constraints when the desired state is reached, and the controller's expected performance criteria are able to detect failure while operating.
For example, a controller for walking may be able to move the figure from one area to another, but if the character trips on an unexpected object, the controller would no longer be operating successfully and the supervisor controller would need to activate the controller for balancing or for recovery from a fall.
By explicitly outlining the pre-conditions that govern the controllers, and the type of information each can provide to the supervisor controller, Faloutsos' system allows the community of researchers tackling character animation to more easily exchange motor controllers and integrate these actions to create a greater range of motion for their animated characters. The simplicity of the response system allows the design of an individual controller to be as simple or complex as the developer would like to make it.
Faloutsos and his research team have developed a series of controllers that are aware of their limits and what they can do successfully, allowing the controller to act if it can complete a task successfully or yield to another controller if it cannot. The transitions between the controllers are not explicitly modeled in the software system, but occur in response to the motion of the character over time.
"The pre-conditions of the controllers were modeled using classifiers based on support vector machines," notes Faloutsos. "To prevent the controllers from being overwhelmed by the size of the multi-dimensional space, the pre-conditions include a number of common sense conditions - for instance, if the character is walking it should be upright, not on its back."
Initially, Faloutsos and his research group have opted to demonstrate their work using fully-articulated skeletons rather than fully-fleshed characters to focus attention on the movement of the character rather than on facial expressions and muscle movement. As the system evolves, they plan to extend their work to a fully-fleshed model.
For additional information on Faloutsos' research and DANCE, please visit http://www.cs.ucla.edu/~pfal/ and http://www.cs.ucla.edu/~pfal/magix/projects/dance/.
Images appear courtesy of Petros Faloutsos.
|
|