• Register
Post news RSS Tech Diary: Animating the characters

On this post, the person behind the animations of 7 DOORS explains how the characters are animated

Posted by on

Hello everyone, Fernando here.

I was given the task of animating the characters on 7 DOORS, and in this post I will explain how I am making this task and why I took certain decisions on doing this.

How the animations are being producted

The animations are being produces on Unity, as I have found problems using Spriter, more specifically a problem when flipping a sprite: when the scale of a sprite reaches zero in a certain frame, the bone disappears, changing its position to an unreachable place, basically making it impossible to place the bone on its correct placement. Changing its scale has no effect.

Example of the Spriter problem

First of all, I had to import the player's character sprites to Unity and alter their pivots to their proper places to allow the chatacter's members to move as they should do. Then, the second step was building the character and altering their drawing order in the Player layer.

The first version of our character, made by our artist Alexandre, featured non-symmetrical arms which needed to be flipped in some animations, what led us to try doing animations directly on Unity and redo the arms of our characters.

On the first version, i followed a tutorial sent by Henrique, the game designer and project manager, which used small squares (let's call them bones) with a certain length to indicate the bones' position, which showed us a problem: sometimes associating the bone to the body part altered the part's scale, making the character look awkward.

Then, I put the squares on its original scale only where the body parts rotate. Even then, another problem appeared: Sometimes the bones appeared when its associated body parts were at certain angles. So, I made the squares transparent.

The problem disappeared, but I thought it could be improved: instead of squares, now the bones were represented by empty objects placed where the body parts' sprites pivots are located. This solution is used in the final version of the character's prefab.

For the weapons, they were associated to empty objects located in the hands of the character. That weapons are already placed in the character prefab, set as inactive objects.

Our current animations for the player include:

  1. A standing pose
  2. Walking and running cycles
  3. Jumping
  4. Two sword attacks: a vertical slash and a thrusting move
  5. Two death animations: one where the character tumbles forward and one where it jumps backwards.

With exception of item #4, all animations were done for an unequiped character and it using all possible weapons in the first demo: the sword and the shield. For the sword, I added two possible poses: one where the character wields it in his right hand, and one with a two-handed wield of the sword.

Some of the greatest challenges I have found when animating this character is that, to emulate Spriter's bone hierarchy, I had to put the waist bone as the parent bone, and every other bone as a direct child of it, with some cases of three relations from the parent bone to some children.

Another challenge was how to emulate the walking and running cycles' arms and legs positions. Those are still a work in progress, the first demo may show some preliminar work, which was sent to our programmer Luis mainly to test if my concept of the player was working.

Unity's player prefab

If tests find the attack range of the player is too limited by the player's hand positioning, I may have to do additional animations to make the character wield the sword with his left hand and the shield with his right hand.

My part on the character is only about his animations, so I had not inserted any kind of script or component inside its prefab. The only thing I did in his animator was creating it and testing the animations by making them the default entry state.

We look forward to start the production phase of our game. One more weapon may be present in its vertical slice. Meanwhile, you can check our social media on the links below.

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.