Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/DynamicMesh
Inheritance Hierarchy
- TDynamicAttributeBase
- TDynamicVertexSkinWeightsAttribute
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/DynamicMesh/DynamicMeshAttributeSet.h |
| Include | #include "DynamicMesh/DynamicMeshAttributeSet.h" |
| Source | /Engine/Source/Runtime/GeometryCore/Public/DynamicMesh/DynamicVertexSkinWeightsAttribute.h |
Syntax
template<typename ParentType>
class TDynamicVertexSkinWeightsAttribute : public UE::Geometry::TDynamicAttributeBase< ParentType >
Remarks
Forward declarations
TDynamicVertexAttribute provides per-vertex storage of bone weights (skin weights)
Variables
| Type | Name | Description | |
|---|---|---|---|
| ParentType * | Parent | The parent object (e.g. mesh, point set) this attribute belongs to | |
| TDynamicVector< FBoneWeights > | VertexBoneWeights | FIXME: Replace with a local slab allocator storage to avoid per-item TInlineAllocator. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
| Create an empty overlay | |||
TDynamicVertexSkinWeightsAttribute
(
ParentType* ParentIn, |
Create an attribute for the given parent |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | CompactCopy
(
const FCompactMaps& CompactMaps, |
||
| void | Copy
(
const TDynamicVertexSkinWeightsAttribute< ParentType >& Copy |
Set this overlay to contain the same arrays as the copy overlay | |
| void | CopyValue
(
int FromVertexID, |
Copy the attribute value at FromVertexID to ToVertexID | |
| TSet< int32 > | Accessors/Queries Returns a list of all unique bone indices that are used by this skin weight attribute. | ||
| ParentType * | GetParent () |
||
| const ParentType * | GetParent () |
||
| void | Get the element at a given index via a pair of bone index and weight arrays. | ||
| void | GetValue
(
int VertexID, |
Get the element at a given index | |
| void | GetValue
(
int VertexID, |
Get the element at a given index | |
| void | Initialize
(
const FBoneWeights InitialValue |
Initialize the attribute values to the given max vertex ID | |
| bool | ReindexBoneIndicesToSkeleton
(
const TArray< FName >& FromRefSkeleton, |
Re-index bone indices of the skin weights from one reference skeleton (represented by an array of bone names) to another. | |
| void | ResizeAttribStoreIfNeeded
(
int VertexID |
||
| void | Serialize
(
FArchive& Ar, |
||
| void | SetBoneWeightsFromBary
(
int SetAttribute, |
Set the value at an Attribute to be a barycentric interpolation of three other Attributes. | |
| void | SetBoneWeightsFromLerp
(
int SetAttribute, |
Set the value at an Attribute to be a linear interpolation of two other Attributes | |
| void | SetNewValue
(
int32 InNewVertexID, |
||
| void | SetValue
(
int VertexID, |
Set the element at a given index | |
| void | SetValue
(
int VertexID, |
Set the element at a given index | |
| void | Set the element at a given index |
Overridden from TDynamicAttributeBase
| Type | Name | Description | |
|---|---|---|---|
| bool | CheckValidity
(
bool bAllowNonmanifold, |
Check validity of attribute | |
| void | CompactInPlace
(
const FCompactMaps& CompactMaps |
Compact the attribute in place | |
| bool | CopyIn
(
int RawID, |
Generic function to copy data in to an attribute; it's up to the derived class to map RawID to chunks of attribute data | |
| bool | CopyOut
(
int RawID, |
Generic function to copy data out of an attribute; it's up to the derived class to map RawID to chunks of attribute data | |
| bool | CopyThroughMapping
(
const TDynamicAttributeBase< ParentType >* Source, |
Copy data from a different attribute to this one, using the mesh index mapping to determine the correspondence | |
| TDynamicAttributeBase< ParentType > * | MakeCompactCopy
(
const FCompactMaps& CompactMaps, |
Allocate a new compact copy of the attribute layer, optionally with a different parent. | |
| TDynamicAttributeBase< ParentType > * | MakeCopy
(
ParentType* ParentIn |
Allocate a new copy of the attribute layer, optionally with a different parent | |
| TDynamicAttributeBase< ParentType > * | MakeNew
(
ParentType* ParentIn |
Allocate a new empty instance of the same type of attribute layer | |
| TUniquePtr< TDynamicAttributeChangeBase< ParentType > > | |||
| void | OnCollapseEdge
(
const FDynamicMesh3::FEdgeCollapseInfo& CollapseInfo |
Update the overlay to reflect an edge collapse in the parent | |
| void | OnFlipEdge
(
const FDynamicMesh3::FEdgeFlipInfo& FlipInfo |
Update the overlay to reflect an edge flip in the parent | |
| void | OnMergeEdges
(
const FDynamicMesh3::FMergeEdgesInfo& MergeInfo |
Update the overlay to reflect an edge merge in the parent | |
| void | OnMergeVertices
(
const FDynamicMesh3::FMergeVerticesInfo& MergeInfo |
Update the overlay to reflect a vertex merge in the parent | |
| void | OnNewVertex
(
int VertexID, |
||
| void | OnPokeTriangle
(
const FDynamicMesh3::FPokeTriangleInfo& PokeInfo |
Update the overlay to reflect a face poke in the parent | |
| void | OnSplitEdge
(
const FDynamicMesh3::FEdgeSplitInfo& SplitInfo |
Update the overlay to reflect an edge split in the parent | |
| void | OnSplitVertex
(
const FDynamicMesh3::FVertexSplitInfo& SplitInfo, |
Update the overlay to reflect a vertex split in the parent |
Typedefs
| Name | Description |
|---|---|
| FBoneWeight | |
| FBoneWeights |