blackberry-gaming/GamePlay — pull request #388 by kcunney (2012-05-02 23:51:03+00:00)
Title: Animation Optimization - Reduces the number of calls of transformChanged() during processing of animations.

Fixes #386

Adds the following Public APIs to Transform:
- static void suspendTransformChanged();
- static void resumeTransformChanged();
- static bool isTransformChangedSuspended();
This provides a global mechanism for suspending calls to transformChanged().

Animation Optimization.
Significantly reduces the number of calls to transformChanged() during an AnimationController::update() call.
Calls Transform::suspendTransformChanged() before processing animations. This suspends all calls to transformChanged().
Calls Transform::resumeTransformChanged() after processing animations. This calls all the transformChanged() events after all animations are processed. This reduces the calls to transformChanged() (and on any children) every time there is a change to a Transform's scale, rotation or translation, which would happen quite frequently when animating a character.