6.1.OpenXR Hand Pose Component
The OpenXR Hand Pose Component is a dedicated component for polling/replicating hand poses from OpenXR’s Skeletal Hand Tracking Extension.
https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XR_EXT_hand_tracking
It will auto replicate / blend the poses that are output from this extension, as well as provide a container that can be used to apply them to the default ue4 skeleton (or a custom skeleton if you supply the correct re-mapping container).
It also has hand pose detection for detecting the gestures that are being made with the data.
Below is a list of the properties of the component.
Properties
Replicate Skeletal Data | If true the component will automatically replicate the skeletal tracking data | ||||||||||||
Smooth Replicated Skeletal Data | If true the component will smooth replicated data between updates | ||||||||||||
Replication Rate for Skeletal Animations | The rate to replicate the data at (lower is better for less bandwidth) | ||||||||||||
Get Mock Up Pose For Debugging | If true then a stored hardcoded pose will be given so you can test the component without tracked hands | ||||||||||||
Hand Skeletal Actions | List of hand skeletons to track (generally left and right so you would have two) | ||||||||||||
|
To use the skeletal data in the anim graph you can either re-parent the animation instance that your graph uses to the OpenXR animation instance as below:
Or manually provide the hand skeletal actions from the OpenXRHandPoseComponent, assigning them to a BPOpenXRSkeletalData var that you pass in (in screen shot it is showing a make literal, you should be just passing the components ones in).
The Apply OpenXR Hand Pose node then actually applies the pose to the skeletal mesh.
Apply OpenXRHandPose Properties:
Skeleton Type | The type of skeleton, if custom you would have to show the pin for custom bone mappings and pass one in. Otherwise you should pick between the UE4/SteamVR skeleton types. |
Skip Root Bone | Skips moving/rotating the wrist bone, generally used for full body meshes when you just want finger curls. |
Only Apply Wrist Transform | Only applies the rotation and/or location to the wrist, can be used for multiple step operations. |
Optional Stored Action Info | A reference to the hand skeleton action you want to use, only generally used when not using the OpenXRAnimInstance |
Component Pose | – |
Alpha | – |