Skip to main content

Blend Spaces

Overview

A Blend Space is a composite asset based on Skeleton and/or Animation Sequence, which can accept multiple input controls (currently two at most) to control the blend of multiple animation sample points.

The Blend Space supports standalone playback, playback nodes for Anim Tree, and Anim Tree Slot nodes input.

Blend Spaces Creation and Types

Different types of Blend Space provide numerous features in the Asset Editor.

Different Blend Space types can be created in the following steps:

Click File -> Create to open the Asset Creation window. Then you can create a Blend Space asset in it.

Blend Spaces

The Blend Space (Blend Space 2D) allows sampling and blending in a 2D action pose sample space based on specified sample points, for example, it can be used for a character's movement in eight directions, etc.

Blend Space 1D

Blend Space 1D allows sampling and blending in a 1D action pose sample space based on specified sample points.

Blend Space 1D is a one-dimensional variant of Blend Space. It is created, edited and used in the same way as Blend Spaces.

image-20230130094002600

Aim Offset Blend Spaces

An Aim Offset Blend Space is a special Blend Space asset for processing demands including weapon or character look-at aiming. It only blends mesh space additive type poses and adds the result to the inputted base pose.

Aim Offset Blend Space 1D is a one-dimensional variant of Aim Offset Blend Space. It is created, edited and used in the same way as Aim Offset Blend Space.

See Aim Offsets for more details on this section.

Asset Details

Blend Spaces can be set by modifying the related properties in the Asset Details panel.

OptionPropertyDescription
Horizontal AxisNameHorizontal axis name.
Minimum Axis ValueMinimum horizontal axis value.
Maximum Axis ValueMaximum horizontal axis value.
Number of Grid DivisionsNumber of horizontal axis grid divisions.
Interpolation TimeHorizontal axis interpolation time.
Interpolation TypeHorizontal axis interpolation type.
  • Average Interpolation: Average the historical and current sampling points as the final sampling point value.
  • Linear Interpolation: The further the sample point interpolation weight is from the current time, the smaller the weight.
  • Cubic Interpolation: The further the sample point interpolation weight is from the current time, the smaller the weight, and the faster it attenuates than the linear interpolation weight.
Vertical AxisNameVertical axis name.
Minimum Axis ValueMinimum vertical axis value.
Maximum Axis ValueMaximum vertical axis value.
Number of Grid DivisionsNumber of vertical axis grid divisions.
Interpolation TimeVertical axis interpolation time.
Interpolation TypeVertical axis interpolation type.
  • Average Interpolation: Average the historical and current sampling points as the final sampling point value.
  • Linear Interpolation: The further the sample point interpolation weight is from the current time, the smaller the weight.
  • Cubic Interpolation: The further the sample point interpolation weight is from the current time, the smaller the weight, and the faster it attenuates than the linear interpolation weight.
Additive SettingsPreview Base PosePreview base pose.
Blend SamplesBlend SamplesSample Animation List: List members are dynamically adjusted with the addition or deletion of samples. Each member provides horizontal axis coordinates, vertical axis coordinates, associated animation and play rate.
Sync GroupSync GroupSync group.
Blend TimeBlend In TimeBlend in time.
Blend Out TimeBlend out time.
Blend Timing Mode
  • Absolute timing mode: The blend in and out time will not be influenced by the play rate;
  • Relative timing mode: The blend in and out time will be influenced by the play rate and changes in proportion to the animation duration.
  • TriggerStart TriggerStart playing trigger event.
    End TriggerEnd playing trigger event.
    Break TriggerBreak playing trigger event.
    Loop TriggerLoop playing trigger event.
    Sample InterpolationTarget Weight Interpolation Speed Per SecondSpeed of interpolating to target.
    Custom Key ValueCustom Key ValueCustom key value.
    Slot NameSlot NameSlot name.

    Sample Grid Editing Area

    A two-dimensional grid is generated in the Blend Space sample grid editing area, whose number of grid divisions is determined by the Number Of Grid Divisions under Axis Settings in the Asset Details panel. A sample point can be set on any grid line intersection point.

    image-20230130100014289

    Sample points can be added by dragging Skeleton or Animation Sequence assets from the Action List to specific intersections.

    add

    Click the icon to enable or disable the animation name associated with the sample point.

    image-20230130100145992

    Click the icon to enable or disable the display of the triangles in the grid section.

    image-20230130100154830

    Drag the sample point to adjust its position.

    drag-16690001084449

    Right-click on a sample point to open the Sample Point Edit window where you can adjust its settings. (Note: The settings here are the same as those in Blend Samples of the Asset Details panel.)

    image-20230130100224321

    Select a sample point first and press Delete key to delete it.

    After deleting the centered sample point:

    delete

    Simulate the change of the input control by dragging the green square in the panel, observing whether the blend result is as expected in the Viewport. In addition, a prompt window containing current blend state information will pop up in the panel during the dragging. It will display the current input control. Press and hold the Ctrl key while dragging to view the blend weight details of each node, which will help us better analyze the causes of blend results.

    BlendSpaceMessage

    Using Nodes

    After creating a Blend Space, it can be used as a player in the Animation Tree, and you can enter a slot node of the Animation Tree. See Blend Space Nodes in Animation Trees for more details.

    image-20221121110948623