> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinemation.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# 🏃‍♂️Procedural Animation

> In this tutorial you will learn how to add procedural movement.

## Tutorial

The **FPS Animation Pack** handles arms movement via procedural animation, including:

1. Idle

2. Walk

3. Sprinting

4. Jumping

<Tip>
  **Tip**: these features work out-of-the-box with the FPS Player component. If you already use it, you can skip this tutorial.
</Tip>

The process of adding procedural movement to your custom player controller is easy. First, add the **FPS Procedural Animation** to your character:

<Frame caption={"Click the \"Add Component\" button."}>
  <img src="https://mintcdn.com/kinemation/PlmzVQHJ3J_C1x92/images/fps-animation-pack/unity/953b1b8c08e3d6bbeb44.png?fit=max&auto=format&n=PlmzVQHJ3J_C1x92&q=85&s=b54e1ad364c00d6d74bd7279a3a57a51" alt="" width={273} data-path="images/fps-animation-pack/unity/953b1b8c08e3d6bbeb44.png" />
</Frame>

<Tip>
  **Tip**: add this component to the character Game Object, which contains the Animator component.
</Tip>

Once the component is attached, it will automatically assign bone transforms:

<Frame caption={"Automatically assigned bone transforms."}>
  <img src="https://mintcdn.com/kinemation/PlmzVQHJ3J_C1x92/images/fps-animation-pack/unity/fb21075e9f4f2dcb43cd.png?fit=max&auto=format&n=PlmzVQHJ3J_C1x92&q=85&s=897e282a055b3ebfa985a6d08fc21dae" alt="" width={400} data-path="images/fps-animation-pack/unity/fb21075e9f4f2dcb43cd.png" />
</Frame>

<Warning>
  Note: If some bone references are missing, make sure to manually assign them by dragging bones into their respective slots.
</Warning>

The setup is complete at this point - now procedural movement animations will be applied to your character in-game.

## How it works

It's also worth noting how these animations work. The **ik\_hand\_gun\_additive** Game Object is animated by clips from your Animator:

<Frame caption={"Additive gun bone."}>
  <img src="https://mintcdn.com/kinemation/PlmzVQHJ3J_C1x92/images/fps-animation-pack/unity/aab6f8964d2b477f8c80.png?fit=max&auto=format&n=PlmzVQHJ3J_C1x92&q=85&s=8d942824a856ff158d570b8181f0d3de" alt="" width={242} data-path="images/fps-animation-pack/unity/aab6f8964d2b477f8c80.png" />
</Frame>

The **ik\_hand\_gun\_additive**'s animated transform is applied directly to the arms by the procedural component at runtime.

<Tip>
  **Note**: ik\_hand\_gun\_additive is **NOT** a bone; it is an empty Game Object attached to the root bone.
</Tip>
