A naive attempt at a spine clone.

Been working on this for a long time. It started small, but I just kept feeling compelled to add more and more. Humble though it may be, it’s easily the biggest project I’ve ever completed. I actually have very little experience with animation, spine or otherwise, so it’s probably riddled with terrible design choices. I hope you’ll take a look and let me know what you do or do not like about it.

If anyone does think that this may be adequate to your needs, I’m perfectly happy for you to use it to make animations for your apps and games. However, I must acknowledge that I am very much a lightweight, so you do so at your own risk.

Anyway, here’s the project, along with a small demo. I know the aiming is a little off in the demo. If anyone can figure it out, please do enlighten me.

animate.zip (162.1 KB)
animate demo.zip (190.4 KB)

6 Likes

I just tried running your demo and it’s pretty cool what you’ve done man! We use many of our own scripts for things like particle emitters, timers, UI and much more to suit our programming style and requirements and it’s always nice to see people working on such features that enhance the engine’s functionality. I for one would love to try using your animation system should you ever make a plugin for this with some documentation and will be only too happy to support a community developer over Spine :slight_smile:

Just tried the demo and it works great. I love it.

How do you create the character file? The json file with all the positions? Is it spine compatible?

Thanks for the feedback. I’ve never made any plugins before, but I’ll keep an open mind about it. Do you mean a plugin just for running animations, or for incorporating the whole project into another app?

No, it’s not spine compatible. I did have a look at the spine runtime at one point, but it was just too much for me. I took a much more pared-down approach anyway. Whereas with spine you can keyframe everything individually, I basically keyframe everything all together. This way has it’s down sides, obviously, but it made things simpler for me.

So do I manually create the file with all the coordinates?

No, you just go to File -> export, and it places the file where you want it.
It works on Windows. I don’t know about Mac.

Basically an API with simple documentation that allows users to access the core functionality of your system which they incorporate into their projects as a downloadable plugin. Native support for skeletal animation is not present in Solar and Spine, from what I know, was also added in by community users and the documentation is quite sparse after the corona->solar2d transition.

A lot of the time users just need very basic features and our team therefore never bothered with Spine and we use sprites for all purposes and make animations separately with DragonBone. A quick and easy way to design some simply skeletal animations with a plugin will be great!

Scott and some other users now host their own plugin stores where you could perhaps consider hosting your plugin as a one-off payment or subscription, shoudl you ever decide to develop this into a plugin. All the best :slight_smile:

@hasty I just figured it out. I was just looking at the demo but your other project has an app to create the animation. I really like it. I am going to try it on my next project. If you put it up anywhere for money let me know.

One last thing. If I build the app and run it as an app (I have no interest to run it in debug or look at your code. If it works it is good enough for me.), there is no way to quit the app. I have to force quit. I might have missed it. Thank you again.

I’ve been using it almost exclusively in the simulator and rather foolishly didn’t put much attention into the build except for making a quick project and exporting it. I didn’t run into any problems and assumed things were fine. It’s strange, the minimize/maximize/close buttons were all there for me, but after I messed around with build.settings, trying to get things right, I found that it kept going fullscreen, with those buttons missing. Even setting window default to normal (as opposed to fullscreen) and setting small maximum width and height values, it kept going fullscreen. Worse, after I put the settings back as I had them originally, I could still no longer see the minimize/maximize/close buttons. Very strange. If you download again, I’ve added a close button until I can figure it out.