UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FTransformCollection Class Reference

#include <TransformCollection.h>

+ Inheritance diagram for FTransformCollection:

Public Types

typedef FManagedArrayCollection Super
 
- Public Types inherited from FManagedArrayCollection
typedef EManagedArrayType EArrayType
 

Public Member Functions

CHAOS_API FTransformCollection ()
 
CHAOS_API ~FTransformCollection ()
 
 FTransformCollection (FTransformCollection &)=delete
 
FTransformCollectionoperator= (const FTransformCollection &)=delete
 
 FTransformCollection (FTransformCollection &&)=default
 
FTransformCollectionoperator= (FTransformCollection &&)=default
 
 MANAGED_ARRAY_COLLECTION_INTERNAL (FTransformCollection)
 
virtual CHAOS_API void Serialize (Chaos::FChaosArchive &Ar) override
 
virtual CHAOS_API void Append (const FManagedArrayCollection &Collection) override
 
CHAOS_API void AppendCollection (const FTransformCollection &Collection)
 
CHAOS_API int32 AppendTransform (const FTransformCollection &GeometryCollection, const FTransform &TransformRoot=FTransform::Identity)
 
CHAOS_API void ParentTransforms (const int32 TransformIndex, const int32 ChildIndex)
 
CHAOS_API void ParentTransforms (const int32 TransformIndex, const TArray< int32 > &SelectedBones)
 
CHAOS_API void UnparentTransform (const int32 ChildIndex)
 
CHAOS_API void RelativeTransformation (const int32 &Index, const FTransform &LocalOffset)
 
virtual CHAOS_API void RemoveElements (const FName &Group, const TArray< int32 > &SortedDeletionList, FProcessingParameters Params=FProcessingParameters()) override
 
virtual CHAOS_API void MergeElements (const FName &Group, const TArray< int32 > &SortedMergeList, const TArray< int32 > &MergeRemapIndex, FProcessingParameters Params=FProcessingParameters()) override
 
virtual CHAOS_API void Reset () override
 
- Public Member Functions inherited from FManagedArrayCollection
CHAOS_API FManagedArrayCollection ()
 
virtual CHAOS_API ~FManagedArrayCollection ()
 
CHAOS_API FManagedArrayCollection (const FManagedArrayCollection &In)
 
CHAOS_API FManagedArrayCollectionoperator= (const FManagedArrayCollection &In)
 
CHAOS_API FManagedArrayCollection (FManagedArrayCollection &&)
 
CHAOS_API FManagedArrayCollectionoperator= (FManagedArrayCollection &&)
 
CHAOS_API bool operator== (const FManagedArrayCollection &Other) const
 
virtual bool IsAType (FName InTypeName) const
 
template<typename T >
bool IsA ()
 
template<class T >
T * Cast ()
 
template<class T >
const T * Cast () const
 
template<typename T >
TManagedArray< T > & AddAttribute (FName Name, FName Group, FConstructionParameters Parameters=FConstructionParameters())
 
template<typename T >
TManagedArray< T > * FindOrAddAttributeTyped (FName Name, FName Group, FConstructionParameters Parameters=FConstructionParameters())
 
template<class T = FManagedArrayCollection>
T * NewCopy () const
 
void CopyTo (FManagedArrayCollection *Collection, const TArray< FName > &GroupsToSkip=TArray< FName >(), TArray< TTuple< FName, FName > > AttributesToSkip=TArray< TTuple< FName, FName > >()) const
 
template<typename T >
void AddExternalAttribute (FName Name, FName Group, TManagedArray< T > &ValueIn, FConstructionParameters Parameters=FConstructionParameters())
 
CHAOS_API void AddGroup (FName Group)
 
CHAOS_API int32 NumAttributes (FName Group) const
 
CHAOS_API TArray< FNameAttributeNames (FName Group) const
 
CHAOS_API int32 AddElements (int32 NumberElements, FName Group)
 
