Navigation
API > API/Runtime > API/Runtime/Chaos
References
| Module | Chaos |
| Header | /Engine/Source/Runtime/Experimental/Chaos/Public/BoneHierarchy.h |
| Include | #include "BoneHierarchy.h" |
Syntax
class FBoneHierarchy
Remarks
A hierarchy of transforms (bones) that tracks the state of transforms within the hierarchy, to do partial updates.
Variables
| Type | Name | Description | |
|---|---|---|---|
| FTransform | ActorLocalToWorld | The current top level local-to-world transform. | |
| bool | ActorLocalToWorldDirty | ||
| TArray< uint8 > | AnimDirty | Dirty flags for each bone in the hierarchy, plus sub group structures. | |
| TArray< int32 > | BoneIndices | ||
| TMap< int32, FAnalyticImplicitGroup * > | BoneToShapeGroup | A mapping from Bone index to implicit shape group. | |
| TMap< int32, int32 > | BoneToTransformIndex | Mapping from Bone index to our local transform array indices. | |
| TArray< TArray< int32 > > | ChildIndices | ||
| TArray< TUniquePtr< FAnalyticImplicitGroup > > | ImplicitGroups | Owner of all implicit shape groups. | |
| TArray< FTransform > | LocalSpaceTransforms | Local, component, and world space transforms of each bone in the hierarchy, plus sub group structures. | |
| TArray< int32 > | ParentIndices | Parenting hierarchy for each bone and sub group structure. | |
| TArray< FTransform > | PrevWorldSpaceTransforms | ||
| TArray< FAnalyticImplicitGroup * > | Roots | All implicit groups in the hierarchy that have no parents. | |
| TArray< int32 > | SocketIndices | ||
| TArray< int32 > | TempTargetIndices | The working set of indices. | |
| TMap< int32, int32 > | TransformToBoneIndex | ||
| TArray< FTransform > | WorldSpaceTransforms | TArray |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FBoneHierarchy
(
const FBoneHierarchy& |
|||
FBoneHierarchy
(
FBoneHierarchy&& Other |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | Add
(
TUniquePtr< FAnalyticImplicitGroup >&& AnalyticShapeGroupIn |
Add a structure to the hierarchy. | |
| const FAnalyticImplicitGroup * | GetAnalyticShapeGroup
(
const int32 BoneIndex |
||
| FAnalyticImplicitGroup * | GetAnalyticShapeGroup
(
const int32 BoneIndex |
||
| TArray< TUniquePtr< FAnalyticImplicitGroup > > & | |||
| const TArray< TUniquePtr< FAnalyticImplicitGroup > > & | |||
| bool | GetAnimLocalDirty
(
const int32 TransformIndex |
||
| const FTransform * | GetAnimWorldSpaceTransformsForBone
(
const int32 BoneIndex |
Get all world space transforms associated with `BoneIndex_. | |
| const TArray< int32 > & | |||
| void | GetDirtyAnimIndices
(
TArray< int32 >& TargetIndices |
||
| void | GetDirtyIndices
(
TArray< int32 >& TargetIndices, |
Get a list of all transform indices that are dirty. | |
| const FTransform * | GetPrevAnimWorldSpaceTransformForBone
(
const int32 BoneIndex |
||
| int32 | GetSocketIndexForBone
(
const uint32 BoneIndex |
||
| int32 | GetTransformIndex
(
const int32 BoneIndex |
||
| bool | HasBoneIndex
(
const uint32 BoneIndex |
||
| void | Update each implicit group with parent and child information, and find root nodes. | ||
| void | InitPostAdd () |
Build the hierarchy. Must be done after adding structures, and before updating or sampling. | |
| void | InitPreAdd
(
const int32 NumBones |
Initialization. | |
| bool | Update all world space transforms for sampling. | ||
| void | |||
| void | Propagate bone space dirty flags from parents to sub structures and children. | ||
| void | SetActorWorldSpaceTransform
(
const FTransform& InActorLocalToWorld |
Update the local-to-world transform of the actor the bones this hierarchy represents belongs to. | |
| void | SetAnimLocalClean
(
const int32 TransformIndex |
||
| void | SetAnimLocalDirty
(
const int32 TransformIndex |
||
| void | SetAnimLocalSpaceTransform
(
const int32 BoneIndex, |
Updates the local/bone space transform of a bone. | |
| void | SetSocketIndexForBone
(
const uint32 BoneIndex, |
||
| bool | UpdateAnimWorldSpaceTransforms
(
const TArray< int32 >& TargetIndices |
Update the component space transforms of the specified indices. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FBoneHierarchy & | operator=
(
FBoneHierarchy&& Other |
||
| FBoneHierarchy & | operator=
(
const FBoneHierarchy& |