Navigation
API > API/Plugins > API/Plugins/MetaHumanCoreTechLib > API/Plugins/MetaHumanCoreTechLib/FMetaHumanCharacterBodyIdentity
| Name | FState |
| Type | class |
| Header File | /Engine/Plugins/MetaHuman/MetaHumanCoreTechLib/Source/MetaHumanCoreTechLib/Public/MetaHumanCharacterBodyIdentity.h |
| Include Path | #include "MetaHumanCharacterBodyIdentity.h" |
Syntax
class FState
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| MetaHumanCharacterBodyIdentity.h | |||
FState () |
MetaHumanCharacterBodyIdentity.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FState() |
MetaHumanCharacterBodyIdentity.h |
Structs
| Name | Remarks |
|---|---|
| FImpl |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| Impl | TPimplPtr< FImpl > | MetaHumanCharacterBodyIdentity.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool AlignToTargetMesh
(
const FConformTargetParams& InConformTargetParams |
Rigidly aligns the model to the target mesh using only global controls (scale, translation). | MetaHumanCharacterBodyIdentity.h | |
void BlendPresets
(
int32 InGizmoIndex, |
Blend region based on preset weights | MetaHumanCharacterBodyIdentity.h | |
void ClearVertexDeltas() |
Clear any vertex-level deltas from the body state | MetaHumanCharacterBodyIdentity.h | |
| Conforms the model to target parameters. Vertices must be in MH topology. | MetaHumanCharacterBodyIdentity.h | ||
bool ConformTarget
(
const FConformTargetParams& InConformTargetParams |
Conforms the model to target parameters. Vertices can be any topology. | MetaHumanCharacterBodyIdentity.h | |
TArray< FMatrix44f > CopyBindPose() |
Copy the bind pose transforms | MetaHumanCharacterBodyIdentity.h | |
void CopyCombinedModelVertexInfluenceWeights
(
TArray< TPair< int32, TArray< FFloatTriplet > > >& OutCombinedModelVertexInfluenceWeights |
Copy the combined body model skinning weights as an array of triplets which can be used to reconstruct a sparse matrix of skinning weights | MetaHumanCharacterBodyIdentity.h | |
TArray< FMatrix44f > CopyComponentPose() |
Copy the current component pose transforms | MetaHumanCharacterBodyIdentity.h | |
bool Deserialize
(
const FSharedBuffer& InArchive |
MetaHumanCharacterBodyIdentity.h | ||
void EvaluateBodyConstraints
(
const TArray< FMetaHumanCharacterBodyConstraint >& BodyConstraints |
Set the body constraints and evaluate the DNA vertices based on the state | MetaHumanCharacterBodyIdentity.h | |
bool FitToBodyDna
(
TSharedRef< class IDNAReader > InBodyDna, |
Fit the Character to the supplied DNA | MetaHumanCharacterBodyIdentity.h | |
bool FitToTarget
(
const TArray< FVector3f >& InVertices, |
Fit the Character to the supplied vertices | MetaHumanCharacterBodyIdentity.h | |
TArray< FMetaHumanCharacterBodyConstraint > GetBodyConstraints
(
bool bScaleMeasurementRangesWithHeight |
Get the body constraints from the model | MetaHumanCharacterBodyIdentity.h | |
TArray< float > GetBodyModelCoefficients() |
Get the GUI controls from the underlying body state | MetaHumanCharacterBodyIdentity.h | |
void GetCombinedModelVertexInfluenceWeightsLOD0
(
TArray< FFloatTriplet >& OutCombinedModelVertexInfluenceWeightsLOD0 |
Copy the combined body model skinning weights as an array of triplets for LOD0 | MetaHumanCharacterBodyIdentity.h | |
TArray< FVector > GetContourVertices
(
int32 ConstraintIndex |
Get the contour vertex positions on the mesh for a particular constraint | MetaHumanCharacterBodyIdentity.h | |
float GetGlobalDeltaScale() |
Get and set the body vertex and joint global delta scale | MetaHumanCharacterBodyIdentity.h | |
TArray< FVector3f > GetJointTranslations() |
Get joint positions | MetaHumanCharacterBodyIdentity.h | |
float GetMeasurement
(
int32 ConstraintIndex |
Get the actual measurement on the mesh for a particular constraint | MetaHumanCharacterBodyIdentity.h | |
void GetMeasurementsForFaceAndBody
(
TSharedRef< IDNAReader > InFaceDNA, |
Obtains measurements map (string to float) for given face and body DNAs | MetaHumanCharacterBodyIdentity.h | |
void GetMeasurementsForFaceAndBody
(
const TArray< FVector3f >& InFaceRawVertices, |
Obtains measurements map (string to float) for body state with given face vertices | MetaHumanCharacterBodyIdentity.h | |
EMetaHumanBodyType GetMetaHumanBodyType() |
Get MetaHuman body type | MetaHumanCharacterBodyIdentity.h | |
void GetNeutralJointTransform
(
int32 JointIndex, |
MetaHumanCharacterBodyIdentity.h | ||
| MetaHumanCharacterBodyIdentity.h | |||
int32 GetNumberOfConstraints() |
Get the number of constraints from the model | MetaHumanCharacterBodyIdentity.h | |
int32 GetNumberOfJoints() |
MetaHumanCharacterBodyIdentity.h | ||
TArray< int32 > GetNumVerticesPerLOD() |
Get the number of vertices per LOD | MetaHumanCharacterBodyIdentity.h | |
TArray< PhysicsBodyVolume > GetPhysicsBodyVolumes
(
const FName& InJointName |
Get the list of physics volumes for a joint | MetaHumanCharacterBodyIdentity.h | |
| Get preset body keypoints from the body archetype | MetaHumanCharacterBodyIdentity.h | ||
TArray< FVector3f > GetRegionGizmos() |
Get gizmo positions used for blending regions | MetaHumanCharacterBodyIdentity.h | |
TArray< int32 > GetTrianglesIndices() |
Get the triangle indices from the state | MetaHumanCharacterBodyIdentity.h | |
FVector3f GetVertex
(
const TArray< FVector3f >& InVertices, |
Get vertex in UE coordinate system for a specific dna mesh and dna vertex index | MetaHumanCharacterBodyIdentity.h | |
FMetaHumanRigEvaluatedState GetVerticesAndVertexNormals() |
Get the DNA vertices and vertex normals from the state | MetaHumanCharacterBodyIdentity.h | |
void GetVerticesWithAndWithoutDeltas
(
FMetaHumanRigEvaluatedState& OutNoDelta, |
Get body state evaluated with no deltas and with full deltas at scale 1. | MetaHumanCharacterBodyIdentity.h | |
FMeshConformIteration & OnMeshConformIteration() |
Get delegate for updates from each iteration in conform process | MetaHumanCharacterBodyIdentity.h | |
bool RefineVerticesToTarget
(
const FRefinementTargetParams& InRefinementTargetParams |
Refines vertices to the target mesh | MetaHumanCharacterBodyIdentity.h | |
void Reset() |
Reset the body to the archetype | MetaHumanCharacterBodyIdentity.h | |
void ResetBodyOnly() |
Reset the body model only in body state, leaving the face unchanged | MetaHumanCharacterBodyIdentity.h | |
void ResetFaceModel() |
Reset the face model in body state | MetaHumanCharacterBodyIdentity.h | |
int32 SelectVertex
(
FVector3f InOrigin, |
Selects a vertex given the input ray | MetaHumanCharacterBodyIdentity.h | |
bool Serialize
(
FSharedBuffer& OutArchive |
Serialize/Deserialize | MetaHumanCharacterBodyIdentity.h | |
void SetApplyFloorOffset
(
bool bApplyFloorOffset |
Sets if a floor offset should be applied to set body state on the floor | MetaHumanCharacterBodyIdentity.h | |
void SetCombinedModelVertexInfluenceWeightsLOD0
(
TArray< FFloatTriplet > InCombinedModelVertexInfluenceWeightsLOD0 |
Copy the combined body model skinning weights as an array of triplets for LOD0 | MetaHumanCharacterBodyIdentity.h | |
void SetEvaluatePose
(
bool bEvaluatePose |
Sets if a pose other than MetaHuman A pose should be evaluated | MetaHumanCharacterBodyIdentity.h | |
void SetGlobalDeltaScale
(
float InVertexDelta |
MetaHumanCharacterBodyIdentity.h | ||
bool SetJointRotations
(
const TArray< FVector3f >& InJointRotations, |
Set custom joint rotations | MetaHumanCharacterBodyIdentity.h | |
bool SetJointTranslations
(
const TArray< FVector3f >& InComponentJointTranslations, |
Set custom joint positions | MetaHumanCharacterBodyIdentity.h | |
bool SetMesh
(
const TArray< FVector3f >& InVertices, |
Set custom mesh | MetaHumanCharacterBodyIdentity.h | |
void SetMetaHumanBodyType
(
EMetaHumanBodyType InMetaHumanBodyType, |
Set MetaHuman body type | MetaHumanCharacterBodyIdentity.h | |
TSharedRef< IDNAReader > StateToDna
(
UDNAAsset* InBodyDna |
This function is also deprecated since it seems quite useless since we can get DNA Reader directly from DNA and here we do unnecessary writing and reading from DNA | MetaHumanCharacterBodyIdentity.h | |
TSharedRef< IDNAReader > StateToDna
(
dna::Reader* InDnaReader, |
Create updated dna from state | MetaHumanCharacterBodyIdentity.h | |
TArray< FVector3f > TransformTargetVerticesToBindPose
(
const TArray< FVector3f >& InVertices |
Transform a set of template vertices (in UE coordinate space) that are rigidly attached to the body's head joint into the body identity's shape-adjusted bind frame, also in UE space. | MetaHumanCharacterBodyIdentity.h |