示例#1
0
    public void LoadTestData(TestBlock testBlock)
    {
        TestBlockData = testBlock;

        if (TestBlockData.SelectedVRHMD == TestBlock.VRHMD.VIVE)
        {
            _htcVive.gameObject.SetActive(true);
            _vrEyeTrackerController = _htcVive.GetComponentInChildren <VREyeTrackerController>();
        }
        else if (TestBlockData.SelectedVRHMD == TestBlock.VRHMD.FOVE)
        {
            _fove.gameObject.SetActive(true);
            _vrEyeTrackerController = _fove.GetComponentInChildren <VREyeTrackerController>();
        }
        else if (TestBlockData.SelectedVRHMD == TestBlock.VRHMD.NoHMD)
        {
            _pcController.gameObject.SetActive(true);
            _vrEyeTrackerController = _pcController.GetComponent <VREyeTrackerController>();
        }
        _targetCanvas.worldCamera   = _vrEyeTrackerController.VRCamera;
        _targetCanvas.planeDistance = _canvasDistanceToCamera;
        _showCursor = TestBlockData.ShowCursor;
        GazeCursor.Instance.SetEnabled(false);
        _vrEyeTrackerController.LoadTestData(this.TestBlockData);
        GazeCursor.Instance.MouseSensitivity = TestBlockData.MouseSensivity;
        if (TestBlockData.RecordGazePosition)
        {
            //Starts VIVE pupil capture software regardless of control condition
            _pupilGazeTracker.enabled = true && TestBlockData.SelectedVRHMD == TestBlock.VRHMD.VIVE;
        }
        else
        {
            //Starts only if control method is eyetracking with VIVE headset
            _pupilGazeTracker.enabled = (TestBlockData.SelectedControlMethod == TestBlock.ControlMethod.Eyetracking) &&
                                        TestBlockData.SelectedVRHMD == TestBlock.VRHMD.VIVE;
        }
    }