> For the complete documentation index, see [llms.txt](https://axongenesis.gitbook.io/timeflow/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://axongenesis.gitbook.io/timeflow/reference/behaviors/animation/blend-shapes.md).

# Blend Shapes

Animate blend shapes on skinned meshes

Blend shapes are typically used for facial expressions on character models. Anytime an object is added to Timeflow that has a SkinnedMeshRenderer component, any blend shapes on the mesh are automatically listed as properties under the component in the Timeflow context menu. These may be animated the same as any other property.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FBlYHnVba2hpIFbpfz5f3%2Fimage.png?alt=media&amp;token=d7af772a-bccf-46bb-af27-83e421e3f4ef" alt=""><figcaption><p>This only applies to objects with a SkinnedMeshRenderer component.</p></figcaption></figure>

{% hint style="success" %}
To animate blend shapes in Timeflow, right-click the object in the Timeflow view and select the blend shape from the list under the SkinnedMeshRenderer component as shown above. This is also available to other behaviors such as Tween.&#x20;
{% endhint %}

{% hint style="info" %}
Note that blend shapes interpolate from 0 to 100. Higher values may be set however will cause mesh distortion. A limit may be added to the channel if desired.
{% endhint %}

## Using Blend

Blend shapes may be animated in Timeflow in any number of ways, however one useful method is to use the Blend component. Each of the blend shapes may then be added in the Properties tab and sets created to define each expression, giving it a name and combining the blend shape values as desired.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FaFOzg8FIHBr1C4H74Evk%2Fimage.png?alt=media&amp;token=49d18250-5cde-4c1e-a384-8008dfccc046" alt=""><figcaption></figcaption></figure>

This way the same blend shapes can be used to create any number of facial expressions. Each set can define the value for each shape, or leave it unchecked to leave certain properties as they are.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2FaLo3ofovdgSLZcOIkS1X%2Fimage.png?alt=media&amp;token=3873ea82-be32-4c68-a0cc-0a463f262f1b" alt=""><figcaption></figcaption></figure>

Once sets have been created, you can then interpolate between them and add keyframes to control the character's expressions in a single animation track.

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F5Sz635K6xSn5LISBFlz8%2Fimage.png?alt=media&amp;token=c28f4488-8a12-4e8d-8f89-3eb7e561cc1e" alt=""><figcaption></figcaption></figure>

Alternatively you may of course use regular keyframe channels to animate each of the shapes independently.&#x20;

<figure><img src="https://2067910529-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FC3dOuetlQfYgK5FPUKgn%2Fuploads%2F59V8AgRyAyChIV5K5RcU%2Fimage.png?alt=media&amp;token=977b148f-3146-4340-86f0-a4dc9fd3bb9c" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Please refer to the example scene shown above:

Assets/AxonGenesis/Timeflow/Samples/Demo/Scenes/Animation/BlendShapes
{% endhint %}
