Gaze and Fixations
Gaze and Fixations are closely related. Gaze records the HMD position over time and the direction of the eyes at a set interval. Fixations use a dispersion technique to identify where the participant's eyes are steady and maintaining focus.
When using an HMD without Eye Tracking, Fixations will not be recorded and Gaze will assume the participant's focus is directly in front of the HMD.
We use 3rd party eye tracking plugins to record Fixations and Gaze using Eye Tracking. Import any required Unity Packages into your project. For example, if you are using the Vive Pro Eye, you will need to import the
SRanipal SDK. Then, open the Scene Setup Window from the Cognitive3D menu and select the appropriate SDK. Press Next until the project re-compiles. Then you can close this window.
Fixation Recorder Component
When using an SDK with supported Eye Tracking the Fixation Recorder component will be added to the
Cognitive3D_Manager Game Object on Start if it is not already present. If you wish to configure recording Fixations you can add this component and modify these values in the Editor. A high level summary is available on the Fixations page.
The default values are taken from several academic papers and should be suitable for most projects.
Note: all times are in milliseconds
MaxBlinkMS- The maximum amount of time that can be assigned as a single 'blink'. If eyes are closed for longer than this we assume that the user is consciously closing their eyes
PreBlinkDiscardMS- When a blink occurs ignore gaze preceding the blink up to this far back in time
BlinkEndWarmupMS- After a blink has ended ignore gaze up to this long afterwards as the participant re-focuses
MinFixationMS- The time that gaze must be within the
MaxFixationAnglebefore a Fixation begins
MaxConsecutiveDiscardMS- The amount of time gaze can be discarded before a fixation is ended. Gaze can be discarded if the eye tracker returns unexpected values
MaxFixationAngle- The angle that a number of gaze samples must fall within for a Fixation to begin
MaxConsecutiveOffDynamicMS- Amount of time gaze can be off the transform before fixation ends. Mostly useful when Fixation is right on the edge of a Dynamic Object
DynamicFixationSizeMultiplier- Increases the
MaxFixationAngleon Dynamic Objects. Helps reduce incorrect Fixation ending, especially on Smooth Pursuit Fixations
FocusSizeFromCenter- This curve increases the size of the
MaxFixationAngleas gaze gets toward the edge of the viewport. This is used to reduce the number of incorrectly ended fixations because of hardware limits at the edge of the eye tracking field of view
- SaccadeFixationEndMS - Amount of consecutive eye samples before a Fixation ends as the eye fixates elsewhere. This is the most common way of fixations ending
If you have a question or any feedback about our documentation please use the Intercom button in the lower right corner of any web page.