
My role as a Technical Animator at Skybox was to setup the character pipeline from Blender to Unity. This was accomplished by estabilishing a few key points;
- Ensuring that the character models had good topology for animation
- That the rig could easily be updated with new functions, meshes
- The animator should have an easy time animating on the rig
- The animations works well in the engine when implemented

The toy-like look of the characters introduced a distinctive approach to the rigging process, emphasizing the importance of rotation as a critical element in achieving a broad and expressive range of motion. This ensured that every pose felt both natural and consistent with the playful aesthetic.

The biggest challange and oppurtunity with this rig was that it could be detatched into smaller pieaces into a non hiearacy bone structure. The rig still has one export skeleton because of a parent constrain switch that can be used in the properties on the rig for easy access for the animator.
One thing that I wanted to carry over from my Maya experience into Blender was a fast way to updated the rig for my animator (Big shout out to Sofie Nilsson) while the rig is still usable. All the characters lives in one rig file which are linked to the animation files and can be used. This allows the animator to get the update and reload rig with no work lost. The characters have the same bonenaming standard, Mixamo, Unity and Unreal compatible with retarget systems.

The Molotov effect was created using Unity’s particle system, using hierarchical effects to get the spreading motion. The design consists of layers representing flames, ash, and oil, which come together to create a cohesive and realistic look. With my experience in this area, if given more time, I would refine the effect using the Visual Effect Graph to create a more impactful and immersive impression on the map.
Smokebomb was created using Unity’s Visual Effects Graph with shaders, with assistance from Damjan Derdić. The smokebomb consists of two effects: a main smoke and a smaller pre-smoke that behaves similarly. To achieve the desired explosive feel, the smoke needed to expand rapidly and then slow down once it reached the appropriate size. This was accomplished by using damping values to control the effect.

The animation behavior tree consists of three body masks: the base layer, upper body mask, and lower body mask. The upper body mask handles shooting animations, allowing for greater flexibility in movement. The lower body mask manages crouching animations. The base layer includes card and non-card states. The non-card states control bot behavior animations, such as 4-directional movement and planting. Additionally, menu animations are also housed within the base layer. When implementing a second character with unique animations, instead of creating a new state machine, we used an override controller. This allowed us to simply slot in the animations to be changed into a list, significantly improving scalability.
The main challenge in creating the animation tree was achieving scalability. Early in the process, I developed a script to randomize states, such as selecting which running animation to play. However, this approach proved difficult to scale when adding 4-directional movement later on. Given more time, I would have focused on addressing and resolving this issue.