CHAOS_API int32 InsertElements (int32 NumberElements, int32 Position, FName Group)
 
template<typename T >
TManagedArray< T > * FindAttribute (FName Name, FName Group)
 
template<typename T >
const TManagedArray< T > * FindAttribute (FName Name, FName Group) const
 
template<typename T >
TManagedArray< T > * FindAttributeTyped (FName Name, FName Group)
 
template<typename T >
const TManagedArray< T > * FindAttributeTyped (FName Name, FName Group) const
 
template<typename T >
TManagedArray< T > & ModifyAttribute (FName Name, FName Group)
 
template<typename T >
TManagedArray< T > * ModifyAttributeTyped (FName Name, FName Group)
 
template<typename T >
const TManagedArray< T > & GetAttribute (FName Name, FName Group) const
 
virtual CHAOS_API void RemoveElements (const FName &Group, int32 NumberElements, int32 Position)
 
CHAOS_API void RemoveAttribute (FName Name, FName Group)
 
CHAOS_API void RemoveGroup (FName Group)
 
CHAOS_API TArray< FNameGroupNames () const
 
bool IsEmpty () const
 
CHAOS_API bool HasAttribute (FName Name, FName Group) const
 
CHAOS_API bool HasAttributes (const TArray< FManagedType > &Types) const
 
FORCEINLINE bool HasGroup (FName Group) const
 
CHAOS_API EArrayType GetAttributeType (FName Name, FName Group) const
 
CHAOS_API bool IsAttributeDirty (FName Name, FName Group) const
 
CHAOS_API bool IsAttributePersistent (FName Name, FName Group) const
 
CHAOS_API void SetDependency (FName Name, FName Group, FName DependencyGroup, bool bAllowCircularDependency=false)
 
CHAOS_API FName GetDependency (FName Name, FName Group) const
 
CHAOS_API void RemoveDependencyFor (FName Group)
 
CHAOS_API void CopyAttribute (const FManagedArrayCollection &InCollection, FName Name, FName Group)
 
CHAOS_API void CopyAttribute (const FManagedArrayCollection &InCollection, FName SrcName, FName DestName, FName Group)
 
CHAOS_API void CopyAttribute (const FManagedArrayCollection &InCollection, FName SrcName, FName DestName, FName SrcGroup, FName DstGroup)
 
CHAOS_API void CopyMatchingAttributesFrom (const FManagedArrayCollection &InCollection, const TMap< FName, TSet< FName > > *SkipList=nullptr)
 
CHAOS_API void CopyMatchingAttributesFrom (const FManagedArrayCollection &FromCollection, const TArrayView< const FAttributeAndGroupId > SkipList)
 
CHAOS_API int32 NumElements (FName Group) const
 
CHAOS_API void Resize (int32 Size, FName Group)
 
CHAOS_API void Reserve (int32 Size, FName Group)
 
CHAOS_API void EmptyGroup (FName Group)
 
virtual CHAOS_API void ReorderElements (FName Group, const TArray< int32 > &NewOrder)
 
void MakeDirty ()
 
void MakeClean ()
 
bool IsDirty () const
 
CHAOS_API bool Serialize (FArchive &Ar)
 
CHAOS_API bool IsConnected (FName StartingNode, FName TargetNode)
 
CHAOS_API FString ToString () const
 
CHAOS_API SIZE_T GetAllocatedSize () const
 
CHAOS_API void GetElementSizeInfoForGroups (TArray< TPair< FName, SIZE_T > > &OutSizeInfo) const
 

Static Public Member Functions

static CHAOS_API void DefineTransformSchema (FManagedArrayCollection &)
 
static CHAOS_API FTransformCollection SingleTransform (const FTransform &TransformRoot=FTransform::Identity)
 
- Static Public Member Functions inherited from FManagedArrayCollection
static FName StaticType ()
 

Public Attributes

TManagedArray< FTransform3fTransform
 
