FAnimNode_LayeredBoneBlend

Layered blend (per bone); has dynamic number of blendposes that can blend per different bone sets.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

FAnimNode_Base

FAnimNode_LayeredBoneBlend

References

Module

AnimGraphRuntime

Header

/Engine/Source/Runtime/AnimGraphRuntime/Public/AnimNodes/AnimNode_LayeredBoneBlend.h

Include

#include "AnimNodes/AnimNode_LayeredBoneBlend.h"

Syntax

struct FAnimNode_LayeredBoneBlend : public FAnimNode_Base

Remarks

Layered blend (per bone); has dynamic number of blendposes that can blend per different bone sets.

Variables

Name Description

Public variable

FPoseLink

 

BasePose

The source pose

Public variable

bool

 

bBlendRootMotionBasedOnRootBone

Whether to incorporate the per-bone blend weight of the root bone when lending root motion

Public variable

bool

 

bHasRelevantPoses

Public variable

TArray< TObject...

 

BlendMasks

The blend masks to use for our layer inputs.

Public variable

ELayeredBoneBle...

 

BlendMode

Whether to use branch filters or a blend mask to specify an input pose per-bone influence

Public variable

TArray< FPoseLi...

 

BlendPoses

Each layer's blended pose

Public variable

TArray< float >

 

BlendWeights

The weights of each layer

Public variable

bool

 

bMeshSpaceRotationBlend

Whether to blend bone rotations in mesh space or in local space

Public variable

bool

 

bMeshSpaceScaleBlend

Whether to blend bone scales in mesh space or in local space

Protected variable

TArray< FPerBon...

 

CurrentBoneBlendWeights

Public variable

TEnumAsByte< en...

 

CurveBlendOption

How to blend the layers together

Protected variable

TArray< uint8 >

 

CurvePoseSourceIndices

Protected variable

TArray< FPerBon...

 

DesiredBoneBlendWeights

Transient data to handle weight and target weight this array changes based on required bones

Public variable

TArray< FInputB...

 

LayerSetup

Configuration for the parts of the skeleton to blend for each layer.

Public variable

int32

 

LODThreshold

Max LOD that this node is allowed to run For example if you have LODThreadhold to be 2, it will run until LOD 2 (based on 0 index) when the component LOD becomes 3, it will stop update/evaluate currently transition would be issue and that has to be re-visited

Protected variable

TArray< FPerBon...

 

PerBoneBlendWeights

Per-bone weights for the skeleton.

Protected variable

uint16

 

RequiredBonesSerialNumber

Serial number of the required bones container.

Protected variable

FGuid

 

SkeletonGuid

Guids for skeleton used to determine whether the PerBoneBlendWeights need rebuilding.

Protected variable

FGuid

 

VirtualBoneGuid

Guid for virtual bones used to determine whether the PerBoneBlendWeights need rebuilding.

Constructors

Name Description

Public function

FAnimNode_LayeredBoneBlend()

Functions

Name Description

Public function

void

 

AddPose()

Public function

void

 

InvalidateCachedBoneData()

Invalidates the cached bone data so it is recalculated the next time this node is updated.

Public function

void

 

InvalidatePerBoneBlendWeights()

Invalidate the cached per-bone blend weights from the skeleton.

Public function

void

 

RemovePose

(
    int32 PoseIndex
)

Overridden from FAnimNode_Base

Name Description

Public function Virtual

void

 

CacheBones_AnyThread

(
    const FAnimationCacheBonesContext&...
)

Called to cache any bones that this node needs to track (e.g. in a FBoneReference).

Public function Virtual

void

 

Evaluate_AnyThread

(
    FPoseContext& Output
)

Called to evaluate local-space bones transforms according to the weights set up in Update().

Public function Virtual

void

 

GatherDebugData

(
    FNodeDebugData& DebugData
)

Called to gather on-screen debug data. This is called on the game thread.

Public function Virtual Const

int32

 

GetLODThreshold()

Get the LOD threshold at which this node is enabled.

Public function Virtual

void

 

Initialize_AnyThread

(
    const FAnimationInitializeContext&...
)

Called when the node first runs.

Public function Virtual

void

 

Update_AnyThread

(
    const FAnimationUpdateContext& Con...
)

Called to update the state of the graph relative to this node.