There is a GazeTest map in the Study Framework Demo project.
- In the
StudySetup
Actor setUseGazeTracker
toEyeTracking
(if you want to use the actual eye tracker) orHeadRotationOnly
(which just approximates the gaze direction by the head's forward direction; it is the fall-back if no eye tracker is found andEyeTracking
is chosen). - Object's that should be "gazeable" have to have one of the two components:
SFGazeTarget
: This has it's own sphere collision which is used for line trace checks (so use this if only part of an actor should be gazeable or even a region greater than the actor itself).SFGazeTargetActor
: The whole actor is used for line trace checks.- both either use the name specified as
TargetName
or ifUSeActorName
is activated, the name of the actor they are attached to.
- The GazeTracker (e.g.
USFGameInstance::Get()->GetGazeTracker()
) provides:GetCurrentGazeTarget()
: returning the name (TargetName
or actor name) of the currently gaze at target or an empty string if nothing "gazeable" is looked at.LaunchCalibration()
to launch a calibration from code.- logs the currently gaze at target name and the gaze direction per frame into a separate file per participant. The participant's gaze tracking logs are located in the StudyLogs/GazeTrackingLogs folder. For head rotation logs, please refer to the Logging the Position of the Player section of the wiki.
If you just want to use HeadRotationOnly
as tracking mode, the following is not required.
To add eye tracking you have to add the SRanipal
plugin to your project it can be downloaded as part of the SDK here (HTC Vive account required)
Plugins/SRanipal/Binaries
folder is commited to your project. In case it is ignored by default do git add -f Plugins/SRanipal/Binaries
Furthermore Vive SRAnipal
needs to be installed. Currently this can be done via Steam installing Vive Console
. I had problems starting calibration, since the firmware seemed not to be updated, starting Tobii Pro Lab
automatically started a firmware update.
Also in your project you have to have the SRanpial
plugin activated in the .uproject file
"Plugins": [
{
"Name": "SRanipal",
"Enabled": true
}
],
For any HTC Vive Pro Eye eye tracking to work:
- Steam (VR) for me needed to be started as admin
- SR_Runtime needs to be started (as admin)
- For development potentially also Visual Studio starting Unreal need to be run as admin
- (or maybe just run entirely under the admin profile)
If this is not done, eye calibration is not started correctly.
Some more insights can be found at: Unreal Eye Tracking Demo Project