Jump to content

Vive SRanipal eye tracking data

Recommended Posts


I'm using the SRanipal SDK in Unity to get eye tracking data from the HTC Vive Pro Eye headset. 

I have a question regarding the pos_sensor_Lx, pos_sensor_Ly, pos_sensor_Rx, pos_sensor_Ry variables (normalized by default in [0,1]). It is  generically said that they rapresent the pupil position. 

I tried to follow with the Vive Pro Eye a square figure and then overlay the plot of the pupil position for each eye as in the picture attached below (where the image in the background represents the left and right eye view as seen in the Unity game view). However the result obtained does not convince me, I expected to have the plot overlayed on the red square. 

So my question is: what do (pos_sensor_Lx, pos_sensor_Ly), (pos_sensor_Rx, pos_sensor_Ry) represent? Are them the position of the pupil on the telecamera or do they indicate where the user is watching on the headset screen? 

Are the variables I have to consider to get the gaze coordinates or I have to consider something else? 

Thank you! 


Link to comment
Share on other sites

Thank you for your answer. 

Anyway can you please tell me what pupil position is? Is it the position of the pupil on the telecamera or does it indicate where the user is watching on the headset screen?

Another question. I have plotted the (x,y) gaze directions for the left and the right eye normalized respect to the z gaze direction obtaining the result in the picture attached. Why is there that offset between the plot and the red squares? I expected the plot overlayed on the squares. 

I've read that the origin of the HTC Vive headset is located 15 mm "behind" the eye tracker's origin. Can be the offset observed caused by this fact? Is there a way to solve it so that the plot is over the red squares? 

Thank you 


Edited by Federica
Link to comment
Share on other sites

  • 3 weeks later...

Hi @Federica,

We think you're using the pupil_position_in_sensor_area and it means the pupil position in the eye image that’s captured by eye tracking camera.

If you want to get the gaze coordinates you may consider to use gaze_origin_mm and gaze_direction_normalized and do some coding in Unity 3D space. 

ViveSR.anipal.Eye.SingleEyeData Struct Reference

Public Member Functions


GetValidity (SingleEyeDataValidity validity)


Public Attributes



















Link to comment
Share on other sites

  • 2 weeks later...
  • 1 year later...
On 2/17/2021 at 9:47 AM, Federica said:

So what's the eye image? Is the lens of the headset? Can not understand the eye image by the eye tracking camera, does they use another coordinate syetem. I know the gaze origin and gaze direction is based on HMD coordinate system. I have a question which is can we get the gaze origin based on the pupil position in sensor area?


Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...