TManagedArray< FString > BoneName
 
TManagedArray< FLinearColorBoneColor
 
TManagedArray< int32Parent
 
TManagedArray< TSet< int32 > > Children
 
- Public Attributes inherited from FManagedArrayCollection
friend FSimulationProperties
 

Static Public Attributes

static CHAOS_API const FName TransformGroup = "Transform"
 
static CHAOS_API const FName TransformAttribute = "Transform"
 
static CHAOS_API const FName ParentAttribute = "Parent"
 
static CHAOS_API const FName ChildrenAttribute = "Children"
 
static CHAOS_API const FName ParticlesAttribute = "Particles"
 
static CHAOS_API const FName LevelAttribute = "Level"
 
static CHAOS_API const FName ConvexGroup = "Convex"
 
static CHAOS_API const FName ConvexHullAttribute = "ConvexHull"
 
static CHAOS_API const FName BoneNameAttribute = "BoneName"
 
static CHAOS_API const FName BoneColorAttribute = "BoneColor"
 
static CHAOS_API const FName BoneHierarchyAttribute = "BoneHierarchy"
 
static CHAOS_API const FName GeometryIndexAttribute = "TransformToGeometryIndex"
 
- Static Public Attributes inherited from FManagedArrayCollection
static CHAOS_API int8 Invalid = INDEX_NONE
 

Protected Member Functions

CHAOS_API void Construct ()
 
- Protected Member Functions inherited from FManagedArrayCollection
virtual CHAOS_API void SetDefaults (FName Group, uint32 StartSize, uint32 NumElements)
 
virtual void MatchOptionalDefaultAttributes (const FManagedArrayCollection &InCollection)
 
CHAOS_API void SyncGroupSizeFrom (const FManagedArrayCollection &InCollection, FName Group)
 
CHAOS_API void SyncGroupSizeFrom (const FManagedArrayCollection &InCollection, FName SrcGroup, FName DstGroup)
 

Additional Inherited Members

- Protected Attributes inherited from FManagedArrayCollection
int32 Version
 

Detailed Description

TransformCollection (ManagedArrayCollection)

Stores the TArray<T> groups necessary to process transform hierarchies.

See also
FTransformCollectionComponent

Member Typedef Documentation

◆ Super

Constructor & Destructor Documentation

◆ FTransformCollection() [1/3]

FTransformCollection::FTransformCollection ( )

◆ ~FTransformCollection()

FTransformCollection::~FTransformCollection ( )
default

◆ FTransformCollection() [2/3]

FTransformCollection::FTransformCollection ( FTransformCollection )
delete

◆ FTransformCollection() [3/3]

FTransformCollection::FTransformCollection ( FTransformCollection &&  )
default

Member Function Documentation

◆ Append()

void FTransformCollection::Append ( const FManagedArrayCollection Collection)
overridevirtual

Append Collection and reindex dependencies on this collection.

Parameters
InCollection: FManagedArrayCollection to add.

Reimplemented from FManagedArrayCollection.

Reimplemented in FGeometryCollection.

◆ AppendCollection()

CHAOS_API void FTransformCollection::AppendCollection ( const FTransformCollection Collection)

Append Collection and reindex dependencies on this collection.

Parameters
InCollection: FTransformCollection to add.

◆ AppendTransform()

int32 FTransformCollection::AppendTransform ( const FTransformCollection GeometryCollection,
const FTransform TransformRoot = FTransform::Identity 
)

◆ Construct()

void FTransformCollection::Construct ( )
protected

Construct

◆ DefineTransformSchema()

void FTransformCollection::DefineTransformSchema ( FManagedArrayCollection InCollection)
static

Schema

◆ MANAGED_ARRAY_COLLECTION_INTERNAL()

FTransformCollection::MANAGED_ARRAY_COLLECTION_INTERNAL ( FTransformCollection  )

◆ MergeElements()

