UDebugSkelMeshComponent

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

UnrealEd

Header

/Engine/Source/Editor/UnrealEd/Classes/Animation/DebugSkelMeshComponent.h

Include

#include "Animation/DebugSkelMeshComponent.h"

Syntax

class UDebugSkelMeshComponent : public USkeletalMeshComponent

Variables

Name Description

Public variable

TArray< FTransf...

 

AdditiveBasePoses

Storage of Additive Base Pose for when bDisplayAdditiveBasePose == true, as they have to be calculated

Public variable

TArray< FAnimNo...

 

AnimNotifyErrors

Public variable

TArray< FTransf...

 

BakedAnimationPoses

Storage of Baked Animation Pose for when bDisplayBakedAnimation == true, as they have to be calculated

Public variable

bool

 

bClothCullBackface

Public variable

bool

 

bClothFlipNormal

Public variable

uint32: 1

 

bDisplayAdditiveBasePose

Display additive base bone transform

Public variable

uint32: 1

 

bDisplayBakedAnimation

Display baked animation pose

Public variable

bool

 

bDisplayBound

Display Bound

Public variable

uint32: 1

 

bDisplayNonRetargetedPose

Display non retargeted animation pose

Public variable

uint32: 1

 

bDisplayRawAnimation

Display raw animation bone transform

Public variable

uint32: 1

 

bDisplaySourceAnimation

Display source animation pose

Public variable

bool

 

bDisplayVertexColors

Public variable

uint32: 1

 

bDrawBinormals

Vertex binormal viewing

Public variable

uint32: 1

 

bDrawBoneInfluences

Bone influences viewing

Public variable

uint32: 1

 

bDrawMesh

Holds onto the bone color that will be used to render the bones of its skeletal mesh If true then the skeletal mesh associated with the component is drawn.

Public variable

uint32: 1

 

bDrawMorphTargetVerts

Morphtarget viewing

Public variable

uint32: 1

 

bDrawNormals

Vertex normal viewing

Public variable

uint32: 1

 

bDrawSockets

Socket hit points viewing

Public variable

uint32: 1

 

bDrawTangents

Vertex tangent viewing

Public variable

bool

 

bIsUsingInGameBounds

Does this component use in game bounds or does it use bounds calculated from bones

Public variable

bool

 

bIsUsingPreSkinnedBounds

Does this component use pre-skinned bounds? This overrides other bounds settings

Public variable

uint32: 1

 

bMeshSocketsVisible

Mesh sockets visible?

Public variable

TArray< int32 >

 

BonesOfInterest

Array of bones to render bone weights for

Public variable

bool

 

bPauseClothingSimulationWithAnim

Public variable

bool

 

bPerformSingleClothingTick

Base skel mesh has support for suspending clothing, but single ticks are more of a debug feature when stepping through an animation So we control that using this flag

Public variable

uint32: 1

 

bPreviewRootMotion

Public variable

uint32: 1

 

bRenderRawSkeleton

If true, render a wireframe skeleton of the mesh animated with the raw (uncompressed) animation data.

Public variable

uint32: 1

 

bShowBoneNames

If true then the bone names associated with the skeletal mesh are displayed

Public variable

uint32: 1

 

bShowClothData

Public variable

uint32: 1

 

bSkeletonSocketsVisible

Skeleton sockets visible?

Public variable

FBoxSphereBound...

 

CachedClothBounds

Bounds computed from cloth.

Public variable

float

 

ClothMeshOpacity

Public variable

float

 

MaxClothPropertyView

Public variable

float

 

MinClothPropertyView

Public variable

TArray< class U...

 

MorphTargetOfInterests

Array of morphtargets to render verts for

Public variable

TArray< FTransf...

 

NonRetargetedSpaceBases

Storage for non retargeted pose.

Public variable

UAnimPreviewIns...

 

PreviewInstance

Public variable

UAnimInstance &...

 

SavedAnimScriptInstance

