USkeletalMesh

SkeletalMesh is geometry bound to a hierarchical skeleton of bones which can be animated for the purpose of deforming the mesh.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Engine/SkeletalMesh.h

Include

#include "Engine/SkeletalMesh.h"

Syntax

class USkeletalMesh :
    public UStreamableRenderAsset,
    public IInterface_CollisionDataProvider,
    public IInterface_AssetUserData,
    public INodeMappingProviderInterface

Remarks

SkeletalMesh is geometry bound to a hierarchical skeleton of bones which can be animated for the purpose of deforming the mesh. Skeletal Meshes are built up of two parts; a set of polygons composed to make up the surface of the mesh, and a hierarchical skeleton which can be used to animate the polygons. The 3D models, rigging, and animations are created in an external modeling and animation application (3DSMax, Maya, Softimage, etc).

Variables

Name Description

Protected variable

TArray< UAssetU...

 

AssetUserData

Array of user data stored with the asset

Public variable

uint8: 1

 

bSupportRayTracing

If true, a ray tracing acceleration structure will be built for this mesh and it may be used in ray tracing effects

Protected variable

FVector

 

NegativeBoundsExtension

Bound extension values in addition to imported bound in the negative direction of XYZ, positive value increases bound size and negative value decreases bound size.

Protected variable

FOnMeshChanged

 

OnMeshChanged

Protected variable

FVector

 

PositiveBoundsExtension

The properties below are protected to force the use of the Set* methods for this data in code so we can keep the extended bounds up to date after changing the data.

Public variable

FRenderCommandF...

 

ReleaseResourcesFence

A fence which is used to keep track of the rendering thread releasing the static mesh resources.

Protected variable

FSkeletalMeshSa...

 

SamplingInfo

Defines if and how to generate a set of precomputed data allowing targeted and fast sampling of this mesh on the CPU.

Protected variable

TArray< FSkinWe...

 

SkinWeightProfiles

Set of skin weight profiles associated with this mesh

Constructors

Name Description

Public function

USkeletalMesh

(
    const FObjectInitializer& ObjectIn...
)

Public function

USkeletalMesh

(
    FVTableHelper& Helper
)

This is declared so we can use TUniquePtr with just a forward declare of that class.

Destructors

Name Description

Public function

~USkeletalMesh()

Functions

Name Description

Public function

void

 

AddBoneToReductionSetting

(
    int32 LODIndex,
    FName BoneName
)

Public function

void

 

AddBoneToReductionSetting

(
    int32 LODIndex,
    const TArray< FName >& BoneNames
)

Public function

void

 

AddClothingAsset

(
    UClothingAssetBase* InNewAsset
)

Adds an asset to this mesh with validation and event broadcast

Public function

void

 

AddLODInfo

(
    const FSkeletalMeshLODInfo& NewLOD...
)

Add New LOD info entry with entry

This is used by import code, where they want to override this

Public function

FSkeletalMes...

 

AddLODInfo()

Add New LOD info entry to LODInfo array

Public function

void

 

AddSkinWeightProfile

(
    const FSkinWeightProfileInfo& Prof...
)

Public function

void

 

AllocateResourceForRendering()

Allocate a new FSkeletalMeshRenderData and assign to SkeletalMeshRenderData member.

Public function

void

 

Build()

If derive data cache key do not match, regenerate derived data and re-create any render state based on that.

Public function

void

 

BuildPhysicsData()

Trigger a physics build to ensure per poly collision is created

Public function

void

 

CalculateExtendedBounds()

Calculate the extended bounds based on the imported bounds and the extension values

Public function

void

 

CalculateInvRefMatrices()

Setup-only routines - not concerned with the instance.

Public function Static

void

 

CalculateRequiredBones

(
    FSkeletalMeshLODModel& LODModel,
    const FReferenceSkeleton& RefSkele...,
    const TMap< FBoneIndexType, FBoneIn...
)

Calculate the required bones for a Skeletal Mesh LOD, including possible extra influences

Public function Static

void

 

CancelAllPendingStreamingActions()

Cancels any pending static mesh streaming actions if possible.

Public function Const

bool

 

ComputeActiveClothingAssets()

Compute whether or not any bound clothing assets exist for this mesh

Public function

void

 

ConvertLegacyLODScreenSize()

Convert legacy screen size (based on fixed resolution) into screen size (diameter in screen units)

Public function Static

void

 

CopyImportedData

(
    int32 SrcLODIndex,
    USkeletalMesh* SrcSkeletalMesh,
    int32 DestLODIndex,
    USkeletalMesh* DestSkeletalMes...
)

Static function that copy the LOD import data from a source s^keletal mesh to a destination skeletal mesh

Public function

void

 

CopyMirrorTableFrom

(
    USkeletalMesh* SrcMesh
)

Utility for copying and converting a mirroring table from another USkeletalMesh.

Public function

void

 

CreateBodySetup()

Public function

void

 

DebugVerifySkeletalMeshLOD()

Verify SkeletalMeshLOD is set up correctly

Public function

void

 

EmptyAllImportData()

Remove the import data for all the LODs

Public function

void

 

EmptyLODImportData

(
    const int32 LODIndex
)

Remove the import data for the specified LOD

Public function Const

void

 

ExportMirrorTable

(
    TArray< FBoneMirrorExport >& Mirro...
)

Utility for copying and converting a mirroring table from another SkeletalMesh.

Public function Const

UMorphTarget...

 

FindMorphTarget

(
    FName MorphTargetName
)

Find a named MorphTarget from the MorphSets array in the SkinnedMeshComponent.

Public function Const

UMorphTarget...

 

