Class FBEyeTrackingSocial
This extension enables applications to obtain position and orientation of the user’s eyes. It enables applications to render eyes in XR experiences.
This extension is intended to drive animation of avatar eyes. So, for that purpose, the runtimes may filter the poses in ways that are suitable for avatar eye interaction but detrimental to other use cases. This extension should not be used for other eye tracking purposes. For interaction, XR_EXT_eye_gaze_interaction should be used.
Eye tracking data is sensitive personal information and is closely linked to personal privacy and integrity. It is strongly recommended that applications that store or transfer eye tracking data always ask the user for active and specific acceptance to do so.
If a runtime supports a permission system to control application access to the eye tracker, then the runtime must set the isValid field to FALSE on the supplied XrEyeGazeFB structure until the application has been allowed access to the eye tracker. When the application access has been allowed, the runtime may set isValid on the supplied XrEyeGazeFB structure to TRUE.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intXrEyePositionFB - Enumerates eyes.static final intXrEyePositionFB - Enumerates eyes.static final intXrEyePositionFB - Enumerates eyes.static final StringThe extension name.static final intThe extension specification version.static final intExtendsXrObjectType.static final intExtendsXrStructureType.static final intExtendsXrStructureType.static final intExtendsXrStructureType.static final intExtendsXrStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnxrCreateEyeTrackerFB(XrSession session, long createInfo, long eyeTracker) Unsafe version of:CreateEyeTrackerFBstatic intnxrGetEyeGazesFB(XrEyeTrackerFB eyeTracker, long gazeInfo, long eyeGazes) Unsafe version of:GetEyeGazesFBstatic intxrCreateEyeTrackerFB(XrSession session, XrEyeTrackerCreateInfoFB createInfo, org.lwjgl.PointerBuffer eyeTracker) Create an eye gaze handle.static intxrDestroyEyeTrackerFB(XrEyeTrackerFB eyeTracker) Destroy an eye gaze handle.static intxrGetEyeGazesFB(XrEyeTrackerFB eyeTracker, XrEyeGazesInfoFB gazeInfo, XrEyeGazesFB eyeGazes) Locate eye gaze directions.
-
Field Details
-
XR_FB_eye_tracking_social_SPEC_VERSION
public static final int XR_FB_eye_tracking_social_SPEC_VERSIONThe extension specification version.- See Also:
-
XR_FB_EYE_TRACKING_SOCIAL_EXTENSION_NAME
The extension name.- See Also:
-
XR_OBJECT_TYPE_EYE_TRACKER_FB
public static final int XR_OBJECT_TYPE_EYE_TRACKER_FBExtendsXrObjectType.- See Also:
-
XR_TYPE_EYE_TRACKER_CREATE_INFO_FB
public static final int XR_TYPE_EYE_TRACKER_CREATE_INFO_FBExtendsXrStructureType.Enum values:
- See Also:
-
XR_TYPE_EYE_GAZES_INFO_FB
public static final int XR_TYPE_EYE_GAZES_INFO_FBExtendsXrStructureType.Enum values:
- See Also:
-
XR_TYPE_EYE_GAZES_FB
public static final int XR_TYPE_EYE_GAZES_FBExtendsXrStructureType.Enum values:
- See Also:
-
XR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_FB
public static final int XR_TYPE_SYSTEM_EYE_TRACKING_PROPERTIES_FBExtendsXrStructureType.Enum values:
- See Also:
-
XR_EYE_POSITION_LEFT_FB
public static final int XR_EYE_POSITION_LEFT_FBXrEyePositionFB - Enumerates eyes.Enumerant Descriptions
EYE_POSITION_LEFT_FB— Specifies the position of the left eye.EYE_POSITION_RIGHT_FB— Specifies the position of the right eye.
See Also
Enum values:
- See Also:
-
XR_EYE_POSITION_RIGHT_FB
public static final int XR_EYE_POSITION_RIGHT_FBXrEyePositionFB - Enumerates eyes.Enumerant Descriptions
EYE_POSITION_LEFT_FB— Specifies the position of the left eye.EYE_POSITION_RIGHT_FB— Specifies the position of the right eye.
See Also
Enum values:
- See Also:
-
XR_EYE_POSITION_COUNT_FB
public static final int XR_EYE_POSITION_COUNT_FBXrEyePositionFB - Enumerates eyes.Enumerant Descriptions
EYE_POSITION_LEFT_FB— Specifies the position of the left eye.EYE_POSITION_RIGHT_FB— Specifies the position of the right eye.
See Also
Enum values:
- See Also:
-
-
Method Details
-
nxrCreateEyeTrackerFB
Unsafe version of:CreateEyeTrackerFB -
xrCreateEyeTrackerFB
public static int xrCreateEyeTrackerFB(XrSession session, XrEyeTrackerCreateInfoFB createInfo, org.lwjgl.PointerBuffer eyeTracker) Create an eye gaze handle.C Specification
An application creates an
XrEyeTrackerFBhandle usingCreateEyeTrackerFBfunction.XrResult xrCreateEyeTrackerFB( XrSession session, const XrEyeTrackerCreateInfoFB* createInfo, XrEyeTrackerFB* eyeTracker);Description
If the system does not support eye tracking, the runtime must return
ERROR_FEATURE_UNSUPPORTEDfromCreateEyeTrackerFB. In this case, the runtime must returnFALSEforXrSystemEyeTrackingPropertiesFB::supportsEyeTrackingwhen the functionGetSystemPropertiesis called, so that the application can avoid creating an eye tracker.Valid Usage (Implicit)
- The
XR_FB_eye_tracking_socialextension must be enabled prior to callingCreateEyeTrackerFB sessionmust be a validXrSessionhandlecreateInfomust be a pointer to a validXrEyeTrackerCreateInfoFBstructureeyeTrackermust be a pointer to anXrEyeTrackerFBhandle
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
session- anXrSessionin which the eye tracker will be active.createInfo- theXrEyeTrackerCreateInfoFBused to specify the eye tracker.eyeTracker- the returnedXrEyeTrackerFBhandle.
- The
-
xrDestroyEyeTrackerFB
Destroy an eye gaze handle.C Specification
DestroyEyeTrackerFBfunction releases theeyeTrackerand the underlying resources when the eye tracking experience is over.XrResult xrDestroyEyeTrackerFB( XrEyeTrackerFB eyeTracker);Valid Usage (Implicit)
- The
XR_FB_eye_tracking_socialextension must be enabled prior to callingDestroyEyeTrackerFB eyeTrackermust be a validXrEyeTrackerFBhandle
Thread Safety
- Access to
eyeTracker, and any child handles, must be externally synchronized
Return Codes
- On success, this command returns
- On failure, this command returns
- Parameters:
eyeTracker- anXrEyeTrackerFBpreviously created byCreateEyeTrackerFB.
- The
-
nxrGetEyeGazesFB
Unsafe version of:GetEyeGazesFB -
xrGetEyeGazesFB
public static int xrGetEyeGazesFB(XrEyeTrackerFB eyeTracker, XrEyeGazesInfoFB gazeInfo, XrEyeGazesFB eyeGazes) Locate eye gaze directions.C Specification
The
GetEyeGazesFBfunction is defined as:XrResult xrGetEyeGazesFB( XrEyeTrackerFB eyeTracker, const XrEyeGazesInfoFB* gazeInfo, XrEyeGazesFB* eyeGazes);Description
The
GetEyeGazesFBfunction obtains pose for a user’s eyes at a specific time and within a specific coordinate system.Valid Usage (Implicit)
- The
XR_FB_eye_tracking_socialextension must be enabled prior to callingGetEyeGazesFB eyeTrackermust be a validXrEyeTrackerFBhandlegazeInfomust be a pointer to a validXrEyeGazesInfoFBstructureeyeGazesmust be a pointer to anXrEyeGazesFBstructure
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
eyeTracker- anXrEyeTrackerFBpreviously created byCreateEyeTrackerFB.gazeInfo- the information to get eye gaze.eyeGazes- a pointer toXrEyeGazesFBreceiving the returned eye poses and confidence.
- The
-