Retargetting Motion to New Characters
Michael Gleicher
Presented By: Ying-Huey Fua
Course: CS563 (24 Feb 1999)

Previous Work
Motion Representation
Inverse Kinematics vs Space-Time Constraints
Outline of Retargetting Algorithm

[Return to cs563 '99 talk list]


This paper addresses the problem of how to reuse motion by adapting existing ones to new circumstances, that is, how motion is reused by "retargetting" one that is good for one character to another character.

Retargetting motion to new characters is a new technique for adapting an animated motion from one character onto another similar but different character. That is, the new character must have an identical structure but may have different segment lengths.  And structure refers to the connectivity of limbs, the types of joints and the number of degrees of freedom.

Moreover, the adaptation is independent of how the motion was created. For instance, the motion could have been recorded, physically simulated or manually keyframed by a 3D artist.

In the course of adaptation, they want to preserve as many desirable aspects of the original motion as possible. For instance, in a walking motion, the walking style should be preserved and recognizable in the adapted motion.

The adaptation must also satisfy motion constraints. For example, it is important that the feet touched the ground at each step in a walking motion or the hands holding onto the ladder while climbing. These constraints are identified as geometric constraints in the paper.


Existing motion are only applicable to the character they are created for, hence other similar characters cannot easily reuse these motions. Currently, there is no easy way out, except to have the animator manually tweak the motion in each keyframe.

Previous Work

Manual Tweaking.

This is perhaps the most primitive method and no doubt the most laborious process.  Moreover, there is no guarantee that the end result would resemble the original motion.

Re-generate the motions.


In re-generation of motions, the parameters of the physical simulation are adjusted to adapt a controller for use with the new character. However, this risks losing qualities of the original motion.
Treat motion as time-varying signals and apply signal processing techniques to these signals.

Some references:

The technique described in this paper falls under this category.

Motion Representation

What is a configuration?

A configuration of a character is an N-dimensional vector where n is the number degrees of freedom of the character. The number of degrees of freedom is obtained by enumerating all the possible joint actions in the body. For example, the elbow has 1 degree of freedom, the ankle has 2 and the shoulder has 3.

The root of the hierarchy often located at the hips, has 3 translational degrees of freedom, and this translational degrees of freedom serves to move the figure in space.

By collecting all the translational and rotational degrees of freedom into one vector, we obtain the configuration of the figure.

What is a motion?

When the configuration is a time-varying function, we obtain a motion denoted by m(t).

Mathematically, motion retargetting can be formulated as follows:

m(t) = m0(t) + d(t)
where m is the adapted motion, m0 is the original motion and d is the displacement vector that when added to the original motion results in the desired targetted motion.

In this technique, motion is represented as cubic B-splines with uniformly spaced control points. The advantage of B-splines are that they are inherently smooth, hence the amount of high frequencies is limited by the representation itself.

Inverse Kinematics vs Space-Time Constraints

The basic features that must be present in the adapted motion are identified as constraints. And there are two basic techniques to preserve these constraints:

  1. Inverse Kinematics (IK)
  2. Space-Time Constraints
Inverse Kinematics (IK) Space-time Constraints
A common technique for positioning end effectors of an articulated figure in individual frames of an animation A technique that solves for a character's motion by subjecting the motion to a set of constraints over the entire time interval of interest. The desired motion is expressed as objective function to be minimized subject to the given constraints. 
  •  Does not consider the motion as a whole
  •  Result in undesirable artifacts, e.g. jerkiness
  •  No frame-to-frame consistency
Advantage over IK: 
  • Poses a large problem over a duration of motion, rather than individual frame.
  • Able to look-ahead or behind in the optimal motion.
  • In this technique, only geometric constraints are considered, physical laws of motion are ignored. Hence, the result may no longer be physically plausible, even when all constraints are satisfied.


    Outline of Retargetting Algorithm

    Step 1:

    Begin with an initial motion with identified constraints.
    These constraints can either come from:

       restrictions on the character, such as elbows do not bend backwards.

       the environment, such as nothing should be below the floor.

       the motion, such as the character must pick up the box in frame 30.

    Note: In this technique, they only dealt with equality constraints.
    Step 2:
    Find an initial estimate m1(t) of the solution.
      scale translational parameters.

      add translation to define the center of scaling.

    Step 3:

    Choose a representation for the motion-displacement curve.

      represent the motion-displacement as cubic B-splines with uniformly spaced control points.
    Step 4:
      Solve the non-linear constraint problem for a displacement that when added to step(2)  provides motion that satisfies the constraints.
                        Final Form of the equation:
                            minimize 0.5 * xT * x subject to f(x) = C,
                            where f is a function of x, the control points,  and
                            C is a column vector of size equal to the total number of constraints.
    Solve the above equation iteratively using a Sequential Quadratic Programming (SQP) solver.


    This paper presented an approach to retargetting motions from one character to another by posing the problem of computing an adaptation as a constrained optimization problem.

    They used geometric constraints, simple objective functions and frequency limitations to realise their approach.


    Possible Enhancements:



    The material of this report is obtained from the following paper:

    Retargetting Motion to New Characters. M. Gleicher. SIGGRAPH Proceedings '98, pp. 33-42.