INTRO TO SKELETAL ANIMATIONS
Saeed here with our 4 official blog post! This post has been a long time coming. With all of the exciting work going on and work left to do, blogging can quickly fall by the wayside. For that, we, the Nimble Point team, apologize.
I’m the team’s technical artist. It’s my job to make our animator’s art and programming come together in wonderful ways. Due to the vast nature of this topic it’s easy for me to get sidetracked so I will try to stay focus on the basics of the process.
We use an external application called Spine which is a 2D skeletal animation tool by Esoteric Software designed specifically for use in 2D games. Spine is fast and fluid. Its interface is easy and intuitive. It allows for easy swapping of images per bone as well a keyable draw order. Multiple skins allow us to create an even wider variety of enemy appearances without needing a multitude of animation files. Most importantly, the guys at Esoteric Software provide a library of Spine Runtimes that allow for a smooth workflow in Unity. Combined with very regular updates and advanced features like skinning and mesh deformations, Spine was simply the best choice for us.
In Spine, each of these individual part gets its own slot under the appropriate bone. Certain images remain disabled until a specific animation needs them. At this point, the character is ready for animation! Many animations have become standardized: falling, kneeling, getting hit, or being grappled, to name a few. These are able to be made quickly and easily with only minor personalized tweaks. It’s in the characters walk, run, stance, and attacks where the characters personality shines through.
Developing our animations is an evolving process, constantly being tweaked and adjusted. The Spine file calls the events in game indicating when to play a sound, when an attack does damage, when the player can be interrupted, and a whole lot more. Each character design gets better, each character rig gets better, and Spine continues to improve and impress.
Until next time, thanks for reading!