For the last month, I've been trying out Spine, a 2d animation software for Windows, Mac and Linux, developed by Esoteric Software. Spine is mostly targeted to people doing 2d video games, but you can use it for pretty much any kind of 2d animated work, be it movies, presentations, web animations and things like that.
If you've used any 2d animation software like Anime Studio, Spine will feel very familiar. Basically, you import your character as separate layers, add bones to it and then start animating.
One of the interesting features in Spine is the ability to add attachments used to swap different objects. For example, imagine your character has different types of guns. You can swap between the different guns, without affecting the animation.
Another cool feature in Spine, is being able to export the animation sequences directly to your game engine. Usually, what you'd need to do is export your animation as a series of frames, and then build an animation out of those frames inside your application. Spine can export your animated sequence as a JSON file containing all the data. When you import that file into your engine, the animation will be created automatically. This is a very cool feature, because it saves you from the work of re-creating the animation from separate frames.
There are a few things about Spine that are aimed to save you time. For example, there's a Photoshop script that exports all the layers in place, so when you import it in Spine, the character is automatically assembled with all the objects and layers in the right order. Layer placement in Spine (or any other 2d animation software) is crucial, as you can imagine, so it is nice when the software helps you with that. The case about using JSON to export animations to your engine is also a good example.
Squash and Stretch
Spine also allows for squash and stretch deformations during animations. You can add a lattice deformer to your object. Basically what this does is adding a deformable grid on top of your object, and you can animate those points to deform that object. Squash and stretch is not the only thing that could be done with this deformer, though. You can use it to animate parts of your character, for example, animating hair strands, parts of clothing, etc., which are small details that can take your animation to the next level.
Besides exporting to JSON, Spine can export to different formats, including .JPG, PNG and movie files, so you can pick the format that better suits your needs, based on the work you're doing.
As you may know, I am more of a 3d games developer, but right now, we're working on a 2d sidescroller game, and we are thinking on using Spine for all of our animations (we're using GameMaker, but you can also use Unity). If you want to take Spine for a spin, you can download a trial version. The trial version includes project files and their exported JSON data, so you can test that data inside your engine of choice and see if it fits your needs. Spine is pretty similar to other 2d animation packages, since it offers a bone-based workflow. However, the way how Spine works with other engines makes it an interesting application, because it is designed to save you work and do what you need quickly.
Sergio Aris Rosa [nemirc], is Sr. Staff Writer for the Renderosity Front Page News. Sergio discusses on computer graphics software, animation techniques, and technology. He also hosts interviews with professionals in the animation and cinematography fields. You can follow him on Twitter, and if you want to see what he's up to you can visit his blog.