UHandTrackingMeshBlueprintFunctionLibrary

#include <HandTrackingMeshBlueprintFunctionLibrary.h>

Summary

Inheritance

Inherits from: UBlueprintFunctionLibrary

Public static functions

CreateHandMesh(EControllerHand ControllerHand, UMaterialInterface *Material, USkeletalMesh *& SkeletalMesh)
bool
Creates a hand mesh for a specified hand.
GetBoneNameFromHandKeypoint(EHandKeypoint HandKeypoint)
FName
Gets the hand mesh bone name from an EHandKeypoint value.
GetJointTransforms(EControllerHand ControllerHand, TArray< FTransform > & JointTransforms)
bool
Gets the transforms for the joints.
SetHandMeshScale(EControllerHand ControllerHand, float Scale)
bool
Sets the hand mesh scale via OpenXR settings.

Public static functions

CreateHandMesh

bool CreateHandMesh(
  EControllerHand ControllerHand,
  UMaterialInterface *Material,
  USkeletalMesh *& SkeletalMesh
)

Creates a hand mesh for a specified hand.

Details
Parameters
ControllerHand
Hand to mesh. EControllerHand::Right will use the right hand; anything else will use the left hand.
Material
Material to use (Material must have 'Use with skeletal mesh' parameter set or it will not be visible).
SkeletalMesh
The created mesh, if successful.
Returns
True if the underlying API call was successful.

GetBoneNameFromHandKeypoint

FName GetBoneNameFromHandKeypoint(
  EHandKeypoint HandKeypoint
)

Gets the hand mesh bone name from an EHandKeypoint value.

Not all hand keypoints map to bones, so an empty FName may be returned.

Details
Parameters
HandKeypoint
Keypoint for which the bone name is desired.
Returns
Name of corresponding bone (may be empty if no bone matches).

GetJointTransforms

bool GetJointTransforms(
  EControllerHand ControllerHand,
  TArray< FTransform > & JointTransforms
)

Gets the transforms for the joints.

Use EHandKeypoint enum for indexes into the resulting array.

Details
Parameters
ControllerHand
Hand to retrieve. EControllerHand::Right will use the right hand; anything else will use the left hand.
JointTransforms
An array transforms of size EHandKeypointCount transforms, if successful.
Returns
True if the underlying API call was successful.

SetHandMeshScale

bool SetHandMeshScale(
  EControllerHand ControllerHand,
  float Scale
)

Sets the hand mesh scale via OpenXR settings.

Note that this scales bones in length but not in radius.

Details
Parameters
ControllerHand
Hand to scale. EControllerHand::Right will use the right hand; anything else will use the left hand.
Returns
True if the underlying API call was successful.