Public variable

FGuid

 

SelectedClothingGuidForPainting

The currently selected asset guid if we're painting, used to build dynamic mesh to paint sim parameters

Public variable

int32

 

SelectedClothingLodForPainting

The currently selected LOD for painting

Public variable

int32

 

SelectedClothingLodMaskForPainting

The currently selected mask inside the above LOD to be painted

Public variable

TArray< class U...

 

SkelMaterials

Array of materials to restore when not rendering blend weights

Public variable

TArray< FVector...

 

SkinnedSelectedClothingNormals

Public variable

TArray< FVector...

 

SkinnedSelectedClothingPositions

Public variable

TArray< FTransf...

 

SourceAnimationPoses

Storage of Source Animation Pose for when bDisplaySourceAnimation == true, as they have to be calculated

Public variable

EPersonaTurnTab...

 

TurnTableMode

Current turn table mode

Public variable

float

 

TurnTableSpeedScaling

Current turn table speed scaling

Public variable

TArray< FTransf...

 

UncompressedSpaceBases

Non Compressed SpaceBases for when bDisplayRawAnimation == true

Constructors

Name Description

Public function

UDebugSkelMeshComponent

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function

bool

 

CheckIfBoundsAreCorrrect()

Test if in-game bounds are as big as preview bounds

Public function

void

 

ConsumeRootMotion

(
    const FVector& FloorMin,
    const FVector& FloorMax
)

Update components position based on animation root motion

Public function

void

 

EnablePreview

(
    bool bEnable,
    UAnimationAsset* PreviewAsset
)

Public function Virtual Const

const TArray...

 

GetDrawBoneIndices()

Return bone indices to draw

Public function Virtual Const

FTransform

 

GetDrawTransform

(
    int32 BoneIndex
)

Returns the transform of the joint

Public function Const

const TArray...

 

GetExtendedViewportTextDelegates()

Public function

IClothingSim...

 

GetMutableClothingSimulation()

To normal game/runtime code we don't want to expose a non-const pointer to the simulation, so we can only get one from this editor-only component.

Public function Virtual Const

int32

 

GetNumDrawTransform()

Public function Const

bool

 

GetPreviewRootMotion()

Get whether we should be previewing root motion

Public function Const

FString

 

GetPreviewText()

Public function Virtual Const

const FRefer...

 

GetReferenceSkeleton()

Return RefSkeleton for drawing;

Public function Const

bool

 

IsPreviewOn()

Preview.

Public function Virtual Const

bool

 

IsReferencePoseShown()

Public function Const

bool

 

IsUsingInGameBounds()

Does it use in-game bounds or bounds calculated from bones

Public function Const

bool

 

IsUsingPreSkinnedBounds()

Does it use pre-skinned bounds

Public function

void

 

RebuildClothingSectionsFixedVerts()

Rebuilds the fixed parameter on the mesh to mesh data, to be used if the editor has changed a vert to be fixed or unfixed otherwise the simulation will not work

Public function

void

 

RefreshSelectedClothingSkinnedPositions()

Public function

FDelegateHan...

 

RegisterExtendedViewportTextDelegate

(
    const FGetExtendedViewportText& In...
)

Extended viewport text delegate handling.

Public function

void

 

ResetMeshSectionVisibility()

Fixes up the disabled flags so clothing is enabled and originals are disabled as ToggleMeshSectionForCloth will make these get out of sync

Public function

void

 

RestoreClothSectionsVisibility()

Restore all section visibilities to original states for all LODs

Public function Virtual

void

 

SetCustomDefaultPose()

Define Custom Default pose for this component for preview

Public function

void

 

SetMeshSectionVisibilityForCloth

(
    FGuid InClothGuid,
    bool bVisibility
)

Find a section using a clothing asset with the given GUID and set its visiblity

Public function

void

 

SetPreviewRootMotion

(
    bool bInPreviewRootMotion
)

Set whether we should be previewing root motion.