void FTransformCollection::MergeElements ( const FName Group,
const TArray< int32 > &  SortedMergeList,
const TArray< int32 > &  MergeRemapIndex,
FProcessingParameters  Params = FProcessingParameters() 
)
overridevirtual

MergeElements Merge elements from the transform collection. Updates parent and children hierachy to the remapped index Deletes merged elements

Reimplemented from FManagedArrayCollection.

◆ operator=() [1/2]

FTransformCollection & FTransformCollection::operator= ( const FTransformCollection )
delete

◆ operator=() [2/2]

FTransformCollection & FTransformCollection::operator= ( FTransformCollection &&  )
default

◆ ParentTransforms() [1/2]

void FTransformCollection::ParentTransforms ( const int32  TransformIndex,
const int32  ChildIndex 
)

◆ ParentTransforms() [2/2]

void FTransformCollection::ParentTransforms ( const int32  TransformIndex,
const TArray< int32 > &  SelectedBones 
)

◆ RelativeTransformation()

void FTransformCollection::RelativeTransformation ( const int32 Index,
const FTransform LocalOffset 
)

◆ RemoveElements()

void FTransformCollection::RemoveElements ( const FName Group,
const TArray< int32 > &  SortedDeletionList,
FProcessingParameters  Params = FProcessingParameters() 
)
overridevirtual

RemoveElements Remove elements from the transform collection. Transform children are re-parented under the deleted elements parent using local parent compensation [relative local matrices].

Reimplemented from FManagedArrayCollection.

Reimplemented in FGeometryCollection.

◆ Reset()

void FTransformCollection::Reset ( )
overridevirtual

reset internal state

Reimplemented from FManagedArrayCollection.

Reimplemented in FGeometryCollection.

◆ Serialize()

void FTransformCollection::Serialize ( Chaos::FChaosArchive Ar)
overridevirtual

Serialize

Reimplemented from FManagedArrayCollection.

Reimplemented in FGeometryCollection.

◆ SingleTransform()

FTransformCollection FTransformCollection::SingleTransform ( const FTransform TransformRoot = FTransform::Identity)
static

◆ UnparentTransform()

void FTransformCollection::UnparentTransform ( const int32  ChildIndex)

Member Data Documentation

◆ BoneColor

TManagedArray<FLinearColor> FTransformCollection::BoneColor

◆ BoneColorAttribute

const FName FTransformCollection::BoneColorAttribute = "BoneColor"
static

◆ BoneHierarchyAttribute

const FName FTransformCollection::BoneHierarchyAttribute = "BoneHierarchy"
static

◆ BoneName

TManagedArray<FString> FTransformCollection::BoneName

◆ BoneNameAttribute

const FName FTransformCollection::BoneNameAttribute = "BoneName"
static

◆ Children

TManagedArray<TSet<int32> > FTransformCollection::Children

◆ ChildrenAttribute

const FName FTransformCollection::ChildrenAttribute = "Children"
static

◆ ConvexGroup

const FName FTransformCollection::ConvexGroup = "Convex"
static

◆ ConvexHullAttribute

const FName FTransformCollection::ConvexHullAttribute = "ConvexHull"
static

◆ GeometryIndexAttribute

const FName FTransformCollection::GeometryIndexAttribute = "TransformToGeometryIndex"
static

◆ LevelAttribute

const FName FTransformCollection::LevelAttribute = "Level"
static

◆ Parent

TManagedArray<int32> FTransformCollection::Parent

◆ ParentAttribute

const FName FTransformCollection::ParentAttribute = "Parent"
static

◆ ParticlesAttribute

const FName FTransformCollection::ParticlesAttribute = "Particles"
static

◆ Transform

TManagedArray<FTransform3f> FTransformCollection::Transform

◆ TransformAttribute

const FName FTransformCollection::TransformAttribute = "Transform"
static

◆ TransformGroup

const FName FTransformCollection::TransformGroup = "Transform"
static

The documentation for this class was generated from the following files: