Is Spine Essential For Basic Animation

Spine and Spriter are both amazing modular skeletal tools, and i am not sure if either fully integrates yet with Corona SDK - seems to be a lot of data problems still with latest versions and Corona API.
I am creating kids apps and will be using large animal graphics but only animating the parts separately for example: Owl will have separate eye sprites that animate and wings, beak etc. This seems the only way to avoid massive sprites. I am hoping that in Corona SDK i will be able to make use of tweens and use those sub sprites as children of the main parent image.
Can anyone tell me if i’ll run into problems using this method or should i invest in Spine / Spriter?
Thanks

Hi @MisterK,

I suppose it depends on the complexity of your animations. If you need to just do basic animations, like blinking eyes on an larger animal, or flapping wings, you don’t need Spine. For that, you could just use different display objects and groups layered properly in z-index order, and some would be static while others would be animated (sprites).

Spine is more geared toward advanced joint-type character animation, where (for example) the upper arm bone affects the lower arm bone which in turn affects the hand. If you need that type of complex animation, then Spine should be explored further.

Hope this helps,

Brent

Many thanks Brent.
That’s good news for me. Maybe i will still need to invest in Spine for more complex animations in the pipeline. I will probably soon discover limitations for the basic method of animating. 
Can you please tell me if Spine is fully supported in Corona SDK and what’s the score with Spriter also. Seems like a few forum posts suggest bugs and lack of support in the latter tool.

I’m using Spine in my current project and it works just fine with Corona SDK.

I’m doing really cool animations with just math and transitions. No need for Spline.

Glad to hear Spine is working well with Corona SDK @_memo.
@thomas6 sounds like you’re an expert then if you can do that wizardry. Doesn’t Corona have some nice easing functions anyway?
I am looking at Spine as its better supported on Corona but the Essentials license doesn’t allow Inverse Kinematics whereas Spriter Pro - costing about the same - does, but doesn’t seem that well supported on here yet.

I’m far from an expert, but as with all things you start out with something simple like linking the rotation of an object to a sine wave, like this for example:

arm.rotation = 50 \* math.sin(event.time/200)

If you do this in an enterFrame function, you get a nice swinging motion. Next step is adding a second image in a displayGroup to create something like an upper leg and lower leg, and before you know it you have a run cycle that is superfluid and organic.

When you see the end result it looks complex, but it’s like building with lego!

Corona is really bad for regular animation, other than from setting a to setting b . There are no “keyframes”. In obj C you can set up a trajectory of points which the path needs to cross. In corona you need to set up every single position, which leads up to very big tables, and a pain if you want to make a small adjustment in your path.
Or you need to start using a lot of math, but that doesn’t always work for irregular paths.
 

I always laugh at corona’s ads where they say you need less code then other languages. I did some fairly complex animations in Obj C, which took only a few lines of Code, had interpolation etc. In Corona I didn’t even try cause of the amount of code it would have taken.
You need to set up timers etc, just a lot of access work where in obj C it would just be a few lines.

Spine helps in keeping filesize small, compared to spritesheets. You would need a lot of spritesheets for some complex animations, or if you have big characters that fill the screen it would need really big sprite sheets if you have a lot of different sprites in the sheet.

Spine can have one instance of it all. And is a lot more versatile.

Alternatives are spriter, which looks and acts a lot slicker, but doesn’t support Corona out of the box.
 

Thanks for the info @Juf Jannie. I will definitely invest in Spine when i am finalizing my app animations. I was going to purchase Spriter, but sadly their pricing is now on a par with Spine and it’s not as well supported in Corona as Spine, as you have stated. However Spine only offers IK in the expensive Pro £289 version while Spriter does offer it in theirs. 
Oh the hoops us developers have to jump through :stuck_out_tongue:
 

There is some code out there that supports corona for spriter. It is int heir forum somewhere. 
I have idea about the costs. I bought both as a kickstart backer the moment they were announced. I paid 30$ for Spine So I m happy.

If you use spine try the spine helper that is here somewhere in this forum It makes using spine a tad easier if you want to use spritesheets.

Hi @MisterK,

I suppose it depends on the complexity of your animations. If you need to just do basic animations, like blinking eyes on an larger animal, or flapping wings, you don’t need Spine. For that, you could just use different display objects and groups layered properly in z-index order, and some would be static while others would be animated (sprites).

Spine is more geared toward advanced joint-type character animation, where (for example) the upper arm bone affects the lower arm bone which in turn affects the hand. If you need that type of complex animation, then Spine should be explored further.

Hope this helps,

Brent

Many thanks Brent.
That’s good news for me. Maybe i will still need to invest in Spine for more complex animations in the pipeline. I will probably soon discover limitations for the basic method of animating. 
Can you please tell me if Spine is fully supported in Corona SDK and what’s the score with Spriter also. Seems like a few forum posts suggest bugs and lack of support in the latter tool.

I’m using Spine in my current project and it works just fine with Corona SDK.

I’m doing really cool animations with just math and transitions. No need for Spline.

Glad to hear Spine is working well with Corona SDK @_memo.
@thomas6 sounds like you’re an expert then if you can do that wizardry. Doesn’t Corona have some nice easing functions anyway?
I am looking at Spine as its better supported on Corona but the Essentials license doesn’t allow Inverse Kinematics whereas Spriter Pro - costing about the same - does, but doesn’t seem that well supported on here yet.

I’m far from an expert, but as with all things you start out with something simple like linking the rotation of an object to a sine wave, like this for example:

arm.rotation = 50 \* math.sin(event.time/200)

If you do this in an enterFrame function, you get a nice swinging motion. Next step is adding a second image in a displayGroup to create something like an upper leg and lower leg, and before you know it you have a run cycle that is superfluid and organic.

When you see the end result it looks complex, but it’s like building with lego!

Corona is really bad for regular animation, other than from setting a to setting b . There are no “keyframes”. In obj C you can set up a trajectory of points which the path needs to cross. In corona you need to set up every single position, which leads up to very big tables, and a pain if you want to make a small adjustment in your path.
Or you need to start using a lot of math, but that doesn’t always work for irregular paths.
 

I always laugh at corona’s ads where they say you need less code then other languages. I did some fairly complex animations in Obj C, which took only a few lines of Code, had interpolation etc. In Corona I didn’t even try cause of the amount of code it would have taken.
You need to set up timers etc, just a lot of access work where in obj C it would just be a few lines.

Spine helps in keeping filesize small, compared to spritesheets. You would need a lot of spritesheets for some complex animations, or if you have big characters that fill the screen it would need really big sprite sheets if you have a lot of different sprites in the sheet.

Spine can have one instance of it all. And is a lot more versatile.

Alternatives are spriter, which looks and acts a lot slicker, but doesn’t support Corona out of the box.
 

Thanks for the info @Juf Jannie. I will definitely invest in Spine when i am finalizing my app animations. I was going to purchase Spriter, but sadly their pricing is now on a par with Spine and it’s not as well supported in Corona as Spine, as you have stated. However Spine only offers IK in the expensive Pro £289 version while Spriter does offer it in theirs. 
Oh the hoops us developers have to jump through :stuck_out_tongue:
 

There is some code out there that supports corona for spriter. It is int heir forum somewhere. 
I have idea about the costs. I bought both as a kickstart backer the moment they were announced. I paid 30$ for Spine So I m happy.

If you use spine try the spine helper that is here somewhere in this forum It makes using spine a tad easier if you want to use spritesheets.