Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

As an animator specializing in Disney-style animation for videos and movies and whatnot, one of the things I've always wondered about is game animations. I'm especially wondering about it now, because I want to make a 2d game. Since, in 3d games, most animations are re-used, there are (I'm guessing) blending systems in place for automatically making simple transfers between animations, greatly lessening the workload for an animator who won't have to make a bunch of short transition animations.

However, I'm looking for a 2d engine that can do the same thing. I know that, since 2d animated objects aren't bone rigged, it would be difficult to produce the sort of technology I'm suggesting. My question nonetheless is, is there a 2d engine that can take animated 2d objects (be they .swf, or .gif, or a sequence of images) and automatically interpolate in between frames for animation frames? if so, is it easy to use?

share|improve this question
1  
There's nothing preventing 2D animations from being rigged and animated like 3D models usually are - In fact, unless you're using pre-rendered sprites, that's what flash animations do... I believe .svg files can be animated in this fashion, although I don't know if it can be changed/blended that way. –  Clockwork-Muse Feb 22 '12 at 20:53
    
Take a look at this: catalinzima.com/2011/06/2d-skeletal-animations –  Benixo Feb 22 '12 at 22:07

2 Answers 2

Since you mentioned .swf, Flash has been able to do it for many years. It's called "shape tween". It allows you to specify content key-frames and it automatically fills any number of in-between frames with interpolated forms.

Sometimes it's ambiguous how the forms merge, so you can optionally add "shape hints". Each shape hint has a corresponding point in each key-frame, allowing you to specify the corresponding parts of the shape before and after transitions.

And because it's Flash, you can import practically any type of image, and exporting the final animation as swf or gif. It's a very manual job, but the process is extremely easy and the animations usually end up looking good.

share|improve this answer

Since CS4, Flash has had the ability to create bone rigs for animation, including support for IK. It's not nearly as fancy as anything in a 3D tool like Maya, but it does provide the basics. And Flash has support shape tweening since it's creation--the bone support just makes things a ton easier to control! Flash also supports animation curves and a few other features you should be used to from 3D animation tools.

The things that Flash does not do that 3D game engines do is handle whole animation networks for more complex animation handling than simply bones and tweening. (see Morpheme or EA's ANT or any number of other game animation network tools) Rather than the game engine simply playing a specific animation, then playing another, etc. the animation networks define the various animation states, and allow much more sophisticated animations through allowing animations to interrupt and blend into other animations, mutliple animations playing merging and playing at the same time, etc. I don't know of any 2D animation tools that do this.

Overall, the 2D animation support in Flash is top notch, and anything missing is easily scriptable with Actionscript. It's probably your best bet for creating game animations, especially if you use Flash as a platform for your game and not just as a content creation tool. If you don't use Flash for your final game, it can still export your animations in a variety of formats, and many professional games out their even use Flash .swf files directly for their UIs, animation and all! (Autodesk's Scaleform)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.