AnimationNodeBlendSpace2D

    Category: Core

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

    Properties

    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 )

    Signals

    • triangles_updated ( )

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

    enum BlendMode:

    • 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.

    Description

    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.

    • bool auto_triangles
    Setterset_auto_triangles(value)
    Getterget_auto_triangles()

    • blend_mode

    Controls the interpolation between animations. See BlendMode constants.


    • max_space
    Setterset_max_space(value)
    Getterget_max_space()

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


    • min_space
    Setterset_min_space(value)
    Getterget_min_space()

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


    • snap

    Position increment to snap to when moving a point.


    Setterset_x_label(value)
    Getterget_x_label()

    Name of the blend space’s X axis.


    • y_label
    Setterset_y_label(value)
    Getterget_y_label()

    Name of the blend space’s Y axis.

    Method Descriptions

    Add 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 ( int x, y, int z, at_index=-1 )

    • int get_blend_point_count ( ) const

    Returns the number of points in the blend space.


    • get_blend_point_node ( int point ) 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 .


    • 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.



    Updates the position of the point at index on the blend axis.