---
title: BlendTreeNode
framework: realitykit
role: symbol
role_heading: Protocol
path: realitykit/blendtreenode
---

# BlendTreeNode

An interface for a node that’s a member of a blend tree.

## Declaration

```swift
protocol BlendTreeNode
```

## Overview

Overview This protocol specifies the common functionality for the animations that compose a BlendTreeAnimation. The animation defines a root node of this type. To define the tree, you assign the root node one of the follow structures that adopt this protocol: BlendTreeBlendNode, which branches the tree for every element in sources. BlendTreeSourceNode, which defines an animation to blend with its source property. note: A node in the tree may be of type BlendTreeInvalidNode, which neither specifies a list of sources nor an animation. Each node type supplies a name and weight, which you can set during or after initialization. let animation1 = FromToByAnimation(...)

let blendNode = BlendTreeSourceNode(     source: animation1,     name: "Anim1",     weight: .value(0.25))

## Topics

### Configuring the blend tree node

- [name](realitykit/blendtreenode/name.md)
- [weight](realitykit/blendtreenode/weight.md)

### Blending animations

- [blend(sources:name:isAdditive:)](realitykit/blend(sources:name:isadditive:).md)
- [blend(_:_:name:isAdditive:)](realitykit/blend(_:_:name:isadditive:).md)

## Relationships

### Conforming Types

- [BlendTreeBlendNode](realitykit/blendtreeblendnode.md)
- [BlendTreeInvalidNode](realitykit/blendtreeinvalidnode.md)
- [BlendTreeSourceNode](realitykit/blendtreesourcenode.md)

## See Also

### Blend trees

- [BlendTreeAnimation](realitykit/blendtreeanimation.md)
- [BlendTreeBlendNode](realitykit/blendtreeblendnode.md)
- [BlendTreeSourceNode](realitykit/blendtreesourcenode.md)
- [BlendTreeInvalidNode](realitykit/blendtreeinvalidnode.md)
- [BlendWeight](realitykit/blendweight.md)
