Please Select Your Location
Australia
Österreich
België
Canada
Canada - Français
中国
Česká republika
Denmark
Deutschland
France
HongKong
Iceland
Ireland
Italia
日本
Korea
Latvija
Lietuva
Lëtzebuerg
Malta
المملكة العربية السعودية (Arabic)
Nederland
New Zealand
Norge
Polska
Portugal
Russia
Saudi Arabia
Southeast Asia
España
Suisse
Suomi
Sverige
台灣
Ukraine
United Kingdom
United States
Please Select Your Location
België
Česká republika
Denmark
Iceland
Ireland
Italia
Latvija
Lietuva
Lëtzebuerg
Malta
Nederland
Norge
Polska
Portugal
España
Suisse
Suomi
Sverige

Eye Tracking


Extension introduction

XR_EXT_eye_gaze_interaction and XR_HTC_eye_tracker allows developers to create an application with eye gaze interaction.

Supported Platforms and Devices

Platform Headset Supported Eye Gaze
Supported Plugin
Advanced Eye Tracking ※
Supported Plugin
PC PC Streaming Focus3/XR Elite
/Focus Vision
V OpenXREyeTracker (UE built-in)
ViveOpenXR 2.4.2 and above
ViveOpenXR 2.4.2 and above
Pure PC Vive Cosmos X X X
Vive Pro series V OpenXREyeTracker (UE built-in)
ViveOpenXR 2.4.2 and above
ViveOpenXR 2.4.2 and above
AIO Focus3 OpenXREyeTracker (UE built-in) X
XR Elite V OpenXREyeTracker (UE built-in)
ViveOpenXR 2.5.0 and above
ViveOpenXR 2.5.0 and above
Focus Vision V OpenXREyeTracker (UE built-in)
ViveOpenXR 2.5.0 and above
ViveOpenXR 2.5.0 and above

Advanced Eye Tracking include Eye Gaze , Stereo Eye Gaze , Pupil , and Eye Geometric Data .


Plugins Overview

There are 2 plugins available for using Eye Gaze. One is UE5 built-in OpenXREyeTracker plugin, another is ViveOpenXR plugin. If you wish to use Advanced Eye Tracking features like stereo eye gaze, pupil, or eye geometric data, please select ViveOpenXR plugin.


Using OpenXREyeTracker plugin (only Eye Gaze)

  1. Edit > Plugins > Built-in > Virtual Reality > OpenXREyeTracker, enable it.
  2. Edit > Plugins > Search for OpenXR, and make sure it is enabled.
  3. Note that the " SteamVR " and " OculusVR " plugin must be disabled for OpenXR to work.
  4. If you enable ViveOpenXR plugin as well, make sure that the HTC Eye Tracker must be "disabled" inside Edit > Project Settings > Plugins > Vive OpenXR > Enable HTC Eye Tracker under HTC Eye Tracker .
  5. Restart the engine for the changes to take effect.
⚠ IMPORTANT

ViveOpenXR plugin HTC Eye Tracker must be disabled if using OpenXREyeTracker plugin.


Using ViveOpenXR plugin (Eye Gaze with Advanced Eye Tracking)

  1. Edit > Plugins > Built-in > Virtual Reality > OpenXREyeTracker, disable it.
  2. Edit > Plugins > Search for OpenXR and ViveOpenXR, and make sure they are enabled.
  3. Note that the " SteamVR " and " OculusVR " plugin must be disabled for OpenXR to work.
  4. Edit > Project Settings > Plugins > Vive OpenXR > Enable HTC Eye Tracker under HTC Eye Tracker to enable OpenXR HTC Eye Tracker extension.
  5. Restart the engine for the changes to take effect.
⚠ IMPORTANT

OpenXREyeTracker plugin must be disabled if using ViveOpenXR plugin HTC Eye Tracker.


How to use Eye Gaze

NOTE: Eye Gaze is supported on both OpenXREyeTracker plugin and ViveOpenXR plugin.

  1. For the available eye gaze functions, please refer to EyeTrackerFunctionLibrary.h.
  2. Type Get Gaze Data to get the eye gaze data blueprint function.
    GetGazeData
  3. Set the Out Gaze Data to a variable and break the data for more specific use.
    BP_GazeData


How to use Advanced Eye Tracking (Stereo Eye Gaze, Pupil, and Eye Geomrtic Data)

NOTE: Advanced Eye Tracking is only supported for using ViveOpenXR plugin.

  1. Select Edit > Plugins > Built-in > Virtual Reality > OpenXREyeTracker, disable it.
  2. Select Edit > Project Settings > Plugins > Vive OpenXR > Enable HTC Eye Tracker under HTC Eye Tracker to enable OpenXR HTC Eye Tracker extension.
  3. For the available eye tracker functions, please refer to EyeTrackerFunctionLibrary.h and ViveOpenXREyeTrackerFunctionLibrary.h.
  4. Type Get Stereo Gaze Data to get the stereo eye gaze data blueprint function.
    GetStereoGazeData
  5. Set the Out Gaze Data to a variable and break the data for more specific use.
    BP_StereoGazeData
  6. Type Get HTC Eye Gaze Valid Data to get the isValid data of individual left and right eyes gaze.
    BP_EyeGazeValid
  7. Type Get HTC Pupil Data to get the Pupil data of individual left and right eyes.
    BP_EyePupil
  8. Type Get HTC Eye Geometric Data to get the Geometric data of individual left and right eyes.
    BP_EyeGeometric


Play the sample map

  1. The sample map is under Content > EyeGaze > Map .
    EyeGazeMap
  2. Start playing the EyeGaze map, and the color of the block on the dart board becomes yellow when staring at the block.
    PlayingEyeGazeMap
  3. With using ViveOpenXR plugin HTC Eye Tracker, you will see the HTC Eye Gaze Valid Data, HTC Pupil Data, HTC Eye Geometric Data shown on the black widget on the right front. Please refer to the previous section for knowing how to use ViveOpenXR plugin.
    HTCEyeTrackerWidget