Plasma Engine  2.0
Loading...
Searching...
No Matches
plXRHandTrackingInterface Class Referenceabstract

XR Hand tracking interface. More...

#include <XRHandTrackingInterface.h>

Inheritance diagram for plXRHandTrackingInterface:

Public Types

enum class  HandPartTrackingState { NotSupported , Untracked , Tracked }
 

Public Member Functions

virtual HandPartTrackingState TryGetBoneTransforms (plEnum< plXRHand > hand, plEnum< plXRHandPart > handPart, plEnum< plXRTransformSpace > space, plDynamicArray< plXRHandBone > &out_bones)=0
 Returns a array of bones in the given part of the hand.
 

Detailed Description

XR Hand tracking interface.

Aquire interface via plSingletonRegistry::GetSingletonInstance<plXRHandTrackingInterface>().

Member Enumeration Documentation

◆ HandPartTrackingState

Enumerator
NotSupported 

The given hand part is not supported by this hand tracker implementation.

Untracked 

The given hand part is currently not tracked or tracking is lost. Retry next frame.

Tracked 

The given hand part is tracked and the bones array was filled successfully.

Member Function Documentation

◆ TryGetBoneTransforms()

virtual HandPartTrackingState plXRHandTrackingInterface::TryGetBoneTransforms ( plEnum< plXRHand > hand,
plEnum< plXRHandPart > handPart,
plEnum< plXRTransformSpace > space,
plDynamicArray< plXRHandBone > & out_bones )
pure virtual

Returns a array of bones in the given part of the hand.

Bones are always ordered from furthest from the body moving inwards. E.g. for a finger index 0 should be the tip followed by distal, etc. ending in the wrist bone. Depending on the implementation the number of bones returned can be less than the number of actual bones in the hand.

Implemented in plOpenXRHandTracking.


The documentation for this class was generated from the following file: