I have a Unity scene playing a 360-degree video. The user views the 360-degree video using a HTC Vive HMD with Integrated Tobii Eye Tracker. I am using Tobii prefabs to save Raw and Unity Data to an XML file. The XML file has parameters and values like Head Position, Rotation, Gaze Position, Direction etc. How can I use these to find where the user wearing the HMD is looking into the scene?
I have used Gaze Direction values from the left and right eye and plotted these using matplotlib. However, I am unable to interpret the plot for specific conditions for e.g. when the user wearing the HMD turns around to view a portion of the 360-degree video.
<GazeData TimeStamp="401195894372">
<Pose Position="(-0.23225010, 0.92871360, 0.13882240)" Rotation="(0.01330298, 0.09787695, -0.00775034, 0.99507950)" Valid="True" />
<Left>
<GazeDirection Value="(-0.05865479, -0.19734190, 0.97857670)" Valid="True" />
<GazeOrigin Value="(-0.03072109, 0.00550990, -0.03687405)" Valid="True" />
<PupilDiameter Value="0.00202419" Valid="True" />
<GazeRayWorld Origin="(-0.26945470, 0.93564700, 0.10879590)" Direction="(0.12933440, -0.22388930, 0.96599500)" Valid="True" />
</Left>
<Right>
<GazeDirection Value="(0.16032410, -0.24493410, 0.95617680)" Valid="True" />
<GazeOrigin Value="(0.03148644, 0.00550067, -0.03543135)" Valid="True" />
<PupilDiameter Value="0.00184862" Valid="True" />
<GazeRayWorld Origin="(-0.20816600, 0.93479980, 0.09807995)" Direction="(0.33887940, -0.27364290, 0.90015570)" Valid="True" />
</Right>
<CombinedGazeRayWorld Origin="(-0.23881030, 0.93522340, 0.10343790)" Direction="(0.23560470, -0.25035830, 0.93904810)" Valid="True" />
</GazeData>