FindMorphTargetAndIndex

(
    FName MorphTargetName,
    int32& OutIndex
)

Find a named MorphTarget from the MorphSets array in the SkinnedMeshComponent.

Public function Const

USkeletalMes...

 

FindSocket

(
    FName InSocketName
)

Find a socket object in this SkeletalMesh by name.

Public function Const

USkeletalMes...

 

FindSocketAndIndex

(
    FName InSocketName,
    int32& OutIndex
)

Find a socket object in this SkeletalMesh by name.

Public function Const

USkeletalMes...

 

FindSocketInfo

(
    FName InSocketName,
    FTransform& OutTransform,
    int32& OutBoneIndex,
    int32& OutIndex
)

Find a socket object and asscociated info in this SkeletalMesh by name.

Public function

void

 

FlushRenderState()

Flush current render state

Public function

void

 

ForceBulkDataResident

(
    const int32 LODIndex
)

Public function Const

TArray< USke...

 

GetActiveSocketList()

Returns the "active" socket list - all sockets from this mesh plus all non-duplicates from the skeleton Const ref return value as this cannot be modified externally

Public function Const

UAssetImport...

 

GetAssetImportData()

Public function Static

FName

 

GetAssetImportDataMemberName()

Public function Const

const UAnimS...

 

GetBakePose

(
    int32 LODIndex
)

Get BakePose for the given LOD

Public function Static

FName

 

GetbHasVertexColorsMemberName()

Public function Const

UBodySetup &...

 

GetBodySetup()

Public function Static

FName

 

GetBodySetupMemberName()

Public function Const

FBoxSphereBo...

 

GetBounds()

Get the extended bounds of this mesh (imported bounds plus bounds extension)

Public function Const

UClothingAss...

 

GetClothingAsset

(
    const FGuid& InAssetGuid
)

Get a clothing asset from its associated GUID (returns nullptr if no match is found)

Public function Const

int32

 

GetClothingAssetIndex

(
    UClothingAssetBase* InAsset
)

