Edit: Spine is released! Click here for the official site!
I’ve been unemployed and working full time for a few months now on a tool called Spine, which does skeletal animation for games. I do the coding on the project and my friend Shiu does the art. It started because we wanted to make games but didn’t have a way to bring them alive in the ways we wanted.
Shiu is a pro at Softimage so at first we tried to use it to build skeletal animations. We wrote quite a lot of JavaScript Softimage plugins to make setup easier and to export the skeleton and animation data so it can be used in games. The setup was still very difficult. Also, Softimage can do so many things, if you stray at all from the path our plugins support then your animations won’t work once exported. In general the workflow even with plugins to help was not very good.
We of course looked at other tools. We found a handful of tools that could do this type of animation, but usually it was too difficult or impossible to make use of the data outside of the tool. None of them had the streamlined workflow we envisioned. We were particularly inspiried by UBIart, though unfortunately it looks like it will never be released for use outside Ubisoft. We took a close look at Spriter, which at that time had been funded on Kickstarter 4 months prior. Spriter’s alpha release was not usable at all. It crashed often and didn’t have many required features such as skeletal animation (!), separate SRT keys, tweening curves, and a dopesheet. We gave some feedback to Lucid on his forums about what we’d like to see, but ultimately decided that Spriter wasn’t ready and may never have the features we wanted. More recently there is Objecty but it looks to still be in its infancy, needing both funding and time to see what it will become.
Every time I go to write a game I end up writing tools instead (see libgdx, Kryo, and a dozen other OSS projects and unfinished games). Right now I am unemployed by choice, with the dream of becoming successful writing software for myself. I was hesitant to spend my time going off in the weeds and writing another tool. Time will tell if it was a good choice, but I decided to make the tool we envisioned. Part of what sold me on the idea is that it is a commercial project. The idea is to sell the tool and also to use the tool to make our own games.
Selling tools isn’t a great business model because it is a niche market. The mobile game market has some 500M potential buyers and growing, selling to developers is a much, much smaller market. Still, if Spine can make $50k+ then it isn’t a total disaster. If it gets past 6 digits I will be plenty happy, as it will buy enough time to take a serious run at making mobile games.
We have a whole lot of ideas, but have managed to reduce scope enough to reach a milestone version which has all the major features we wanted, start to finish. We are calling this a beta version and it is now ready for you to try out! It is fully functional, except it will not export the skeleton and animation data as JSON or binary for use in your game. You can still save your Spine project, but we need to leave an incentive to purchase the software. If you purchase when we release the full version, then you can open your Spine project and export the data.
We plan on doing a Kickstarter to raise awareness of the software and fund porting the runtime to various gaming libraries. The runtime will most likely be open source to aid integration into games.
Spine is written in libgdx and runs on Windows, Mac, and Linux. Everything is rendered with OpenGL, so looks exactly the same on all platforms. The entire UI is done with scene2d.ui and showcases the power of that GUI toolkit (but then I’m the author of scene2d :P).
Spine can be used to animate just about anything. While we have focused a lot on animating characters and supporting features (eg swapping outfits), Spine can also be used to animate logos, background objects (clouds, trees, etc), GUIs, spapeships, or just about anything you want. A phenomenal example of extensive usage of “cutout” style animation is Rayman. We want you to use Spine to really bring life to your games. Spine also dramatically reduces the art requirement for games because you can squeeze so much out of the same few images.
Congrats on making it through my wall of text, or being a jerk and scrolling past it. Here are the download links as well as a short video to get you started. We are working on a website, better videos, and real documentation.
[url=http://esotericsoftware.com/spine-download/]Spine Downloads
[/url]
A five minute run through of how to create animations in Spine:
Se0nh1JPh8s
A brief overview of a number of Spine features:
2ZOGDhvOxec
You guys are the first to try it out, so I expect there may be some issues at first with the less tested OSes (Mac and Linux).
Feedback is greatly appreciated!