Character Walk and Run Cycle Animation

Our video game development company runs independent projects, jointly creates games with the client and provides additional operational services. Expertise of our team allows us to cover all gaming platforms and develop an amazing product that matches the customer’s vision and players preferences.
Showing 1 of 1 servicesAll 242 services
Character Walk and Run Cycle Animation
Medium
from 2 business days to 1 week
FAQ
Our competencies
What are the stages of Game Development?
Latest works
  • image_games_mortal_motors_495_0.webp
    Game development for Mortal Motors
    663
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    A turn-based strategy game set in a fantasy setting, With Fire and Sword
    859
  • image_games_second_team_604_0.webp
    Game development for the company Second term
    490
  • image_games_phoenix_ii_606_0.webp
    3D animation - teaser for the game Phoenix 2.
    533

Creating Walk and Run Cycles for Game Characters

Walk cycle is the first animation the player sees and the last one they want to redo a week before release. Yet it gets redone. The reason is almost always one: the cycle is made as finished video, not as game asset that will work in Blend Tree, be applied through Avatar Mask and transition from Idle to Run state through Animator Controller.

Why Cycle Doesn't Match Capsule Movement

Classic problem: character visually slides across floor even though NavMeshAgent or CharacterController moves at normal speed. Root Motion is either not connected or connected incorrectly.

In Unity Root Motion is read from animation's root bone—the one marked as Root in Avatar. If animator "baked" movement directly into Hip-bone instead of Root, Root Motion gives zero. Character stands in place while controller drags them forward.

Correct scheme: Root-bone moves forward strictly along Z-axis by distance of one step over half cycle. At cycle end Root returns to origin point—otherwise animation loops with teleportation. In Blender this is configured through NLA Editor: Root-bone keyframes at cycle start and end must be identical in X/Y position with needed Z offset.

In Unity: Animator → Apply Root Motion = true, in animation clip Import Settings—Root Transform Position (XZ) = Based on Original. Movement speed in game must match Root Motion speed—otherwise sliding returns. For Blend Tree with Walk→Run transition use two clips with different Root Motion speeds, Blend Tree interpolates between them by Speed parameter.

Technical Requirements for Cycle as Game Asset

Cycle length in frames affects transition smoothness. Walk cycle at 30 fps: standard—30 frames (1 second), left leg starts step on frame 0, right leg—frame 15. 24-frame cycle will flicker during transitions. 60 frames—excessive for most projects, but needed for mobile games with low frame budget where animation frame interpolation is disabled.

Run cycle: 20–24 frames at 30 fps. More aggressive airborne phase (both feet lifted), pronounced torso forward lean. Important: Hip-bone vertical displacement should match speed. If character runs at 6 m/s but head bounce is minimal—looks like ice skating, not running.

Foot IK. Walk and run cycles in most projects work with Animation Rigging or Foot IK from Humanoid Avatar. For correct Foot IK work, foot base (Toe-bone) needs proper weight in Left/Right Foot IK Avatar parameter. If Foot IK is enabled in Animator → IK Pass and animator didn't configure OnAnimatorIK in script, frames ignore floor contact—character walks through ramps.

Blend Tree: Why One State Machine Is Wrong

For locomotion, State Machine with direct Walk → Run transitions is constant problem source. Transition through Has Exit Time with fixed 0.25s time looks normal on flat surface and jerks with sudden player speed change. Blend Tree solves this with interpolation by float Speed parameter.

Minimal Blend Tree scheme for locomotion:

  • 0.0 — Idle
  • 1.5 — Walk (Root Motion speed ~1.5 m/s)
  • 5.0 — Run (Root Motion speed ~5.0 m/s)
  • 7.0 — Sprint (optional)

Compute ThresholdCompute from Root Motion Speed in Blend Tree automatically sets thresholds by clip Root Motion speed. After that just make sure Speed parameter in Animator updates through animator.SetFloat("Speed", currentSpeed) with dampTime 0.1–0.15 for smoothing.

Avatar Mask allows applying walk/run only to lower body, leaving upper for aiming or interaction animation. Mask created in Project → Create → Avatar Mask, upper limbs and head disabled. In Animator Controller—layer above base with assigned Mask and Additive or Override blending.

Timeline and What's Included

Task Type Estimated Duration
Walk + Run cycle without Root Motion 1 to 2 days
Walk + Run with Root Motion and Unity setup 2 to 3 days
Full locomotion package (idle, walk, run, sprint, strafe) 4 to 7 days
Pipeline supplement (Blend Tree integration) 4 to 8 hours

Animator works in Maya or Blender, exports to FBX with Unity settings. Final Animator Controller integration with Blend Tree is part of task if specified in technical specification.

Cost calculated after clarifying character count, Root Motion requirements and platform (mobile/PC/console).