> For the complete documentation index, see [llms.txt](https://finite-machine-studio.gitbook.io/vatmachine-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://finite-machine-studio.gitbook.io/vatmachine-documentation/runtime-components/vatanimator.md).

# VATAnimator

VATAnimator is the main runtime playback component of VATMachine.

It reads the assigned VAT Animator Graph, evaluates the current animation state, updates transitions and blend trees, and sends the correct VAT playback data to the character’s renderers.

In simple terms, VATAnimator is the component that makes the baked VAT character animate.

### Where VATAnimator Is Used&#xD;

VATAnimator should be added to the root object of the VAT character.

If you generate a VAT prefab from the VAT Baker, the prefab already includes a VATAnimator component.

You usually only need to assign a VAT Animator Graph to it.

### VATAnimator Inspector

The VATAnimator Inspector is divided into a few important sections.

<figure><img src="/files/GCmrZTTfdyg4esL4VU4M" alt=""><figcaption><p>VATAnimator Inspector</p></figcaption></figure>

#### Animation Graph

The Animation Graph field is where you assign your VAT Animator Graph.

#### Renderer Targets

&#x20;Renderer targets tell VATAnimator which renderer should receive VAT playback data.

For a simple character, this usually means:

* Target Renderer
* Target Mesh Filter

Target Renderer should use a VAT playback material.

Target Mesh Filter should use the mesh that was generated or used during the VAT bake.

If the renderer does not use a VAT playback material, the mesh will not animate correctly.

#### LOD Targets

<div align="left"><figure><img src="/files/3om8jyOl5T2c5fyXc9Wm" alt="" width="375"><figcaption><p>LOD Targets</p></figcaption></figure></div>

LOD Targets are used when the VAT character has multiple LODs or multiple renderer parts.

Each LOD target stores:

* LOD Index
* Part Index
* Target Renderer
* Target Mesh Filter

This allows one VATAnimator to drive multiple renderers using the same animation clock.

Examples:

* LOD 0 body
* LOD 1 body
* LOD 2 body
* Body renderer
* Hair renderer
* Armor renderer
* Equipment renderer

If your character was generated by the VAT Baker with LODs or multiple parts, these fields are usually filled automatically.

#### Play On Awake

Play On Awake controls whether the VATAnimator starts playing automatically when the object becomes active.

If enabled, the VATAnimator starts from the graph’s Entry state and plays the default state.

For most characters, this should stay enabled.

If disabled, you must start playback from code using VATAnimator methods such as [Play](/vatmachine-documentation/api-reference.md#play) or [Crossfade](/vatmachine-documentation/api-reference.md#crossfade).

#### Update Renderer Bounds&#xD;

Update Renderer Bounds allows VATAnimator to update the renderer bounds using the baked animation bounds.

This is important because VAT animation moves vertices on the GPU. Unity’s normal renderer bounds may not include the full animated movement.

If bounds are too small, the animated mesh may disappear when the camera moves.

For most users, Update Renderer Bounds should stay enabled.


---

# 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://finite-machine-studio.gitbook.io/vatmachine-documentation/runtime-components/vatanimator.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.
