A set of [AnimationRootNode]s placed on a virtual axis, crossfading between the two adjacent ones. Used by [AnimationTree].
A resource used by [AnimationNodeBlendTree]. [AnimationNodeBlendSpace1D] represents a virtual axis on which any type of [AnimationRootNode]s can be added using [method add_blend_point]. Outputs the linear blend of the two [AnimationRootNode]s adjacent to the current value. You can set the extents of the axis with [member min_space] and [member max_space].
$DOCS_URL/tutorials/animation/animation_tree.html
Adds a new point with [param name] that represents a [param node] on the virtual axis at a given position set by [param pos]. You can insert it at a specific index using the [param at_index] argument. If you use the default value for [param at_index], the point is inserted at the end of the blend points array. [b]Note:[/b] If no name is provided, safe index is used as reference. In the future, empty names will be deprecated, so explicitly passing a name is recommended.
Returns the index of the blend point with the given [param name]. Returns [code]-1[/code] if no blend point with that name is found.
Returns the number of points on the blend axis.
Returns the name of the blend point at index [param point].
Returns the [AnimationNode] referenced by the point at index [param point].
Returns the position of the point at index [param point].
Removes the point at index [param point] from the blend axis.
Swaps the blend points at indices [param from_index] and [param to_index], exchanging their positions and properties.
Sets the name of the blend point at index [param point]. If the name conflicts with an existing point, a unique name will be generated automatically.
Changes the [AnimationNode] referenced by the point at index [param point].
Updates the position of the point at index [param point] on the blend axis.
- Controls the interpolation between animations.
- The cycle length in seconds used by [constant SYNC_MODE_CYCLIC_CONSTANT]. All animations are time-scaled so they complete one full cycle in this duration. Must be greater than [code]0[/code] for cyclic sync to take effect.
- The blend space's axis's upper limit for the points' position. See [method add_blend_point].
- The blend space's axis's lower limit for the points' position. See [method add_blend_point].
- Position increment to snap to when moving a point on the axis.
- If [code]true[/code], sync mode is enabled (equivalent to [constant SYNC_MODE_INDEPENDENT]). This property is kept for backward compatibility.
- Controls how animations are synced when blended. See [enum SyncMode] for available options.
- Label of the virtual axis of the blend space.
The interpolation between animations is linear.
The blend space plays the animation of the animation node which blending position is closest to. Useful for frame-by-frame 2D animations.
Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at the last animation's playback position.
Inactive animations are frozen and do not advance.
Inactive animations advance with a weight of [code]0[/code]. This is equivalent to the previous [code]sync = true[/code] behavior.
All animations are time-scaled so they stay in sync, with the cycle length dynamically computed from active blend weights. This is self-normalizing: a solo animation plays at normal speed. [b]Note:[/b] If you apply [AnimationNodeTimeSeek] to the result when handling animations of different lengths, synchronization will be broken. In such cases, it is recommended to use [member AnimationNodeAnimation.use_custom_timeline] to align the animation lengths.
All animations are time-scaled so they complete one cycle in [member cyclic_length] seconds, keeping them in sync regardless of their individual lengths. [b]Note:[/b] If you apply [AnimationNodeTimeSeek] to the result when handling animations of different lengths, synchronization will be broken. In such cases, it is recommended to use [member AnimationNodeAnimation.use_custom_timeline] to align the animation lengths.