| UObjectBase
|
Module |
|
Header |
/Engine/Source/Runtime/Engine/Classes/Animation/Skeleton.h |
Include |
#include "Animation/Skeleton.h" |
class USkeleton :
public UObject,
public IInterface_AssetUserData,
public IInterface_PreviewMeshProvider
USkeleton : that links between mesh and animation
Bone hierarchy for animations
Bone/track linkup between mesh and animation
Retargetting related
Name | Description | ||
---|---|---|---|
|
AnimationNotifies |
AnimNotifiers that has been created. |
|
|
AnimCurveMapping |
Cached ptr to the persistent AnimCurveMapping. |
|
|
AnimRetargetSources |
Serializable retarget sources for this skeleton |
|
|
AssetUserData |
Array of user data stored with the asset |
|
|
BlendProfiles |
List of blend profiles available in this skeleton |
|
|
TArray< struct ... |
BoneTree |
Skeleton bone tree - each contains name and parent index |
|
TSoftObjectPtr<... |
CachedSoftObjectPtr |
A cached soft object pointer of this skeleton. |
|
CompatibleSkeletons |
The list of compatible skeletons. |
|
|
TArray< uint16 ... |
DefaultCurveUIDList |
This is default curve uid list used like ref pose, as default value don't use this unless you want all curves from the skeleton FBoneContainer contains only list that is used by current LOD |
|
ExistingMarkerNames |
Cached marker sync marker names (stripped for non editor) |
|
|
Guid |
Guid for skeleton |
|
|
TArray< struct ... |
LinkupCache |
Non-serialised cache of linkups between different skeletal meshes and this Skeleton. |
|
FCriticalSectio... |
LinkupCacheLock |
Use this Lock everytime you change or access LinkupCache and SkelMesh2LinkupCache member. |
|
OnSkeletonHierarchyChanged |
||
|
OnSmartNamesChangedEvent |
||
|
PreviewAttachedAssetContainer |
Attached assets component for this skeleton |
|
|
ReferenceSkeleton |
Reference Skeleton |
|
|
SmartNames |
Container for smart name mappings. |
|
|
Sockets |
Array of named socket locations, set up in editor and used as a shortcut instead of specifying everything explicitly to AttachComponent in the SkeletalMeshComponent. |
|
|
VirtualBoneGuid |
Guid for virtual bones. |
|
|
VirtualBones |
Array of this skeletons virtual bones. |
Name | Description | |
---|---|---|
|
USkeleton ( |
Name | Description | ||
---|---|---|---|
|
void |
AccumulateCurveMetaData ( |
This is called when you know both flags - called by post serialize |
|
void |
AddCompatibleSkeleton ( |
|
|
void |
AddNewAnimationNotify ( |
Adds a new anim notify to the cached AnimationNotifies array. |
|
bool |
AddNewVirtualBone |
|
|
bool |
AddNewVirtualBone |
|
|
bool |
AddSlotGroupName ( |
Returns true if Group is added, false if it already exists |
|
bool |
AddSmartNameAndModify ( |
Smart Name Interfaces. |
|
int32 |
BuildLinkup ( |
Build Look up between SkinnedAsset to BoneTree |
|
void |
CallbackRetargetSourceChanged() |
|
|
void |
ClearCacheData() |
Clears all cache data |
|
void |
CollectAnimationNotifies() |
Collect animation notifies that are referenced in all animations that use this skeleton (uses the asset registry). |
|
void |
CollectAnimationNotifies |
Collect animation notifies that are referenced in all animations that use this skeleton (uses the asset registry). |
|
bool |
ContainsSlotName ( |
|
|
void |
ConvertToFReferenceSkeleton() |
Conversion function. |
|
UBlendProfil... |
CreateNewBlendProfile ( |
Create a new blend profile with the specified name |
|
bool |
CreateReferenceSkeletonFromMesh ( |
Create Reference Skeleton From the given Mesh |
|
bool |
DoesParentChainMatch ( |
Check if Parent Chain Matches between BoneTree, and SkinnedAsset Meaning if BoneTree has A->B->C (top to bottom) and if SkinnedAsset has A->C It will fail since it's missing B We ensure this chain matches to play animation properly |
|
FAnimSlotGro... |
FindAnimSlotGroup ( |
|
|
const FAnimS... |
FindAnimSlotGroup ( |
|
|
USkeletalMes... |
FindCompatibleMesh() |
Find the first compatible mesh for this skeleton |
|
int32 |
FindRigBoneMapping ( |
|
|
USkeletalMes... |
FindSocket ( |
|
|
USkeletalMes... |
FindSocketAndIndex ( |
|
|
UDataAsset &... |
GetAdditionalPreviewSkeletalMeshes() |
Get the additional skeletal meshes we use when previewing this skeleton |
|
uint16 |
GetAnimCurveUidVersion() |
Return version of AnimCurveUidVersion |
|
USkeletalMes... |
GetAssetPreviewMesh ( |
|
|
UBlendProfil... |
GetBlendProfile ( |
Get the specified blend profile by name |
|
EBoneTransla... |
GetBoneTranslationRetargetingMode ( |
|
|
int32 |
GetChildBones ( |
Get List of Child Bones of the ParentBoneIndex |
|
void |
GetCompatibleAssets ( |
Get compatible assets given the asset's class and skeleton tag. |
|
void |
GetCompatibleSkeletonAssets ( |
Get all skeleton assets that are compatible with this skeleton (not just the internal list, but also reciprocally and implicitly compatible skeletons) |
|
const TArray... |
GetCompatibleSkeletons() |
|
|
FCurveMetaDa... |
GetCurveMetaData ( |
These return container of curve meta data, if you modify this container, you'll have to call REfreshCAchedAnimationCurveData to apply |
|
FCurveMetaDa... |
GetCurveMetaData ( |
These return container of curve meta data, if you modify this container, you'll have to call REfreshCAchedAnimationCurveData to apply |
|
const FCurve... |
GetCurveMetaData ( |
These return container of curve meta data, if you modify this container, you'll have to call REfreshCAchedAnimationCurveData to apply |
|
const FCurve... |
GetCurveMetaData ( |
These return container of curve meta data, if you modify this container, you'll have to call REfreshCAchedAnimationCurveData to apply |
|
const FCurve... |
GetCurveMetaData ( |
These return container of curve meta data, if you modify this container, you'll have to call REfreshCAchedAnimationCurveData to apply |
|
const TArray... |
GetDefaultCurveUIDList() |
|
|
const TArray... |
GetExistingMarkerNames() |
Get existing (seen) sync marker names for this Skeleton. |
|
const FGuid |
GetGuid() |
|
|
int32 |
GetMappedValidNodes |
This make sure it stays within the valid range |
|
int32 |
GetMeshBoneIndexFromSkeletonBoneIndex ( |
Get Reference Bone Index from Bone Tree Index |
|
int32 |
GetMeshLinkupIndex ( |
Find a mesh linkup table (mapping of skeleton bone tree indices to refpose indices) for a particular SkinnedAsset If one does not already exist, create it now. |
|
const FRefer... |
GetReferenceSkeleton() |
Accessor to Reference Skeleton to make data read only |
|
const TArray... |
GetRefLocalPoses ( |
Get the local-space ref pose for the specified retarget source. |
|
GetRetargetSourceForMesh ( |
Find a retarget source for a particular mesh. |
|
|
void |
GetRetargetSources |
Get all the retarget source names for this skeleton. |
|
URig * |
GetRig() |
|
|
GetRigBoneMapping ( |
||
|
GetRigNodeNameFromBoneName ( |
||
|
int32 |
GetSkeletonBoneIndexFromMeshBoneIndex ( |
Get Bone Tree Index from Reference Bone Index |
|
GetSlotGroupName ( |
||
|
const TArray... |
GetSlotGroups() |
|
|
bool |
GetSmartNameByName ( |
|
|
bool |
GetSmartNameByUID ( |
|
|
const FSmart... |
GetSmartNameContainer ( |
Get or add a smartname container with the given name. |
|
SmartName::U... |
GetUIDByName |
Quick wrapper function for Find UID by name, if not found, it will return SmartName::MaxUID |
|
GetVirtualBoneGuid() |
||
|
const TArray... |
GetVirtualBones() |
Accessor for the array of virtual bones on this skeleton |
|
void |
HandleSkeletonHierarchyChange() |
Call this when the skeleton has changed to fix dependent assets |
|
void |
HandleSmartNamesChangedEvent() |
Handle smart name changes. |
|
void |
HandleVirtualBoneChanges() |
|
|
bool |
IsCompatibleForEditor ( |
Check if animation content authored on the supplied skeleton may be played on this skeleton. |
|
bool |
IsCompatibleForEditor ( |
Check if this skeleton is compatible with a given other asset, if that is a skeleton. |
|
bool |
IsCompatibleForEditor ( |
Check if this skeleton is compatible with another skeleton asset that is identified by the string returned by AssetData(SkeletonPtr).GetExportTextName(). |
|
bool |
IsCompatibleMesh ( |
Indexing naming convention |
|
void |
LoadAdditionalPreviewSkeletalMeshes() |
Load any additional meshes we may have |
|
bool |
MergeAllBonesToBoneTree ( |
Merge all Bones to BoneTrees if not exists |
|
bool |
MergeBonesToBoneTree ( |
Merge Bones (RequiredBones from InSkinnedAsset) to BoneTrees if not exists |
|
void |
RebuildLinkup ( |
Rebuild Look up between SkelMesh to BoneTree - this should only get called when SkelMesh is re-imported or so, where the mapping may be no longer valid |
|
bool |
RecreateBoneTree ( |
Merge has failed, then Recreate BoneTree |
|
void |
RefreshAllRetargetSources() |
Refresh All Retarget Sources |
|
void |
RefreshRigConfig() |
Verify if it has all latest data |
|
void |
RegisterMarkerName ( |
Register a new sync marker name. |
|
FDelegateHan... |
RegisterOnRetargetSourceChanged ( |
Registers a delegate to be called after the preview animation has been changed |
|
void |
RegisterOnSkeletonHierarchyChanged ( |
Registers a delegate to be called after notification has changed |
|
bool |
RegisterSlotNode ( |
Register a slot name. Return true if a slot was registered, false if it was already registered. |
|
void |
RemoveBonesFromSkeleton |
Removes the supplied bones from the skeleton |
|
void |
RemoveCompatibleSkeleton ( |
|
|
void |
RemoveLinkup ( |
Remove Link up cache for the SkelMesh |
|
void |
RemoveMarkerName ( |
Remove a sync marker name. |
|
void |
RemoveSlotGroup ( |
|
|
void |
RemoveSlotName ( |
Edits/removes slot group data WARNING: Does not verify that the names aren't used anywhere - if it isn't checked by the caller the names will be recreated when referencing assets load again. |
|
void |
RemoveSmartnameAndModify ( |
Removes a smartname from the specified container and modifies the skeleton. |
|
void |
RemoveSmartnamesAndModify |
Removes smartnames from the specified container and modifies the skeleton. |
|
void |
RemoveVirtualBones |
|
|
void |
RenameSlotName |
|
|
bool |
RenameSmartnameAndModify ( |
Renames a smartname in the specified container and modifies the skeleton return bool - Whether the rename was sucessful |
|
void |
RenameVirtualBone |
|
|
void |
SetAdditionalPreviewSkeletalMeshes ( |
Set the additional skeletal meshes we use when previewing this skeleton |
|
void |
SetBoneTranslationRetargetingMode ( |
|
|
bool |
SetRigBoneMapping |
|
|
void |
SetRigConfig ( |
|
|
void |
SetSlotGroupName |
|
|
bool |
ShouldFilterAsset ( |
Wrapper for !IsCompatibleForEditor, used as a convenience function for binding to FOnShouldFilterAsset in asset pickers. |
|
void |
UnregisterOnRetargetSourceChanged ( |
Unregisters a delegate to be called after the preview animation has been changed |
|
void |
UnregisterOnSkeletonHierarchyChanged ( |
|
|
void |
UpdateReferencePoseFromMesh ( |
Create RefLocalPoses from InSkinnedAsset. |
|
void |
UpdateRetargetSource ( |
Update Retarget Source with given name |
|
int32 |
ValidatePreviewAttachedObjects() |
Makes sure all attached objects are valid and removes any that aren't. |
|
void |
VerifySmartName ( |
Make sure the smart name has valid UID and so on |
|
void |
VerifySmartNames ( |
Make sure the smart name has valid UID and so on |
Name | Description | ||
---|---|---|---|
|
void |
BeginDestroy() |
Called before destroying the object. |
|
bool |
IsPostLoadThreadSafe() |
Called during async load to determine if PostLoad can be called on the loading thread. |
|
void |
PostDuplicate ( |
Called after duplication & serialization and before PostLoad. |
|
void |
PostEditUndo() |
Called after applying a transaction to the object. |
|
void |
PostInitProperties() |
Called after the C++ constructor and after the properties have been initialized, including those loaded from config. |
|
void |
PostLoad() |
Do any object-specific cleanup required immediately after loading an object. |
|
void |
PreEditUndo() |
Called before applying a transaction to the object. |
|
void |
Serialize ( |
Handles reading, writing, and reference collecting using FArchive. |
Name | Description | ||
---|---|---|---|
|
void |
AddAssetUserData ( |
|
|
const TArray... |
GetAssetUserDataArray() |
|
|
UAssetUserDa... |
GetAssetUserDataOfClass ( |
|
|
void |
RemoveUserDataOfClass ( |
Name | Description | ||
---|---|---|---|
|
USkeletalMes... |
GetPreviewMesh ( |
IInterface_PreviewMeshProvider interface |
|
USkeletalMes... |
GetPreviewMesh() |
Get the preview mesh for this asset |
|
void |
SetPreviewMesh ( |
Set the preview mesh for this asset |
Name |
Description |
|
---|---|---|
|
FSmartNamesChangedEvent |
Name |
Description |
---|---|
AnimCurveUID |
Typedefs for greater smartname UID readability, add one for each smartname category. |
FBoneTreeType |
|
FOnRetargetSourceChanged |
|
FOnRetargetSourceChangedMulticaster |
|
FOnSkeletonHierarchyChanged |
|
FOnSkeletonHierarchyChangedMulticaster |
Name |
Description |
---|---|
AnimCurveMappingName |
Names for smartname mappings, if you're adding a new category of smartnames add a new name here. |
AnimNotifyTag |
Asset registry information for animation notifies. |
AnimNotifyTagDelimiter |
|
AnimTrackCurveMappingName |
Names for smartname mappings, if you're adding a new category of smartnames add a new name here. |
AreAllSkeletonsCompatibleDelegate |
Global compatibility delegate, used to override skeleton compatibility. |
CompatibleSkeletonsNameTag |
Asset registry information for compatible skeletons. |
CompatibleSkeletonsTagDelimiter |
|
CurveNameTag |
Asset registry information for animation curves. |
CurveTagDelimiter |
|
RigTag |
Rig Configs |
Name | Description | ||
---|---|---|---|
|
TArray< FTransf... |
RefLocalPoses_DEPRECATED |
Reference skeleton poses in local space |
|
SkelMesh2LinkupCache |
Public access to this member variable is deprecated. |
Name | Description | ||
---|---|---|---|
|
int32 |
GetRawAnimationTrackIndex ( |
GetRawAnimationTrackIndex has been deprecated, use tracks are referenced by name instead |
|
const FSkele... |
GetSkeletonRemapping ( |
Please use UE::Anim::FSkeletonRemappingRegistry::GetRemapping. |
|
bool |
IsCompatible ( |
Compatibility is now an editor-only concern. Please use IsCompatibleForEditor. |
|
bool |
IsCompatibleSkeletonByAssetData ( |
Compatibility is now an editor-only concern. Please use IsCompatibleForEditor. |
|
bool |
IsCompatibleSkeletonByAssetString ( |
Compatibility is now an editor-only concern. Please use IsCompatibleForEditor. |