12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using Valve.VR;
- public class ViveInput : MonoBehaviour
- {
- public PlayerReplay playerReplay;
- public BodySourceView bsv;
- private SteamVR_Action_Boolean grabPinch;
- private SteamVR_Action_Boolean grabGrib;
- private SteamVR_Action_Boolean teleport;
- private bool isRecording;
- private float recordingTime;
- private static bool isPlaying;
- public float csvTime;
- private void Start()
- {
- grabPinch = SteamVR_Actions.default_GrabPinch;
- grabGrib = SteamVR_Actions.default_GrabGrip;
- teleport = SteamVR_Actions.default_Teleport;
- }
- void Update()
- {
- if (grabPinch.GetStateDown(SteamVR_Input_Sources.Any) && !isPlaying)
- {
- Debug.Log("Loading...");
- csvTime = 0;
- isPlaying = true;
- StartCoroutine(playerReplay.Load());
- }
- if (teleport.GetStateDown(SteamVR_Input_Sources.Any))
- {
- //if (!isRecording)
- //{
- // Debug.Log("Recording...");
- // isRecording = true;
- //}
- //else
- //{
- // Debug.Log("Saving...");
- // isRecording = false;
- // recordingTime = 0;
- // playerReplay.Save();
- // playerReplay.ResetRecording();
- //}
- }
- if (grabGrib.GetStateDown(SteamVR_Input_Sources.Any))
- {
-
- }
- if (isRecording)
- {
- playerReplay.AddJoints(recordingTime);
- recordingTime += Time.deltaTime;
- }
- if (isPlaying)
- {
- csvTime += Time.deltaTime;
- }
- }
- public static IEnumerator WaitForControllerPress()
- {
- while (true)
- {
- if (SteamVR_Actions.default_GrabPinch.GetStateDown(SteamVR_Input_Sources.Any) || Input.GetKeyDown(KeyCode.Space))
- {
- break;
- }
- yield return null;
- }
- }
- public static void StopPlaying()
- {
- isPlaying = false;
- }
- }
|