Character Animation Problem

I am developing a character animation engine so that our animators will be able to animate characters on the timeline more easily. The animators have to be able to animate parts of the characters by hand on the timeline, but also need to be able to place simple animation calls on the timeline to move the model programmatically.

Each articulated “joint” of the character model is a separate MovieClip which often contains other MovieClips. This makes it easy for the animators to build their own models in a hierarchy (the shoulder joint moves the entire arm, the elbow joint moves the lower arm and hand, the wrist joint moves the hand, etc).

It’s working fairly well, except that I’m not able to control the initial position of the character. Because the character appears in the first frame of the timeline, it always appears on the screen for a moment in whatever position is stored in the first frame of each of its MovieClips before the animation engine takes control. I could potentially have the character not appear in the timeline until a later frame, but then I believe I’ll run into the same problem if the animators want the character to appear in a new scene (in which case it would HAVE to appear in the first frame in order to avoid the character from disappearing from the screen between scenes).

I think the key may be to use stage.invalidate() and Event.RENDER, but that doesn’t seem to have any effect (it’s possible I’m doing something wrong though). Part of the problem is that my character engine has to read an XML file at the beginning before it can start animating (the XML file describes the structure of the model). That means that I have to delay the drawing of the stage for the first time until after I receive an event that the XML file is done reading.

Is there any way to do this, or am I out of luck?

-Bri