Beispiel #1
0
    private void OnRecordingStopCallback(LXVRResult result, Tutorial2Status state)
    {
        if (result == LXVRResult.Success)
        {
            Debug.Log("OnRecordingStopCallback : " + result);
            switch (state)
            {
            case Tutorial2Status.Image:

                if (curImageIndex == Images.Length - 1)
                {
                    ChangeMode(Tutorial2Status.Question1);
                    return;
                }

                curImageIndex++;
                timer = 0f;
                ChangeMode(Tutorial2Status.Image);
                break;

            case Tutorial2Status.Video:
                ChangeMode(Tutorial2Status.Question2);
                break;

            case Tutorial2Status.Question1:
                ChangeMode(Tutorial2Status.Video);
                break;

            case Tutorial2Status.Question2:
                ChangeMode(Tutorial2Status.End);
                break;
            }
        }
    }
Beispiel #2
0
    public void ChangeMode(Tutorial2Status status)
    {
        if (!isConnected)
        {
            return;
        }

        DeactiveAll();
        curState = status;

        switch (status)
        {
        case Tutorial2Status.Intro:
            StartButton.SetActive(true);
            break;

        case Tutorial2Status.Image:
            Image.GetComponent <Image>().sprite = Images[curImageIndex];
            lxvrManager.StartRecording(curState.ToString(),
                                       Images[curImageIndex].name, false,
                                       (LXVRResult result) => OnRecordingStartCallback(result, Image));
            break;

        case Tutorial2Status.Question1:
            SetQuestion(1);
            lxvrManager.StartRecording(curState.ToString(),
                                       "1", false,
                                       (LXVRResult result) => OnRecordingStartCallback(result, Question));
            break;

        case Tutorial2Status.Video:
            VideoPlayer.GetComponent <VideoPlayer>().loopPointReached +=
                (VideoPlaer) => lxvrManager.StopRecording((LXVRResult result) => OnRecordingStopCallback(result, curState));
            lxvrManager.StartRecording(curState.ToString(),
                                       VideoPlayer.GetComponent <VideoPlayer>().clip.name, false,
                                       (LXVRResult result) => OnRecordingStartCallback(result, VideoPlayer));
            VideoPlayer.SetActive(true);
            break;

        case Tutorial2Status.Question2:
            SetQuestion(2);
            lxvrManager.StartRecording(curState.ToString(),
                                       "1", false,
                                       (LXVRResult result) => OnRecordingStartCallback(result, Question));
            break;

        case Tutorial2Status.End:
            End.SetActive(true);
            break;

        default:
            break;
        }
    }
Beispiel #3
0
    private void Update()
    {
        prevState = curState;

        if (curState != Tutorial2Status.Image)
        {
            return;
        }

        timer += Time.deltaTime;

        if (timer <= 5f)
        {
            return;
        }

        lxvrManager.StopRecording((LXVRResult result) => OnRecordingStopCallback(result, curState));
    }