Core Animator has been out for two weeks now, and we can’t be anything but excited for the amount of support that we’ve received from the development community. Discussing the product, answering questions, and contemplating new features with people that are as excited about the app as we are has been great.
We thank all of you, for your praise, your criticism, and your invaluable feedback. We’re listening and much of what we have heard has ended up on our development schedule.
Beginnings
As I believe most development tools are, Core Animator was born out of pain.
In late 2012 we were working on our second puppet theater app “Puppet Pals: 2”. In both the first and second version of Puppet Pals, we used the Core Animation framework directly. It gave us everything we needed to perform user-driven animations and allow them to be recorded and played back.
We upped the ante in Puppet Pals: 2. Our new puppets could walk and talk, and that’s when things began to hurt. Hand coding the rigging and animation for multi-jointed character walk cycles is complex. And we weren’t just doing humanoids, but ungulates as well.
That’s just to rig a single character. Animating it was more complicated. For ungulates, we had over 2,000 values representing the rotation of multiple limbs across all keyframes of the animation. Despite how difficult it was to manage and tweak the animation, we were very happy with what we managed to do.
By the end of 2012 we shipped Puppet Pals: 2. With the product launch behind us, it was time to look forward. If we were going to continue to do what we had just done, we had to find a way to make it easier. Searching for tools that might help us generate complex animations and run them within the context of Core Animation proved fruitless. We decided that if we really wanted this tool, we’d have to write it ourselves.
Development
In April of 2013 we made our first commit and Core Animator was under way. We were quick to prototype things out and had some basic functionality to show at WWDC 2013. We were hoping to hear that others, like ourselves, would be interested in a tool like this. To those that we talked to, the reaction seemed favorable and we went home excited to continue its development.
Our timeline was quite aggresive for our small team and we hoped to have something shipped by May of 2014 so we could be ready for WWDC in June of that year. But 2013 was a very busy year for us. Disney, liking what they saw in Puppet Pals, partnered with us and we shipped 3 apps with them that year. However, progress on Core Animator continued and by our intended ship date it was ready for internal use.
We used our new tool rigorously and in August of 2014 Disney’s Sherrif Callie shipped, completely animated using Core Animator. This was a very exciting time for us as we started to see the payoff for creating our animation tool. Rigging and animating our characters was simple and we saved so much time compared to our previous workflow.
Using Core Animator in a production app also revealed several short comings in the tool. With a new list bugs and features, we set our sights on the end of the year. By December our new product entered beta, and in the beginning of February 2015, we submitted our new app to the App Store.
Version 1.0
Overall, we are very happy with what we’ve shipped. It’s a product that has saved us countless hours internally. More importantly it has improved the quality of our apps. We understand there are many more features that our users would like to see. We’re looking forward to developing them. Core Animator has a bright future. And we have you to thank for that.