AnimationNodeBlendSpace2D

    Blends linearly between three of any type placed in a 2D space.

    A resource to add to an AnimationNodeBlendTree.

    This node allows you to blend linearly between three animations using a weight.

    You can add vertices to the blend space with add_blend_point and automatically triangulate it by setting to . Otherwise, use add_triangle and to create up the blend space by hand.

    Tutorials

    Methods

    voidadd_blend_point ( node, Vector2 pos, at_index=-1 )
    voidadd_triangle ( x, int y, z, int at_index=-1 )
    get_blend_point_count ( ) const
    get_blend_point_node ( point ) const
    Vector2 ( int point ) const
    get_triangle_count ( ) const
    get_triangle_point ( triangle, int point )
    void ( int point )
    void ( int triangle )
    void ( int point, node )
    voidset_blend_point_position ( point, Vector2 pos )

    Emitted every time the blend space’s triangles are created, removed, or when one of their vertices changes position.

    Enumerations

    enum BlendMode:

    • BLEND_MODE_INTERPOLATED = 0 —- The interpolation between animations is linear.
    • BLEND_MODE_DISCRETE = 1 —- The blend space plays the animation of the node the blending position is closest to. Useful for frame-by-frame 2D animations.
    • BLEND_MODE_DISCRETE_CARRY = 2 —- Similar to , but starts the new animation at the last animation’s playback position.
    • bool auto_triangles
    Defaulttrue
    Setterset_auto_triangles(value)
    Getterget_auto_triangles()

    If true, the blend space is triangulated automatically. The mesh updates every time you add or remove points with and remove_blend_point.


    • blend_mode

    Default
    Setterset_max_space(value)
    Getterget_max_space()

    The blend space’s X and Y axes’ upper limit for the points’ position. See .


    DefaultVector2( -1, -1 )
    Setterset_min_space(value)
    Getterget_min_space()

    The blend space’s X and Y axes’ lower limit for the points’ position. See .


    Position increment to snap to when moving a point.


    • x_label
    Default“x”
    Setterset_x_label(value)
    Getterget_x_label()

    Name of the blend space’s X axis.


    Default“y”
    Setterset_y_label(value)
    Getterget_y_label()

    Name of the blend space’s Y axis.

    Method Descriptions

    Adds a new point that represents a node at the position set by pos. You can insert it at a specific index using the at_index argument. If you use the default value for at_index, the point is inserted at the end of the blend points array.


    • void add_triangle ( x, int y, z, int at_index=-1 )

    Creates a new triangle using three points x, y, and . Triangles can overlap. You can insert the triangle at a specific index using the at_index argument. If you use the default value for at_index, the point is inserted at the end of the blend points array.


    • get_blend_point_count ( ) const

    Returns the AnimationRootNode referenced by the point at index point.


    • get_blend_point_position ( int point ) const

    Returns the position of the point at index point.


    • get_triangle_count ( ) const

    Returns the number of triangles in the blend space.


    • int get_triangle_point ( triangle, int point )

    Returns the position of the point at index point in the triangle of index triangle.


    • void remove_blend_point ( point )

    Removes the point at index point from the blend space.


    • void remove_triangle ( int triangle )

    Removes the triangle at index triangle from the blend space.


    Changes the referenced by the point at index point.


    • void set_blend_point_position ( int point, pos )