[英]How can I find the co-ordinates where the user wearing a VR Headset is looking at in a 360 video playing insider Unity Skybox?
我试图找到佩戴HTC Vive和集成Tobii Eyetracker的用户的视线坐标。 用户正在观看Unity Skybox中播放的360度视频。 我正在使用Tobii Pro SDK。
我已经使用了Tobii的VREyeTracker Prefab,并且正在XML文件中获取参数和值(下面在结果中提供更多详细信息)。 Unity Data与Raw Data有何不同? 由于我找不到任何具有相关描述的文档,因此不确定XML中获得的结果是否包含我要查找的信息。
Unity数据:
GazeDirection Value="(-0.05267334, 0.01541138, 0.99848940)" Valid="True" />
<GazeOrigin Value="(-0.03057870, 0.00478235, -0.04329382)" Valid="True" />
<PupilDiameter Value="0.00168019" Valid="True" />
<GazeRayWorld Origin="(-0.40116220, 1.04663500, -0.38193990)" Direction="(0.24876200, 0.05519217, 0.96699090)" Valid="True" />
原始数据:
<GazeDirection UnitVector="(0.05267334, 0.01541138, 0.99848940)" Validity="Valid" />
<GazeOrigin PositionInHMDCoordinates="(30.57870000, 4.78234900, -43.29382000)" Validity="Valid" />
<Pupil PupilDiameter="1.68019100" Validity="Valid" />
PupilPosition PositionInTrackingArea="(0.55140850, 0.63337760)" Validity="Valid" />
如果比较两个数据集,则可以很容易地看到以下关系:
Unity数据
<GazeDirection Value="(-0.05267334, 0.01541138, 0.99848940)" Valid="True" />
与有关
原始数据
<GazeDirection UnitVector="(0.05267334, 0.01541138, 0.99848940)" Validity="Valid" />
但X轴反转
Unity数据
<GazeOrigin Value="(-0.03057870, 0.00478235, -0.04329382)" Valid="True" />
被提升为
原始数据
<GazeOrigin PositionInHMDCoordinates="(30.57870000, 4.78234900, -43.29382000)" Validity="Valid" />
但X轴倒置且系数为1000(单位为米,单位为毫米)。 这个名字听起来像是相对于头部/ hmd设备的凝视射线的起点->左一点(3cm),在hmd中心上方(1.5cm)一点,在设备后面4cm。
Unity数据
<PupilDiameter Value="0.00168019" Valid="True" />
与有关
原始数据
<Pupil PupilDiameter="1.68019100" Validity="Valid" />
再次是系数1000
最后
Unity数据
<GazeRayWorld Origin="(-0.40116220, 1.04663500, -0.38193990)" Direction="(0.24876200, 0.05519217, 0.96699090)" Valid="True" />
听起来好像与GazeOrigin
有关,但这一次与HDM无关,而是在世界坐标中,其中Direction在世界空间中也是注视矢量。 在世界坐标系中,这意味着您正在世界空间中向左25厘米,向上6厘米,位置1处前方(-0.40116220, 1.04663500, -0.38193990)
发出声音(听起来像您坐着或很小;))。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.