Public function

void

 

SetShowBoneWeight

(
    bool bNewShowBoneWeight
)

Update material information depending on color render mode Refresh/replace materials

Public function

void

 

SetShowClothProperty

(
    bool bState
)

Sets the flag used to determine whether or not the current active cloth sim mesh should be rendered

Public function

void

 

SetShowMorphTargetVerts

(
    bool bNewShowMorphTargetVerts
)

Update material information depending on color render mode Refresh/replace materials

Public function Virtual

void

 

ShowReferencePose

(
    bool bRefPose
)

Reference pose for this component we don't want to use default refpose because you still want to move joint when this mode is on

Public function

void

 

ToggleClothSectionsVisibility

(
    bool bShowOnlyClothSections
)

Toggle visibility between cloth sections and non-cloth sections for all LODs if bShowOnlyClothSections is true, shows only cloth sections.

Public function

void

 

UnregisterExtendedViewportTextDelegate

(
    const FDelegateHandle& InDelegateH...
)

Public function

void

 

UseInGameBounds

(
    bool bUseInGameBounds
)

Set to use in-game bounds or bounds calculated from bones

Public function

void

 

UsePreSkinnedBounds

(
    bool bUsePreSkinnedBounds
)

Set to use pre-skinned bounds

Overridden from USkeletalMeshComponent

Name Description

Public function Virtual

void

 

CheckClothTeleport()

To avoid clothing reset while modifying properties in Persona

Public function Virtual

void

 

ClearAnimNotifyErrors

(
    UObject* InSourceNotify
)

Clears currently stored errors. Call before triggering anim notifies for a particular mesh.

Public function Virtual

void

 

InitAnim

(
    bool bForceReinit
)

Animation

Public function Virtual Const

bool

 

IsWindEnabled()

Public function Virtual

void

 

ReportAnimNotifyError

(
    const FText& Error,
    UObject* InSourceNotify
)

Subclasses such as DebugSkelMeshComponent keep track of errors in the anim notifies so they can be displayed to the user.

Public function Virtual

void

 

SetAnimClass

(
    UClass* NewClass
)

Set the anim instance class.

Protected function Virtual Const

bool

 

ShouldRunClothTick()

Overridden to support single clothing ticks.

Overridden from USkinnedMeshComponent

Name Description

Public function Virtual Const

int32

 

GetLODBias()

Get the LOD Bias of this component

Public function Virtual

void

 

PostInitMeshObject

(
    FSkeletalMeshObject*
)

Function to operate on mesh object after its created, but before it's attached.

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

bool

 

ShouldCPUSkin()

Function returns whether or not CPU skinning should be applied Allows the editor to override the skinning state for editor tools

Overridden from UPrimitiveComponent

Name Description

Public function Virtual

FPrimitiveSc...

 

CreateSceneProxy()

Creates a proxy to represent the primitive to the scene manager in the rendering thread.

Public function Virtual Const

void

 

GetUsedMaterials

(
    TArray< UMaterialInterface* > ...,
    bool bGetDebugMaterials
)

Retrieves the materials used in this component

Public function Virtual Const

bool

 

ShouldRenderSelected()

Engine only draw bounds IF selected

Overridden from USceneComponent

Name Description

Public function Virtual Const

FBoxSphereBo...

 

CalcBounds

(
    const FTransform& LocalToWorld
)

Calculate the bounds of the component. Default behavior is a bounding box/sphere of zero size.

Overridden from UActorComponent

Name Description

Protected function Virtual

void

 

SendRenderDynamicData_Concurrent()

Called to send dynamic data for this component to the rendering thread

Public function Virtual

void

 

TickComponent

(
    float DeltaTime,
    enum ELevelTick TickType,
    FActorComponentTickFunction* T...
)

Function called every frame on this ActorComponent.

Classes

Name

Description

Public struct

FAnimNotifyErrors

TODO - This is a really poor way to post errors to the user. Work out a better way.

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback