Character's Bone Structure

Character's Bone Weights

As a technical artist, I was able to get out of my comfort zone by exploring Unity's new 2D animator.

Kymani provided the robot art. I constructed the skeleton of the robot. Identifying it's joints with separate bones allows the sprite to bend at those points.

The bones also needed to be weighted, which influences how each bone contorts the sprites that it is attached to. My focus was to limit contortion as much as possible, since this metal robot shouldn't be bending and stretching it's limbs.

Walk Animation

Run Animation

Now that the robot has a skeleton, it can be animated. Here is where I had a lot of fun!

IK Solvers on the limbs allow it to act like an arm or a leg; by dragging the hand/foot, the rest of the limb will bend around the elbow/knee joint.

Movement Demo

Character Animation Tree

This demonstrates the animations in action!

The Throwing animation is masked to the top half of the body. This means that the bottom half of the body will continue with it's animations as normal, while the top half will be overridden to show the Throw when a throw is triggered. By masking the Throw animation, it will play without disrupting the walking, running, or other animations.

The Unity Animator will change the character's movements based on Parameters that I have set. For example, the Jump animation will play if the player has a vertical velocity greater than 0 (going up), which will then transition to the Fall animation if that velocity falls below 0 (going down). Once the player touches the ground, they will return to walking, running, or idling, depending on the players horizontal velocity.