Main Class Roles

AnimObject and Derived Classes

AnimObject is a derived class used to identify AnimEvaluator, which plays a single animation, and AnimBlender, which blends multiple animations.

This class abstracts operations such as advancing frames and getting the status of any given frame by evaluating an animation.

AnimEvaluator / TransformAnimEvaluator

This is the classed used with standard methods such as using the result of a single animation.

Use TransformAninEvaluator for bone animations, and AnimEvaluator for everything else.

AnimBlender

This is an abstract class indicating that multiple animation results are to be blended.

It is actually used in conjunction with AnimInterpolator and AnimOverrider. Since the target to be blended does not depend on the evaluator, blended results can also be blended.

AnimInterpolator / TransformAnimInterpolator

This class performs interpolated blending on animation results.

Blending is performed by setting animation objects and weights regarding to which degree that animation object should be used.

Use TransformAninInterpolator for bone animations, and AnimInterpolator for everything else.

AnimOverrider / TransformAnimOverrider

This class performs overwrite blending on animation results.

Use TransformAninOverrider for bone animations, and AnimOverrider for everything else.

AnimGroup

This class abstracts animation targets.

This class controls objects targetted for animation and pointers to target members.

AnimBinding

This class stores animation binding information.

SceneNode includes this instance.
This class links AnimObject and AnimGroup, previously described.

When updating a scene, animations are evaluated based on AnimBinding included in each SceneNode.


CONFIDENTIAL