2D Skeletal Animation and Character Editor
I created the character and animation editor for my sophomore game, Crimson Legend. Our goal was to create a 2D fighting game that did not require us to draw each individual frame of animation. We decided to design a 2D skeletal animation system, similar to what is done in 3D animation and modeling package such as Maya, but in 2D. Using this system each character is represented as a tree of body parts, and animations are only composed of a few keyframes which are interpolated automatically by the system to form smooth, complete, animations. The custom-made editor allowed us to create all the characters and objects, as well as the hundreds of associated animations for the game.
To the left is a video of the character building process. Each body part is an individual bitmap, and the characters are put together similar to dolls; that is, every part has a few joints where it fastens on to other parts.
To the right is a video showing the creation of an animation. The user moves the body parts around then selects a menu item to create a new keyframe. This process is repeated until the animation is complete. The user can then play the animation to see the results. Of course each keyframe and associated time can later be refined.
A side effect of our system is that if we need to interupt an animation in progress we can interpolate from the current pose into the next animation. For example, a punch animation can be smoothly interpolated into a getting hit animation, or jump can be turned into a dash. Below is an example of this in game.