Sunday, May 15, 2005

Levels of Models in Character Animation

In essence, computer-generated character animation is attempting to mimic the actions and behaviors, down to the nuances, that real, live humans have. So to improve the resulting animation, we need to look hard at the various models we use to see where improvement can be made.

In PF's doctoral work, he uses a SVM to choose, at run-time, a low-level, specialized controller from a pool of available controllers. Each of these controllers is effectively a small program that can look at inputs and actuate motors. The SVM is acting to choose among zombies.

Some possible levels to consider:
- Neuron. Spike vs. CT, etc.
- Neural Network. Learning, construction, evolution, by-hand design.
- Geometrical. The shape and length of limbs, angles of rotation.
- Physical. Mass distribution.
- Actuator. Strength of muscles, location of action. PIDs vs. complex muscle-tendon-ligament.
- Joints.  Ball-and-socket and hinge vs. complex, multi-boned configurations. 
 
An evolutionary approach seems like a good match with making joint models more complex, since it would increase realism without too high (or perhaps any) cost in larger state space.  Probably the initial candidates would be the hip and lower spine-- the swagger/butt swing is a big part of the apparent realism of a walk.

No comments: