Navigation
API > API/Runtime > API/Runtime/Chaos
Defines common API for storing a vertex weights bound to a bone. This mapping is from the the vertex to the bone index. Kinematic array specifies whether vertices are considered kinematic. Non-kinematic vertices can also have associated bone indices and weights.
Then arrays can be accessed later by: const TManagedArray< TArray
The following attributes are created on the collection:
- FindAttribute
>(FVertexSetInterface::IndexAttribute, FGeometryCollection::VerticesGroup); - FindAttribute
>(FVertexSetInterface::WeightAttribute, FGeometryCollection::VerticesGroup);
| Name | FVertexBoneWeightsFacade |
| Type | class |
| Header File | /Engine/Source/Runtime/Experimental/Chaos/Public/GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
| Include Path | #include "GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h" |
Syntax
class FVertexBoneWeightsFacade
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FVertexBoneWeightsFacade
(
FManagedArrayCollection& InSelf, |
FVertexBoneWeightsFacade Constuctor | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
FVertexBoneWeightsFacade
(
const FManagedArrayCollection& InSelf, |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| BoneIndicesAttributeName | const FName | Attributes. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
| BoneWeightsAttributeName | const FName | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| DeprecatedBoneIndicesAttributeName | const FName | Deprecated names for attributes | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
| DeprecatedKinematicFlagAttributeName | const FName | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| GeometryLODAttributeName | const FName | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| KinematicWeightAttributeName | const FName | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| SkeletalMeshAttributeName | const FName | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bInternalWeights | const bool | Internal weights flag to specify if the bone indices are relative to the transform group or to an external skelkmesh | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| BoneIndicesAttribute | TManagedArrayAccessor< TArray< int32 > > | Bone indices for each vertices | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| BoneWeightsAttribute | TManagedArrayAccessor< TArray< float > > | Bone weights for each vertices | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| Collection | FManagedArrayCollection * | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
| ConstCollection | const FManagedArrayCollection & | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
| GeometryLODAttribute | TManagedArrayAccessor< int32 > | Geometry LODSs the skin weights are linked to | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| KinematicWeightAttribute | TManagedArrayAccessor< float > | Kinematic weights for each vertices | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| SkeletalMeshAttribute | TManagedArrayAccessor< TObjectPtr< UObject > > | Geometry skeletal meshes the skin weights are linked to | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddBoneWeight
(
int32 VertexIndex, |
Add single bone/weight to vertex | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void AddBoneWeightsFromKinematicBindings() |
Add bone weight based on the kinematic bindings. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void DefineSchema() |
Define the facade | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< TArray< int32 > > * FindBoneIndices() |
Return the vertex bone indices from the collection. Null if not initialized. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< TArray< float > > * FindBoneWeights() |
Return the vertex bone weights from the collection. Null if not initialized. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< int32 > * FindGeomketryLODs() |
Return the geometry LODs from the collection. Null if not initialized. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< float > * FindKinematicWeights() |
Return the vertex kinematic weights from the collection. Null if not initialized. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< TObjectPtr< UObject > > * FindSkeletalMeshes() |
Return the skeletal meshes from the collection. Null if not initialized. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< TArray< int32 > > & GetBoneIndices() |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
const TManagedArray< TArray< float > > & GetBoneWeights() |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
const TManagedArray< int32 > & GetGeometryLODs() |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
const TManagedArray< float > & GetKinematicWeights() |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
const FManagedArrayCollection & GetManagedArrayCollection() |
Get the managed array collection | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
const TManagedArray< TObjectPtr< UObject > > & GetSkeletalMeshes() |
GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
bool HasValidBoneIndicesAndWeights() |
Does the collection have bone weight and indices defined? | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
bool IsConst() |
Is the Facade const | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
bool IsKinematicVertex
(
int32 VertexIndex |
Return if the vertex is kinematic Pre 5.5 we did not have per-vertex kinematic attribute. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
bool IsValid() |
Is the Facade defined on the collection? | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
| Modify bone weight based on the kinematic bindings. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | ||
void ModifyGeometryBinding
(
const int32 GeometryIndex, |
Modify the geometry skelmesh and LOD. | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void ModifyKinematicWeight
(
int32 VertexIndex, |
Modify kinematic weight based | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void NormalizeBoneWeights() |
Normalize bone weights | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
int32 NumBones() |
Return number of bones | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
int32 NumGeometry() |
Return number of geometries | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
int32 NumVertices() |
Return number of vertices | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void SetVertexArrayKinematic
(
const TArray< int32 >& VertexIndices, |
Set vertex to be kinematic/dynamic | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h | |
void SetVertexKinematic
(
int32 VertexIndex, |
Set vertex to be kinematic/dynamic | GeometryCollection/Facades/CollectionVertexBoneWeightsFacade.h |