# Additive Layer

## Description

**Additive Layer** has 2 main functions: weapon recoil and curve-based animations.

Curve-based animations are extracted from the **WeaponBoneAdditive** Game Object, which is animated by the _Animator Controller_:

<figure><img src="https://784345943-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxcUmJ78NSw1bSUlSO9oP%2Fuploads%2FE1qXlUTneF5mYt9jXNpC%2Fimage.png?alt=media&#x26;token=950f7ed8-2936-4626-a4c4-0a4dd99a6a9e" alt="" width="418"><figcaption></figcaption></figure>

{% hint style="success" %}
**Tip:** the demo project implements CurveEquip and CurveUnequip motions procedurally using this method. These animations only animate the WeaponBoneAdditive, so they do not affect other bones.
{% endhint %}

The procedural recoil is extracted from the [recoil-animation](../../recoil-system/recoil-animation "mention") component.

## Properties

<figure><img src="https://784345943-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxcUmJ78NSw1bSUlSO9oP%2Fuploads%2FgWQBfINw6iEE2OARCRAx%2Fimage.png?alt=media&#x26;token=6d46c86c-aae8-49b0-a188-c6d7c4a2bca9" alt="" width="362"><figcaption><p>Additive Layer Settings.</p></figcaption></figure>

* **Additive Bone**: an element used to extract the additive animation.
* **Interp Speed**: smoothing speed for curve animations.
* **Aiming Input Property**: float property which will scale down effect of curve animations.
* **Ads Scalar**: a multiplier which will scale down the curve animations influence when aiming. It is used to reduce procedural motion when aiming.
