> For the complete documentation index, see [llms.txt](https://kinemation.gitbook.io/magic-blend-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinemation.gitbook.io/magic-blend-documentation/tutorial/workflow.md).

# Workflow

## Blend Sliders

The <mark style="color:purple;">**Magic Blend Asset**</mark> uses 3 main sliders to control the animation blending:

<figure><img src="/files/ze4OZ9D9EQcUTPGEavoA" alt="" width="421"><figcaption><p>Weight sliders.</p></figcaption></figure>

**Base Weight** controls a blend between Animator and Magic Blend pose. If set to zero, the Animator will be fully used, if set to 1 - the overlay pose will fully override this bone chain.

**Additive Weight** controls the dynamic additive influence. If set to zero, no additive is applied, if set to 1 - it will be added to the overlay pose.

**Local Weight** overrides everything with the overlay pose. It is only useful for fingers or hands. If set to zero, it will not be applied, and if set to one - it will fully override the bone chain with the overlay pose.

There are no restrictions on what sliders to use and how. You need to tweak the settings and see what works best for your character pose.

## Animation States

It is possible to bind <mark style="color:purple;">**Magic Blend Assets**</mark> to a specific animation state in your controller. To do so, click on the desired state and add a **Magic Blend State**:

<figure><img src="/files/VdgqVaLsFjF6qL9arUwC" alt="" width="236"><figcaption><p>Blend State component.</p></figcaption></figure>

Now, assign the blend asset, and the system will automatically sync it with the rest of the animator controller:

<figure><img src="/files/2bL9loZzYlm0wTDwLuye" alt="" width="415"><figcaption><p>Choose your asset here.</p></figcaption></figure>

{% hint style="success" %}
**Tip:** you can add multiple empty states to your animator, and set up transitions between them. You don't have to specify the animation clips, as they will be supplied from the selected Magic Blend Asset.
{% endhint %}

This is a very simple way to integrate the **Magic Blending** with your project without modifying the code. However, sometimes we run into situations when it is vital to change a <mark style="color:purple;">**Magic Blend Asset**</mark> in runtime.

## Code Integration

You can swap <mark style="color:purple;">**Magic Blend Asset**</mark> by simply replacing the asset in the inspector. If you want to do a similar thing in the code, here is how you can achieve that:

{% code title="YourComponent.cs" overflow="wrap" %}

```csharp
private MagicBlending _magicBlending;

private void Start()
{
    _magicBlending = GetComponent<MagicBlending>();
}

private void ChangeMagicBlendAsset(MagicBlendAsset newAsset)
{
    _magicBlending.UpdateMagicBlendAsset(newAsset, true);
}
```

{% endcode %}

```csharp
_magicBlending.StopMagicBlending() // Use it to disable active blending.
_magicBlending.SetOverlayTime(float newTime) // Use it to force update overlay time.
_magicBlending.GetOverlayTime(bool isNormalized) // Use it to get overlay time.
```

That is it! Now you know how to fully use **Magic Blending** in your project.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://kinemation.gitbook.io/magic-blend-documentation/tutorial/workflow.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
