When we first started developing Voodoo, we knew one thing for sure: Unity would be our engine. What we weren’t sure about was what engine to use for animations, since in 2012 Unity didn’t have any 2D animation tool (it didn’t even support 2D native). Our only option was to start with the only software we were familiar with, Flash.
That was the first time we animated the main character of Voodoo. You can see above the first animations we made with Flash.
We want that every detail in the game to express pessimism, decadence… our idea was to make the character limp, to make him walk in an irregular way through the whole game, so we would reinforce that feeling and give the player time to react (in the first version of the game, the character was moving by himself, I’ll write about this in another post)
That idea didn’t work as expected, when we saw it animated we knew that if it was going to be like this the entire game, it would be dull.
Using Flash, our intention was to export to a spritesheet with all the animation keyframes, then insert it in Unity and through another application we could finally see the animation made in Flash.
To be fair the result wasn’t good, also the process was a little tedious. So we started to search for an alternative to make the animations directly in Unity.
We were looking for a tool that would give us fluency to animate, better results and no dependency on a third application. We found SmoothMoves
This tool very useful for us, with this tool we first started to make real animations, and most important, to improve our skills. It had a lot of features that were ideal for everything we wanted at that time.
We used this tool during the whole development. We made literally more than a thousand animations. We were very happy working with SmoothMoves, we used the tool during months without problems.
Everything was working fine (some bugs, but nothing major), we had all running and animated and finally came the moment to show the game to your friends, family…. Everyone had a good feeling about the demo, we also sent it to the IGF to get feedback. But, the most importantly… Did we find it fun?
It´s a hard question to answer, I consider important to ask this question yourself and answer it with your heart. Yes, we really liked the art of our game, we found funny the situations we created with the main carácter. But the truth is that the game did not seem as much fun as it should be. It wasn’t easy to realize this, you don’t want to think that the game you invested a lot of time isn’t fun to play.
In that point we had to change things, we changed the whole concept and we had to find another tool for animations, because the new game design didn’t fit with the previous animations we did.
While searching for another tool that could fit into our new game design, we tried the native Unity animator tool. We used this previously to animate simple things, nothing too complicated, and we thought maybe it will a good time investment.
The result was awful, used to the simple interface of SmoothMoves, we couldn’t reach a good results with Unity animator. Duplicating the walk loop cycle took a lot of time, more than we expected, and for some reason the user interface didn’t seem comfortable to work daily.
While searching for an application that would allow us to have better communication with Unity, we found Spine. Before trying it, I remember seeing it in a Kickstarter campaign and coming out from it successfully. We were evaluating the pros and cons, and we decided to jump into Spine.
The worst thing about that was that we had to delete all the animations. Fresh start.
In Spine we would create objects that were recognized by Unity using BlendTree. We decided to use this feature to build the new Voodoo.
SmoothMoves walk animation (2014) – Spine walk animation (2017)
We also wanted the main character to interact with Unity objects, for that we had to convert the animations made with Spine into Unity animations. But there wasn’t any simple or fast way to do so.
But it was a person called Nicloay that made an script called unity-spine-importer (you can find it here).
Thanks to him we reached our new objectives.
We spent a lot of time developing with this workflow: animate in Spine, then use the unity-spine-importer script to transform the animations from Spine into Unity animations, and then retouch the animations in Unity. It didn’t seem to be the best workflow you could use.
It turns out that in complex animations these were ruined. Also the BlendTree didn’t work well with Spine animations, and Esoteric Software recommended to “ better not use BlendTree”. Great news…
Again we had to rethink many things, rethink the way we used to work, the way we created animations or objects in Unity, but most importantly, we needed to obtain the same results without BlendTree.
And we did it, it took us a lot but we did it well. Although it’s the players who have to judge and we hope that they will like our job, when the game is finished.
At least we cannot say that we didn’t try.