Package org.lwjgl.ovr

Class OVRTrackingState

  • All Implemented Interfaces:
    java.lang.AutoCloseable, NativeResource, Pointer

    public class OVRTrackingState
    extends Struct
    implements NativeResource
    Tracking state at a given absolute time (describes predicted HMD pose etc). Returned by GetTrackingState.

    Member documentation

    • HeadPose – Predicted head pose (and derivatives) at the requested absolute time. The look-ahead interval is equal to (HeadPose.TimeInSeconds - RawSensorData.TimeInSeconds).
    • StatusFlagsHeadPose tracking status described by ovrStatusBits.
    • HandPoses – The most recent calculated pose for each hand when hand controller tracking is present. HandPoses[ovrHand_Left] refers to the left hand and HandPoses[ovrHand_Right] to the right hand. These values can be combined with ovrInputState for complete hand controller information.
    • HandStatusFlagsHandPoses status flags described by ovrStatusBits. Only Status_OrientationTracked and Status_PositionTracked are reported.
    • CalibratedOrigin – the pose of the origin captured during calibration.

      Like all other poses here, this is expressed in the space set by RecenterTrackingOrigin, or SpecifyTrackingOrigin and so will change every time either of those functions are called. This pose can be used to calculate where the calibrated origin lands in the new recentered space. If an application never calls RecenterTrackingOrigin or SpecifyTrackingOrigin, expect this value to be the identity pose and as such will point respective origin based on ovrTrackingOrigin requested when calling GetTrackingState.

    Layout

    
     struct ovrTrackingState {
         ovrPoseStatef HeadPose;
         unsigned int StatusFlags;
         ovrPoseStatef HandPoses[2];
         unsigned int HandStatusFlags[2];
         ovrPosef CalibratedOrigin;
     }