Get the index in the clothing asset array for a given asset (INDEX_NONE if InAsset isn't in the array)

Public function Const

int32

 

GetClothingAssetIndex

(
    const FGuid& InAssetGuid
)

Get the index in the clothing asset array for a given asset GUID (INDEX_NONE if there is no match)

Public function Const

void

 

GetClothingAssetsInUse

(
    TArray< UClothingAssetBase* > ...
)

Populates OutClothingAssets with all clothing assets that are mapped to sections in the mesh.

Public function Const

FMatrix

 

GetComposedRefPoseMatrix

(
    FName InBoneName
)

Get the component orientation of a bone or socket. Transforms by parent bones.

Public function Const

FMatrix

 

GetComposedRefPoseMatrix

(
    int32 InBoneIndex
)

Get the component orientation of a bone or socket. Transforms by parent bones.

Public function Const

TSoftObjectP...

 

GetDefaultAnimatingRig()

Public function Static

FName

 

GetDefaultAnimatingRigMemberName()

Public function Const

const FVecto...

 

GetDefaultEditorCameraLocation()

Public function Static

FName

 

GetDefaultEditorCameraLocationMemberName()

Public function Const

const FVecto...

 

GetDefaultEditorCameraLookAt()

Public function Static

FName

 

GetDefaultEditorCameraLookAtMemberName()

Public function Const

float

 

GetDefaultEditorCameraOrthoZoom()

Public function Static

FName

 

GetDefaultEditorCameraOrthoZoomMemberName()

Public function Const

const FRotat...

 

GetDefaultEditorCameraRotation()

Public function Static

FName

 

GetDefaultEditorCameraRotationMemberName()

Public function Const

const USkele...

 

GetDefaultLODSetting()

Get Default LOD Setting of this mesh

Public function

FString

 

GetDerivedDataKey()

Generate the derived data key used to fetch derived data

Public function Const

const FPerPl...

 

GetDisableBelowMinLodStripping()

Public function Static

FName

 

GetDisableBelowMinLodStrippingMemberName()

Public function Const

bool

 

GetEnablePerPolyCollision()

Public function Static

FName

 

GetEnablePerPolyCollisionMemberName()

Public function Const

float

 

GetFloorOffset()

Public function Static

FName

 

GetFloorOffsetMemberName()

Public function Static

FName

 

GetHasActiveClothingAssetsMemberName()

Public function Const

bool

 

GetHasBeenSimplified()

Public function Static

FName

 

GetHasBeenSimplifiedMemberName()

Public function Const

bool

 

GetHasCustomDefaultEditorCamera()

Public function Static

FName

 

GetHasCustomDefaultEditorCameraMemberName()

Public function Const

bool

 

GetHasVertexColors()

Public function Const

FBoxSphereBo...

 

GetImportedBounds()

Get the original imported bounds of the skel mesh

Public function Const

FSkeletalMes...

 

GetImportedModel()

End USkeletalMeshEditorData public skeletalmesh API.

Public function Const

void

 

GetLODImportedDataVersions

(
    const int32 LODIndex,
    ESkeletalMeshGeoImportVersions& Ou...,
    ESkeletalMeshSkinningImportVersions...
)

Get the Versions of the geo and skinning data.

Public function

FSkeletalMes...

 

GetLODInfo

(
    int32 Index
)

Get LODInfo of the given index non-const

Public function Const

const FSkele...

 

GetLODInfo

(
    int32 Index
)

Get LODInfo of the given index const

Public function Const

const TArray...

 

GetLODInfoArray()

Returns whole array of LODInfo const

Public function

TArray< FSke...

 

GetLODInfoArray()

Returns whole array of LODInfo non-const

Public function Const

int32

 

GetLODNum()

Returns total number of LOD

Public function Const

const USkele...

 

GetLODSettings()

Public function

USkeletalMes...

 

GetLODSettings()

Public function Static

FName

 

GetLODSettingsMemberName()

Public function

TArray< FSke...

 

GetMaterials()

Public function Const

const TArray...

 

GetMaterials()

Public function Static

FName

 

GetMaterialsMemberName()

Public function Const

const FPerPl...

 

GetMaxNumOptionalLODs()

Public function Const

int32

 

GetMaxNumOptionalLODs

(
    const ITargetPlatform* TargetP...
)

Get the maximum number of optional LODs.

Public function Static

FName

 

GetMaxNumOptionalLODsMemberName()

Public function Const

const FPerPl...

 

GetMaxNumStreamedLODs()

Public function Const

int32

 

GetMaxNumStreamedLODs

(
    const ITargetPlatform* TargetP...
)

Get the maximum number of LODs that can be streamed.

Public function Static

FName

 

GetMaxNumStreamedLODsMemberName()

Public function Const

const TArray...

 

GetMeshClothingAssets()

Public function

TArray< UClo...

 

GetMeshClothingAssets()

Public function Static

FName

 

GetMeshClothingAssetsMemberName()

Public function Const

const TArray...

 

GetMeshOnlySocketList()

Const version Returns the mesh only socket list - this ignores any sockets in the skeleton Return value is a non-const reference so the socket list can be changed

Public function

TArray< USke...

 

GetMeshOnlySocketList()

Returns the mesh only socket list - this ignores any sockets in the skeleton Return value is a non-const reference so the socket list can be changed

Public function Const

const FPerPl...

 

GetMinLod()

Public function Static

FName

 

GetMinLodMemberName()

Public function Const

bool

 

GetMipDataFilename

(
    const int32 MipIndex,
    FString& OutBulkDataFilename
)

Public function

TMap< FName,...

 

GetMorphTargetIndexMap()

Public function Const

const TMap< ...

 

GetMorphTargetIndexMap()

Public function Static

FName

 

GetMorphTargetIndexMapMemberName()

Public function

TArray< UMor...

 

GetMorphTargets()

Public function Const

const TArray...

 

GetMorphTargets()

Public function Static

FName

 

GetMorphTargetsMemberName()

Public function Const

const FVecto...

 

GetNegativeBoundsExtension()

Get bound extension values in the negative direction of XYZ

Public function Const

UNodeMapping...

 

GetNodeMappingContainer

(
    UBlueprint* SourceAsset
)

Public function

TArray< clas...

 

GetNodeMappingData()

Public function Const

const TArray...

 

GetNodeMappingData()

Public function Static

FName

 

GetNodeMappingDataMemberName()

Public function Const

int32

 

GetNumSkinWeightProfiles()

Public function

FOnMeshChang...

 

GetOnMeshChanged()

Public function Const

const FOnMes...

 

GetOnMeshChanged()

Public function Const

bool

 

GetOverrideLODStreamingSettings()

Public function Static

FName

 

GetOverrideLODStreamingSettingsMemberName()

Public function Const

UPhysicsAsse...

 

GetPhysicsAsset()

Public function Static

FName

 

GetPhysicsAssetMemberName()

Public function Const

const FVecto...

 

GetPositiveBoundsExtension()

Get bound extension values in the positive direction of XYZ

Public function

int32

 

GetPostEditChangeStackCounter()

Public function Const

TSubclassOf<...

 

GetPostProcessAnimBlueprint()

Public function Static

FName

 

GetPostProcessAnimBlueprintMemberName()

Public function

FPreviewAsse...

 

GetPreviewAttachedAssetContainer()

Public function Const

const FPrevi...

 

GetPreviewAttachedAssetContainer()

Public function Const

FSkeletalMes...

 

GetReductionSettings

(
    int32 LODIndex
)

Get a copy of the reduction settings for a specified LOD index.

Public function Const

const TArray...

 

GetRefBasesInvMatrix()

Public function

TArray< FMat...

 

GetRefBasesInvMatrix()

Public function Static

FName

 

GetRefBasesInvMatrixMemberName()

Public function Const

FMatrix

 

GetRefPoseMatrix

(
    int32 BoneIndex
)

Public function Const

const FRefer...

 

GetRefSkeleton()

Public function

FReferenceSk...

 

GetRefSkeleton()

Public function Static

FName

 

GetRefSkeletonMemberName()

Public function Const

bool

 

GetRequiresLODHysteresisConversion()

Public function Const

bool

 

GetRequiresLODScreenSizeConversion()

Public function Const

FSkeletalMes...

 

GetResourceForRendering()

Get the data to use for rendering.

Public function Const

const TArray...

 

GetRetargetBasePose()

Public function

TArray< FTra...

 

GetRetargetBasePose()

Public function Static

FName

 

GetRetargetBasePoseMemberName()

Public function Const

const FSkele...

 

GetSamplingInfo()

Public function

UClothingAss...

 

GetSectionClothingAsset

(
    int32 InLodIndex,
    int32 InSectionIndex
)

Given an LOD and section index, retrieve a clothing asset bound to that section.

Public function Const

const UCloth...

 

GetSectionClothingAsset

(
    int32 InLodIndex,
    int32 InSectionIndex
)

Given an LOD and section index, retrieve a clothing asset bound to that section.

Public function Const

UPhysicsAsse...

 

GetShadowPhysicsAsset()

Public function Static

FName

 

GetShadowPhysicsAssetMemberName()

Public function

USkeleton &#...

 

GetSkeleton()

Public function Const

const USkele...

 

GetSkeleton()

Public function Static

FName

 

GetSkeletonMemberName()

Public function Const

TEnumAsByte<...

 

GetSkelMirrorAxis()

Public function Static

FName

 

GetSkelMirrorAxisMemberName()

Public function Const

TEnumAsByte<...

 

GetSkelMirrorFlipAxis()

Public function Static

FName

 

GetSkelMirrorFlipAxisMemberName()

Public function Const

const TArray...

 

GetSkelMirrorTable()

Public function

TArray< stru...

 

GetSkelMirrorTable()

Public function Static

FName

 

GetSkelMirrorTableMemberName()

Public function Const

const TArray...

 

GetSkinWeightProfiles()

Public function

TArray< FSki...

 

GetSkinWeightProfiles()

Public function Const

USkeletalMes...

 

GetSocketByIndex

(
    int32 Index
)

Returns a socket by index.

Public function Static

FText

 

GetSourceFileLabelFromIndex

(
    int32 SourceFileIndex
)

Public function Const

const FPerPl...

 

GetSupportLODStreaming()

Public function Static

FName

 

GetSupportLODStreamingMemberName()

Public function Const

bool

 

GetSupportsLODStreaming

(
    const ITargetPlatform* TargetP...
)

Get whether this mesh use LOD streaming.

Public function Const

UThumbnailIn...

 

GetThumbnailInfo()

Public function Static

FName

 

GetThumbnailInfoMemberName()

Public function Const

bool

 

GetUseLegacyMeshDerivedDataKey()

Public function Static

FName

 

GetUseLegacyMeshDerivedDataKeyMemberName()

Public function Const

const FMeshU...

 

GetUVChannelData

(
    int32 MaterialIndex
)

Returns the UV channel data for a given material index.

Public function Const

uint32

 

GetVertexBufferFlags()

Computes flags for building vertex buffers.

Public function Const

TMap< FVecto...

 

GetVertexColorData

(
    const uint32 PaintingMeshLODIndex
)

Returns vertex color data by position.

Public function Const

FGuid

 

GetVertexColorGuid()

Public function Static

FName

 

GetVertexColorGuidMemberName()

Public function Const

bool

 

HasActiveClothingAssets()

Get whether or not any bound clothing assets exist for this mesh

Public function Const

bool

 

HasActiveClothingAssetsForLOD

(
    int32 LODIndex
)

Get whether or not any bound clothing assets exist for this mesh's given LOD

Public function Virtual Const

bool

 

HasCustomActorFactory()

This is a bit hacky.

Public function Virtual Const

bool

 

HasCustomActorReimportFactory()

This is a bit hacky.

Public function

void

 

ImportMirrorTable

(
    const TArray< FBoneMirrorExport >&...
)

Utility for copying and converting a mirroring table from another SkeletalMesh.

Public function

void

 

InitBoneMirrorInfo()

Allocate and initialise bone mirroring table for this skeletal mesh.

Public function

void

 

InitMorphTargets()

Initialize MorphSets look up table : MorphTargetIndexMap

Public function

void

 

InitMorphTargetsAndRebuildRenderData()

Initialize morph targets and rebuild the render data

Public function

void

 

InitResources()

Initialize the mesh's render resources.

Public function

void

 

InvalidateDeriveDataCacheGUID()

Force the creation of a new GUID use to build the derive data cache key.

Public function Const

bool

 

IsLODImportedDataBuildAvailable

(
    const int32 LODIndex
)

Return true if the imported data has all the necessary data to use the skeletalmesh builder.

Public function Const

bool

 

IsLODImportedDataEmpty

(
    const int32 LODIndex
)

Return true if the imported data is present.

Public function Const

bool

 

IsReductionActive

(
    int32 LODIndex
)

Return true if the reduction settings are setup to reduce a LOD

Public function Const

bool

 

IsSectionUsingCloth

(
    int32 InSectionIndex,
    bool bCheckCorrespondingSections
)

Checks whether the provided section is using APEX cloth.

Public function Const

bool

 

IsValidLODIndex

(
    int32 Index
)

Return true if given index's LOD is valid

Public function Const

TArray< FStr...

 

K2_GetAllMorphTargetNames()

Returns the list of all morph targets of this skeletal mesh

Public function Const

void

 

LoadLODImportedData

(
    const int32 LODIndex,
    FSkeletalMeshImportData& OutMesh
)

USkeletalMeshEditorData public skeletalmesh API We do not want skeletal mesh client to use directly the asset(function GetMeshEditorData) We have to maintain some sync between the LODModels and the asset to avoid loading the asset when building the DDC key.

Public function Const

bool

 

MirrorTableIsGood

(
    FString& ProblemBones
)

Utility for checking that the bone mirroring table of this mesh is good.

Public function Const

bool

 

NeedCPUData

(
    int32 LODIndex
)

True if this mesh LOD needs to keep it's data on CPU.

Public function Const

int32

 

NumSockets()

Returns the number of sockets available. Both on this mesh and it's skeleton.

Public function

FOnPostMeshC...

 

OnPostMeshCached()

Get multicast delegate broadcast post to mesh data caching

Public function

void

 

ReallocateRetargetBasePose()

Recalculate Retarget Base Pose BoneTransform

Public function

void

 

RebuildSocketMap()

Called to rebuild an out-of-date or invalid socket map

Public function

bool

 

RegisterMorphTarget

(
    UMorphTarget* MorphTarget,
    bool bInvalidateRenderData
)

If name conflicts, it will overwrite the reference

Public function

FDelegateHan...

 

RegisterOnClothingChange

(
    const FSimpleMulticastDelegate::FDe...
)

Delegates for asset editor events

Public function

void

 

ReleaseCPUResources()

Release CPU access version of buffer

Public function

void

 

ReleaseResources()

Releases the mesh's render resources.

Public function

void

 

ReleaseSkinWeightProfileResources()

Releases all allocated Skin Weight Profile resources, assumes none are currently in use

Public function

void

 

RemoveClothingAsset

(
    int32 InLodIndex,
    int32 InSectionIndex
)

If the given section of the specified LOD has a clothing asset, unbind it's data and remove it from the asset array

Public function

void

 

RemoveLegacyClothingSections()

Clothing used to require the original section to be hidden and duplicated to a new rendered section.

Public function

void

 

RemoveLODInfo

(
    int32 Index
)

Remove LOD info of given index

Public function

void

 

RemoveMeshSection

(
    int32 InLodIndex,
    int32 InSectionIndex
)

Removes a specified section from the skeletal mesh, this is a destructive action

Public function

void

 

ReserveLODImportData

(
    int32 MaxLODIndex
)

Allocate the space we need. Use this before calling this API in multithreaded.

Public function

void

 

ResetLODInfo()

Reset whole entry

Public function

void

 

SaveLODImportedData

(
    const int32 LODIndex,
    FSkeletalMeshImportData& InMesh
)

Fill the asset LOD entry with the InMesh.

Public function

void

 

SetAssetImportData

(
    UAssetImportData* InAssetImpor...
)

Public function

void

 

SetBodySetup

(
    UBodySetup* InBodySetup
)

Public function

void

 

SetDefaultAnimatingRig

(
    TSoftObjectPtr< UObject > InAnimati...
)

Public function

void

 

SetDefaultEditorCameraLocation

(
    FVector InDefaultEditorCameraLocati...
)

Public function

void

 

SetDefaultEditorCameraLookAt

(
    FVector InDefaultEditorCameraLookAt
)

Public function

void

 

SetDefaultEditorCameraOrthoZoom

(
    float InDefaultEditorCameraOrthoZoo...
)

Public function

void

 

SetDefaultEditorCameraRotation

(
    FRotator InDefaultEditorCameraRotat...
)

Public function

void

 

SetDisableBelowMinLodStripping

(
    FPerPlatformBool InDisableBelowMinL...
)

Public function

void

 

SetEnablePerPolyCollision

(
    bool bInEnablePerPolyCollision
)

Public function

void

 

SetFloorOffset

(
    float InFloorOffset
)

Public function

void

 

SetHasActiveClothingAssets

(
    const bool InbHasActiveClothingAsse...
)

Public function

void

 

SetHasBeenSimplified

(
    bool bInHasBeenSimplified
)

Public function

void

 

SetHasCustomDefaultEditorCamera

(
    bool bInHasCustomDefaultEditorCamer...
)

Public function

void

 

SetHasVertexColors

(
    bool InbHasVertexColors
)

Public function

void

 

SetImportedBounds

(
    const FBoxSphereBounds& InBounds
)

Set the original imported bounds of the skel mesh, will recalculate extended bounds

Public function

void

 

SetLODImportedDataVersions

(
    const int32 LODIndex,
    const ESkeletalMeshGeoImportVersion...,
    const ESkeletalMeshSkinningImportVe...
)

Set the Versions of the geo and skinning data.

Public function

void

 

SetLODSettings

(
    USkeletalMeshLODSettings* InLO...
)

Public function

void

 

SetMaterials

(
    const TArray< FSkeletalMaterial >&...
)

Public function

void

 

SetMaxNumOptionalLODs

(
    FPerPlatformInt InMaxNumOptionalLOD...
)

Public function

void

 

SetMaxNumStreamedLODs

(
    FPerPlatformInt InMaxNumStreamedLOD...
)

Public function

void

 

SetMeshClothingAssets

(
    const TArray< UClothingAssetBase&#...
)

Public function

void

 

SetMinLod

(
    FPerPlatformInt InMinLod
)

Public function

void

 

SetMorphTargetIndexMap

(
    const TMap< FName, int32 >& InMorp...
)

Public function

void

 

SetMorphTargets

(
    const TArray< UMorphTarget* > ...
)

Public function

void

 

SetNegativeBoundsExtension

(
    const FVector& InExtension
)

Set bound extension values in the negative direction of XYZ, positive value increases bound size

Public function

void

 

SetNodeMappingData

(
    const TArray< class UNodeMappingCon...
)

Public function

void

 

SetOverrideLODStreamingSettings

(
    bool bInOverrideLODStreamingSetting...
)

Public function

void

 

SetPhysicsAsset

(
    UPhysicsAsset* InPhysicsAsset
)

Public function

void

 

SetPositiveBoundsExtension

(
    const FVector& InExtension
)

Set bound extension values in the positive direction of XYZ, positive value increases bound size

Public function

void

 

SetPostEditChangeStackCounter

(
    int32 InPostEditChangeStackCounter
)

Public function

void

 

SetPostProcessAnimBlueprint

(
    TSubclassOf< UAnimInstance > InPost...
)

Public function

void

 

SetPreviewAttachedAssetContainer

(
    const FPreviewAssetAttachContainer ...
)

Public function

void

 

SetRefBasesInvMatrix

(
    const TArray< FMatrix >& InRefBase...
)

Public function

void

 

SetRefSkeleton

(
    const FReferenceSkeleton& InRefSke...
)

Public function

void

 

SetRequiresLODHysteresisConversion

(
    bool bInRequiresLODHysteresisConver...
)

Public function

void

 

SetRequiresLODScreenSizeConversion

(
    bool bInRequiresLODScreenSizeConver...
)

Public function

void

 

SetRetargetBasePose

(
    const TArray< FTransform >& InReta...
)

Public function

void

 

SetSamplingInfo

(
    const FSkeletalMeshSamplingInfo& I...
)

Public function

void

 

SetShadowPhysicsAsset

(
    UPhysicsAsset* InShadowPhysics...
)

Public function

void

 

SetSkeleton

(
    USkeleton* InSkeleton
)

Public function

void

 

SetSkelMirrorAxis

(
    TEnumAsByte< EAxis::Type > InSkelMi...
)

Public function

void

 

SetSkelMirrorFlipAxis

(
    TEnumAsByte< EAxis::Type > InSkelMi...
)

Public function

void

 

SetSkelMirrorTable

(
    const TArray< struct FBoneMirrorInf...
)

Public function

void

 

SetSupportLODStreaming

(
    FPerPlatformBool bInSupportLODStrea...
)

Public function

void

 

SetThumbnailInfo

(
    UThumbnailInfo* InThumbnailInf...
)

Public function

void

 

SetUseLegacyMeshDerivedDataKey

(
    const bool InUseLegacyMeshDerivedDa...
)

Public function

void

 

SetVertexColorGuid

(
    FGuid InVertexColorGuid
)

Public function

int32

 

StackPostEditChange()

This function will increment the PostEditChange stack counter.

Public function

void

 

UnregisterAllMorphTarget()

Public function

void

 

UnregisterMorphTarget

(
    UMorphTarget* MorphTarget
)

Public function

void

 

UnregisterOnClothingChange

(
    const FDelegateHandle& InHandle
)

Public function

int32

 

UnStackPostEditChange()

This function will decrement the stack counter.

Public function

void

 

UpdateGenerateUpToData()

Public function

void

 

UpdateUVChannelData

(
    bool bResetOverrides
)

Update the material UV channel data used by the texture streamer.

Public function

void

 

UpgradeOldClothingAssets()

Take clothing assets that were imported using APEX files before we moved away from the APEX simulation framework and upgrade them to UE4 UClothingAssets.

Public function

void

 

ValidateBoneWeights

(
    const ITargetPlatform* TargetP...
)

Warn if the platform supports the minimal number of per vertex bone weights

Public function

void

 

ValidateBoundsExtension()

Alters the bounds extension values to fit correctly into the current bounds (so negative values never extend the bounds etc.)

Public function

int32

 

ValidatePreviewAttachedObjects()

Makes sure all attached objects are valid and removes any that aren't.

Overridden from UStreamableRenderAsset

Name Description

Public function Virtual Const

int32

 

CalcCumulativeLODSize

(
    int32 NumLODs
)

Public function Virtual Const

bool

 

DoesMipDataExist

(
    const int32 MipIndex
)

Public function Virtual Const

FIoFilenameH...

 

GetMipIoFilenameHash

(
    const int32 MipIndex
)

Public function Virtual Const

EStreamableR...

 

GetRenderAssetType()

Public function Virtual Const

bool

 

HasPendingRenderResourceInitialization()

Also returns false if the render resource is non existent, to prevent stalling on an event that will never complete.

Public function Virtual

bool

 

StreamIn

(
    int32 NewMipCount,
    bool bHighPrio
)

Loads mips from disk to memory. Only usable if the asset is streamable.

Public function Virtual

bool

 

StreamOut

(
    int32 NewMipCount
)

Unload some mips from memory. Only usable if the asset is streamable.

Overridden from UObject

Name Description

Public function Virtual

void

 

BeginCacheForCookedPlatformData

(
    const ITargetPlatform* TargetP...
)

Starts caching of platform specific data for the target platform Called when cooking before serialization so that object can prepare platform specific data Not called during normal loading of objects

Public function Virtual

void

 

BeginDestroy()

Called before destroying the object.

Public function Virtual Const

void

 

GetAssetRegistryTagMetadata

Gathers a collection of asset registry tag metadata

Public function Virtual Const

void

 

GetAssetRegistryTags

(
    TArray< FAssetRegistryTag >& OutTa...
)

Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects

Public function Virtual

FString

 

GetDesc()

Returns a one line description of an object for viewing in the thumbnail view of the generic browser

Public function Virtual Const

FString

 

GetDetailedInfoInternal()

This will return detail info about this specific object.

Public function Virtual

void

 

GetPreloadDependencies

(
    TArray< UObject* >& OutDeps
)

Called during cooking.

Public function Virtual

void

 

GetResourceSizeEx

(
    FResourceSizeEx& CumulativeResourc...
)

Get the size of the object/resource for use in memory tools or to display to artists/LDs in the Editor This is the extended version which separates up the used memory into different memory regions (the actual definition of which may be platform specific).

Public function Virtual Const

bool

 

IsPostLoadThreadSafe()

Called during async load to determine if PostLoad can be called on the loading thread.

Public function Virtual

bool

 

IsReadyForFinishDestroy()

Called to check if the object is ready for FinishDestroy.

Public function Virtual

void

 

PostEditChangeProperty

(
    FPropertyChangedEvent& PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

void

 

PostEditUndo()

Called after applying a transaction to the object.

Public function Virtual

void

 

PostInitProperties()

Called after the C++ constructor and after the properties have been initialized, including those loaded from config.

Public function Virtual

void

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object.

Public function Virtual

void

 

PreSave

(
    const ITargetPlatform* TargetP...
)

Presave function.

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Handles reading, writing, and reference collecting using FArchive.

Overridden from IInterface_CollisionDataProvider

Name Description

Public function Virtual Const

bool

 

ContainsPhysicsTriMeshData

(
    bool InUseAllTriData
)

Interface for checking if the implementing objects contains triangle mesh collision data

Public function Virtual

void

 

GetMeshId

(
    FString& OutMeshId
)

An optional string identifying the mesh data.

Public function Virtual

bool

 

GetPhysicsTriMeshData

(
    FTriMeshCollisionData* Collisi...,
    bool InUseAllTriData
)

Interface for retrieving triangle mesh collision data from the implementing object

Public function Virtual

bool

 

WantsNegXTriMesh()

Do we want to create a negative version of this mesh

Overridden from IInterface_AssetUserData

Name Description

Public function Virtual

void

 

AddAssetUserData

(
    UAssetUserData* InUserData
)

Public function Virtual Const

const TArray...

 

GetAssetUserDataArray()

Public function Virtual

UAssetUserDa...

 

GetAssetUserDataOfClass

(
    TSubclassOf< UAssetUserData > InUse...
)

Public function Virtual

void

 

RemoveUserDataOfClass

(
    TSubclassOf< UAssetUserData > InUse...
)

Typedefs

Name

Description

FOnMeshChanged

Notification when anything changed

Deprecated Variables

Name Description

Public variable

UAssetImportDat...

 

AssetImportData

Please do not access this member directly; use USkeletalMesh::GetAssetImportData() or USkeletalMesh::SetAssetImportData().

Public variable

uint8: 1

 

bEnablePerPolyCollision

Please do not access this member directly; use USkeletalMesh::GetEnablePerPolyCollision() or USkeletalMesh::SetEnablePerPolyCollision().

Public variable

uint8: 1

 

bHasActiveClothingAssets

Please do not access this member directly; use USkeletalMesh::HasActiveClothingAssets() or USkeletalMesh::SetHasActiveClothingAssets().

Public variable

uint8: 1

 

bHasBeenSimplified

Please do not access this member directly; use USkeletalMesh::GetHasBeenSimplified() or USkeletalMesh::SetHasBeenSimplified().

Public variable

bool

 

bHasCustomDefaultEditorCamera

Please do not access this member directly; use USkeletalMesh::GetHasCustomDefaultEditorCamera() or USkeletalMesh::SetHasCustomDefaultEditorCamera().

Public variable

uint8: 1

 

bHasVertexColors

Please do not access this member directly; use USkeletalMesh::GetHasVertexColors() or USkeletalMesh::SetHasVertexColors().

Public variable

UBodySetup *...

 

BodySetup

Please do not access this member directly; use USkeletalMesh::GetBodySetup() or USkeletalMesh::SetBodySetup().

Public variable

bool

 

bOverrideLODStreamingSettings

Please do not access this member directly; use USkeletalMesh::GetOverrideLODStreamingSettings() or USkeletalMesh::SetOverrideLODStreamingSettings().

Public variable

uint32: 1

 

bRequiresLODHysteresisConversion

Please do not access this member directly; use USkeletalMesh::GetRequiresLODHysteresisConversion() or USkeletalMesh::SetRequiresLODHysteresisConversion().

Public variable

uint32: 1

 

bRequiresLODScreenSizeConversion

Please do not access this member directly; use USkeletalMesh::GetRequiresLODScreenSizeConversion() or USkeletalMesh::SetRequiresLODScreenSizeConversion().

Public variable

FPerPlatformBoo...

 

bSupportLODStreaming

Please do not access this member directly; use USkeletalMesh::GetSupportLODStreaming() or USkeletalMesh::SetSupportLODStreaming().

Public variable

uint8: 1

 

bUseFullPrecisionUVs_DEPRECATED

If true, use 32 bit UVs. If false, use 16 bit UVs to save memory

Public variable

uint8: 1

 

bUseHighPrecisionTangentBasis_DEPRECATED

If true, tangents will be stored at 16 bit vs 8 bit precision

Public variable

TArray< FClothi...

 

ClothingAssets_DEPRECATED

Legacy clothing asset data, will be converted to new assets after loading

Public variable

TSoftObjectPtr<...

 

DefaultAnimatingRig

Please do not access this member directly; use USkeletalMesh::GetDefaultAnimatingRig() or USkeletalMesh::SetDefaultAnimatingRig().

Public variable

FVector

 

DefaultEditorCameraLocation

Please do not access this member directly; use USkeletalMesh::GetDefaultEditorCameraLocation() or USkeletalMesh::SetDefaultEditorCameraLocation().

Public variable

FVector

 

DefaultEditorCameraLookAt

Please do not access this member directly; use USkeletalMesh::GetDefaultEditorCameraLookAt() or USkeletalMesh::SetDefaultEditorCameraLookAt().

Public variable

float

 

DefaultEditorCameraOrthoZoom

Please do not access this member directly; use USkeletalMesh::GetDefaultEditorCameraOrthoZoom() or USkeletalMesh::SetDefaultEditorCameraOrthoZoom().

Public variable

FRotator

 

DefaultEditorCameraRotation

Please do not access this member directly; use USkeletalMesh::GetDefaultEditorCameraRotation() or USkeletalMesh::SetDefaultEditorCameraRotation().

Public variable

FPerPlatformBoo...

 

DisableBelowMinLodStripping

Please do not access this member directly; use USkeletalMesh::GetDisableBelowMinLodStripping() or USkeletalMesh::SetDisableBelowMinLodStripping().

Public variable

float

 

FloorOffset

Please do not access this member directly; use USkeletalMesh::GetFloorOffset() or USkeletalMesh::SetFloorOffset().

Public variable

USkeletalMeshLO...

 

LODSettings

Please do not access this member directly; use USkeletalMesh::GetLODSettings() or USkeletalMesh::SetLODSettings().

Public variable

TArray< FSkelet...

 

Materials

Please do not access this member directly; use USkeletalMesh::GetMaterials() or USkeletalMesh::SetMaterials().

Public variable

FPerPlatformInt

 

MaxNumOptionalLODs

Please do not access this member directly; use USkeletalMesh::GetMaxNumOptionalLODs() or USkeletalMesh::SetMaxNumOptionalLODs().

Public variable

FPerPlatformInt

 

MaxNumStreamedLODs

Please do not access this member directly; use USkeletalMesh::GetMaxNumStreamedLODs() or USkeletalMesh::SetMaxNumStreamedLODs().

Public variable

TArray< UClothi...

 

MeshClothingAssets

Please do not access this member directly; use USkeletalMesh::GetMeshClothingAssets() or USkeletalMesh::SetMeshClothingAssets().

Public variable

USkeletalMeshEd...

 

MeshEditorDataObject

Please do not access this member directly; use the public ImportData API.

Public variable

FPerPlatformInt

 

MinLod

Please do not access this member directly; use USkeletalMesh::GetMinLod() or USkeletalMesh::SetMinLod().

Public variable

TMap< FName, in...

 

MorphTargetIndexMap

Please do not access this member directly; use USkeletalMesh::GetMorphTargetIndexMap() or USkeletalMesh::SetMorphTargetIndexMap().

Public variable

TArray< UMorphT...

 

MorphTargets

Please do not access this member directly; use USkeletalMesh::GetMorphTargets() or USkeletalMesh::SetMorphTargets().

Public variable

TArray< class U...

 

NodeMappingData

Please do not access this member directly; use USkeletalMesh::GetNodeMappingData() or USkeletalMesh::SetNodeMappingData().

Public variable

UPhysicsAsset &...

 

PhysicsAsset

Please do not access this member directly; use USkeletalMesh::GetPhysicsAsset() or USkeletalMesh::SetPhysicsAsset().

Public variable

TSubclassOf< UA...

 

PostProcessAnimBlueprint

Please do not access this member directly; use USkeletalMesh::GetPostProcessAnimBlueprint() or USkeletalMesh::SetPostProcessAnimBlueprint().

Public variable

FPreviewAssetAt...

 

PreviewAttachedAssetContainer

Please do not access this member directly; use USkeletalMesh::GetPreviewAttachedAssetContainer() or USkeletalMesh::SetPreviewAttachedAssetContainer().

Public variable

TArray< FMatrix...

 

RefBasesInvMatrix

Please do not access this member directly; use USkeletalMesh::GetRefBasesInvMatrix() or USkeletalMesh::SetRefBasesInvMatrix().

Public variable

FReferenceSkele...

 

RefSkeleton

Please do not access this member directly; use USkeletalMesh::GetRefSkeleton() or USkeletalMesh::SetRefSkeleton().

Public variable

TArray< FTransf...

 

RetargetBasePose

Please do not access this member directly; use USkeletalMesh::GetRetargetBasePose() or USkeletalMesh::SetRetargetBasePose().

Public variable

UPhysicsAsset &...

 

ShadowPhysicsAsset

Please do not access this member directly; use USkeletalMesh::GetShadowPhysicsAsset() or USkeletalMesh::SetShadowPhysicsAsset().

Public variable

USkeleton *

 

Skeleton

Please do not access this member directly; use USkeletalMesh::GetSkeleton() or USkeletalMesh::SetSkeleton().

Public variable

TEnumAsByte< EA...

 

SkelMirrorAxis

Please do not access this member directly; use USkeletalMesh::GetSkelMirrorAxis() or USkeletalMesh::SetSkelMirrorAxis().

Public variable

TEnumAsByte< EA...

 

SkelMirrorFlipAxis

Please do not access this member directly; use USkeletalMesh::GetSkelMirrorFlipAxis() or USkeletalMesh::SetSkelMirrorFlipAxis().

Public variable

TArray< struct ...

 

SkelMirrorTable

Please do not access this member directly; use USkeletalMesh::GetSkelMirrorTable() or USkeletalMesh::SetSkelMirrorTable().

Public variable

FString

 

SourceFilePath_DEPRECATED

Path to the resource used to construct this skeletal mesh

Public variable

FString

 

SourceFileTimestamp_DEPRECATED

Date/Time-stamp of the file from the last import

Public variable

UThumbnailInfo ...

 

ThumbnailInfo

Please do not access this member directly; use USkeletalMesh::GetThumbnailInfo() or USkeletalMesh::SetThumbnailInfo().

Public variable

bool

 

UseLegacyMeshDerivedDataKey

Please do not access this member directly; use USkeletalMesh::GetUseLegacyMeshDerivedDataKey() or USkeletalMesh::SetUseLegacyMeshDerivedDataKey().

Public variable

FGuid

 

VertexColorGuid

Please do not access this member directly; use USkeletalMesh::GetVertexColorGuid() or USkeletalMesh::SetVertexColorGuid().

Deprecated Functions

Name Description

Public function

UBodySetup &...

 

GetBodySetup()

Please do not use this non const function; use the combination of USkeletalMesh::CreateBodySetup() and USkeletalMesh::GetBodySetup() const. Cast the skeletal mesh caller to const to force the compiler to use the USkeletalMesh::GetBodySetup() const function and avoid the deprecation warning

See Also

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