UPoseableMeshComponent

[UPoseableMeshComponent](API\Runtime\Engine\Components\UPoseableMeshComponent) that allows bone transforms to be driven by blueprint.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Components/PoseableMeshComponent.h

Include

#include "Components/PoseableMeshComponent.h"

Syntax

class UPoseableMeshComponent : public USkinnedMeshComponent

Remarks

UPoseableMeshComponent that allows bone transforms to be driven by blueprint.

Variables

Name Description

Public variable

TArray< FTransf...

 

BoneSpaceTransforms

Temporary array of local-space (ie relative to parent bone) rotation/translation/scale for each bone.

Public variable

FBoneContainer

 

RequiredBones

Constructors

Name Description

Public function

UPoseableMeshComponent

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

void

 

CopyPoseFromSkeletalComponent

(
    USkeletalMeshComponent* InComp...
)

Public function

void

 

FillComponentSpaceTransforms()

Take the BoneSpaceTransforms array (translation vector, rotation quaternion and scale vector) and update the array of component-space bone transformation matrices (SpaceBases).

Public function

FVector

 

GetBoneLocationByName

(
    FName BoneName,
    EBoneSpaces::Type BoneSpace
)

Public function

FRotator

 

GetBoneRotationByName

(
    FName BoneName,
    EBoneSpaces::Type BoneSpace
)

Public function

FVector

 

GetBoneScaleByName

(
    FName BoneName,
    EBoneSpaces::Type BoneSpace
)

Public function Const

const TArray...

 

GetBoneSpaceTransforms()

We need this for template function in the cpp skeletalmeshcomponent hides this property, so now creating extra getter for poseablemeshcomponent although it's fine for poseablemeshcomponent to have this as external

Public function

FTransform

 

GetBoneTransformByName

(
    FName BoneName,
    EBoneSpaces::Type BoneSpace
)

Public function Const

bool

 

IsRunningParallelEvaluation()

Public function

void

 

MarkRefreshTransformDirty()

Public function

void

 

ResetBoneTransformByName

(
    FName BoneName
)

Public function

void

 

SetBoneLocationByName

(
    FName BoneName,
    FVector InLocation,
    EBoneSpaces::Type BoneSpace
)

Public function

void

 

SetBoneRotationByName

(
    FName BoneName,
    FRotator InRotation,
    EBoneSpaces::Type BoneSpace
)

Public function

void

 

SetBoneScaleByName

(
    FName BoneName,
    FVector InScale3D,
    EBoneSpaces::Type BoneSpace
)

Public function

void

 

SetBoneTransformByName

(
    FName BoneName,
    const FTransform& InTransform,
    EBoneSpaces::Type BoneSpace
)

Overridden from USkinnedMeshComponent

Name Description

Public function Virtual

bool

 

AllocateTransformData()

Allocate Transform Data array including SpaceBases, BoneVisibilityStates

Public function Virtual

void

 

RefreshBoneTransforms

(
    FActorComponentTickFunction* T...
)

Update functions Refresh Bone Transforms Each class will need to implement this function Ideally this function should be atomic (not relying on Tick or any other update.)

Public function Virtual Const

bool

 

ShouldUpdateTransform

(
    bool bLODHasChanged
)

Should update transform in Tick

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss