Sorry internets, its been a while bit since our last post because we have been
fighting with a dragon. In the AS3 world there is a fantastic library called
Dragon Bones. What is Dragon Bones?
It has been billed as the open source 2D skeleton animation solution for
Flash. The problem Dragon Bones solves is that character animations take up a
lot of texture space, so instead of having giant sprite sheets for sequence
frame based animation, the skeleton animation can help you save lots of
resources and memory consumption. Here is a quick intro video the Dragon Bones
team put together.
http://www.youtube.com/watch?v=1HiC2QDbyK0Now there are a lot of great tools that solve the same problem as Dragon
Bones, some of the more well known solutions include
Spriter,
Spine, and
Animo Spriteloq.
The BIG problem we ran into while searching for a solution for our game is that
currently NONE of the products support Loom SDK. Our only option was to port
one of the products over to LoomScript. Spine and Dragon Bones both have AS3
version, which by far is the path of least resistance, considering LoomScript
is so similar to AS3. Ultimately, we selected Dragon Bones because of its
workflow. Our team has years of experience animating in Flash and Dragon Bones
allows you to remain in Flash to setup your skeletons and export animation
data and sprite sheets once your key frames are set. In the long run, that
workflow will be the most efficient for our team since it takes advantage of
our experience and speed using Flash and has almost zero learning curve.
As I mentioned before, LoomScript is very similar to AS3, however, LoomScript
IS NOT ActionScript 3 no matter how much it resembles it. We discovered this
the hard way through hours and hours of debugging. Honestly, its painful to
think back on considering all the time spend scratching our heads and banging
them against our desks. We discovered several small, hidden differences
between LoomScript and AS3 that people should be aware of. The most notable
one is that the 'int' class truly isn't an integer and doesn't yield the same
results as AS3.
Details can be found here. There also seems
to be issues with matrixes and pivot points being wiped out. Ultimately these
differences aren't a big deal to correct in code, but they turned into a big
deal for us since these differences were not documented anywhere.
Porting Dragon Bones ended up being a bumpy but necessary detour along the
road of Little Hitler's development. We've made it back to the main road and
we're excited to start making up some lost time. But, before I head out, I
wanted to share this....
We are very happy to announce and share with you a working version of
Dragon Bones for LoomScript.
Being able to say that has made the last week and a half worth it.