public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Animator>(); base.StartController(ivr); startHipFootL = ivr.hipTarget.InverseTransformPoint(ivr.leftFootTarget.position); startHipFootR = ivr.hipTarget.InverseTransformPoint(ivr.rightFootTarget.position); if (transform == ivr.leftFootTarget) { isLeftFoot = true; leftFoot = this; rightFoot = ivr.rightFootTarget.GetComponent <IVR_AnimatorFoot>(); leftFootAnimation = gameObject.AddComponent <IVR_Animate>(); lastPos = transform.position; startHipFoot = startHipFootL; localStartPosition = ivr.transform.InverseTransformPoint(ivr.leftFootTarget.position); } else { rightFoot = this; leftFoot = ivr.leftFootTarget.GetComponent <IVR_AnimatorFoot>(); rightFootAnimation = gameObject.AddComponent <IVR_Animate>(); lastPos = transform.position; startHipFoot = startHipFootR; localStartPosition = ivr.transform.InverseTransformPoint(ivr.rightFootTarget.position); } startFootLposition = ivr.leftFootTarget.position - transform.position; startFootRposition = ivr.rightFootTarget.position - transform.position; lastHipPosition = ivr.hipTarget.position; }
public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Traditional>(); base.StartController(ivr); controller = Controllers.GetController(0); }
public override void StartMovements(InstantVR ivr) { base.StartMovements(ivr); Camera headCamera = ivr.GetComponentInChildren <Camera>(); headcam = headCamera.transform; if (interaction != InteractionType.None) { inputModule = ivr.GetComponent <IVR_Interaction>(); if (inputModule == null) { EventSystem eventSystem = FindObjectOfType <EventSystem>(); if (eventSystem != null) { DestroyImmediate(eventSystem.gameObject); } inputModule = ivr.gameObject.AddComponent <IVR_Interaction>(); } inputModule.EnableGazeInputModule(headcam, controllerSide, activationButton, autoActivation); } if (interaction != InteractionType.None && focusPointObj == null) { focusPointObj = GameObject.CreatePrimitive(PrimitiveType.Sphere); focusPointObj.transform.localScale = new Vector3(0.05f, 0.05f, 0.05f); Destroy(focusPointObj.GetComponent <Collider>()); } }
//[HideInInspector] //private IVR_HandMovements handMovements; public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Animator>(); base.StartController(ivr); animatorHip = ivr.hipTarget.GetComponent <IVR_AnimatorHip>(); lastHipPosition = ivr.hipTarget.position; //handMovements = GetComponent<IVR_HandMovements>(); hip2hand = Quaternion.Inverse(ivr.transform.rotation) * (ivr.hipTarget.position - this.transform.position); if (this.transform == ivr.leftHandTarget) { foot2hand = Quaternion.Inverse(ivr.transform.rotation) * (ivr.leftHandTarget.position - ivr.rightFootTarget.position); footController = ivr.rightFootTarget.GetComponent <IVR_Controller>(); } else { foot2hand = Quaternion.Inverse(ivr.transform.rotation) * (ivr.rightHandTarget.position - ivr.leftFootTarget.position); footController = ivr.leftFootTarget.GetComponent <IVR_Controller>(); } if (footController.GetType() == typeof(IVR_AnimatorFoot) && !footController.enabled) { footController = null; } }
public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Traditional>(); base.StartController(ivr); tracking = true; handAnimator = GetComponent <IVR_AnimatorHand>(); }
// private IVR.HeadMovementsBase headMovements; // /private Transform cameraTransform; public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Animator>(); base.StartController(ivr); tracking = true; // headMovements = GetComponent<IVR.HeadMovementsBase>(); // cameraTransform = ivr.GetComponentInChildren<Camera>().transform; }
public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Traditional>(); base.StartController(ivr); tracking = true; handAnimator = GetComponent <IVR_AnimatorHand>(); #if INSTANTVR_ADVANCED handMovements = GetComponent <IVR_HandMovementsBase>(); #endif }
public override void StartController(InstantVR ivr) { extension = ivr.GetComponent <IVR_Animator>(); base.StartController(ivr); headStartPosition = ivr.headTarget.position - ivr.transform.position; spineLength = Vector3.Distance(ivr.headTarget.position, ivr.hipTarget.position); controllerPosition = startPosition; controllerRotation = startRotation; }
public override void StartController(InstantVR ivr) { base.StartController(ivr); #if UNITY_ANDROID if (extension == null) { extension = ivr.GetComponent <IVR_Cardboard>(); } Camera camera = CheckCamera(); if (camera != null) { cameraTransform = camera.transform; neck2eyes = HeadUtils.GetNeckEyeDelta(ivr); cameraTransform.gameObject.SetActive(false); GvrViewer cardboardPrefab = Resources.Load <GvrViewer>("CardboardPrefab"); cardboard = Instantiate(cardboardPrefab); if (cardboard == null) { Debug.LogError("Could not instantiate Cardboard. CardboardCameraRig is missing?"); } else { cameraRoot = cardboard.gameObject; cameraRoot.transform.parent = ivr.transform; cameraRoot.transform.position = transform.position; cameraRoot.transform.rotation = ivr.transform.rotation; GvrHead gvrHead = cardboard.GetComponentInChildren <GvrHead>(); if (gvrHead != null) { camera = Camera.main; cameraTransform = Camera.main.transform; } } } controller = Controllers.GetController(0); #if INSTANTVR_ADVANCED vicoVRHead = GetComponent <IVR_VicoVRHead>(); #endif #endif }
public override void StartController(InstantVR ivr) { if (extension == null) { extension = ivr.GetComponent <IVR_UnityVR>(); } #if UNITY_IOS extension.present = true; // maybe only when GVR SDK is present? #elif UNITY_2017_2_OR_NEWER extension.present = XRDevice.isPresent; #else extension.present = VRDevice.isPresent; #endif Camera camera = CheckCamera(); if (camera != null) { cameraTransform = camera.transform; neck2eyes = HeadUtils.GetNeckEyeDelta(ivr); DeterminePlatform(); if (vrTracking) { if (!originOnFloor) { cameraRoot.transform.position = transform.position; extension.trackerPosition = cameraRoot.transform.localPosition; } cameraRoot.transform.rotation = ivr.transform.rotation; cameraTransform.SetParent(cameraRoot.transform, false); } base.StartController(ivr); #if INSTANTVR_ADVANCED #if IVR_KINECT kinect2Head = GetComponent <IVR_Kinect2Head>(); #endif #endif } }
public override void StartController(InstantVR ivr) { if (extension == null) { extension = ivr.GetComponent <IVR_UnityVR>(); } base.StartController(ivr); if (VRSettings.enabled) { extension.present = VRDevice.isPresent; Camera camera = transform.GetComponentInChildren <Camera>(); if (camera != null) { headcam = camera.transform; localNeckOffset = headcam.localPosition; headcamRoot = new GameObject("HeadcamRoot"); headcamRoot.transform.parent = ivr.transform; headcamRoot.transform.position = transform.position; headcamRoot.transform.rotation = transform.rotation; headcam.parent = headcamRoot.transform; base.StartController(ivr); controllerPosition = startPosition - extension.trackerPosition; controllerRotation = Quaternion.identity; OVRManager ovrManager = this.gameObject.AddComponent <OVRManager>(); ovrManager.resetTrackerOnLoad = true; positionTracking = false; #if INSTANTVR_ADVANCED kinect2Head = GetComponent <IVR_Kinect2Head>(); vicoVRHead = GetComponent <IVR_VicoVRHead>(); #endif } } }
public override void StartController(InstantVR ivr) { if (extension == null) { extension = ivr.GetComponent <IVR_UnityVR>(); } if (VRSettings.enabled) { extension.present = VRDevice.isPresent; Camera camera = CheckCamera(); if (camera != null) { cameraTransform = camera.transform; neck2eyes = HeadUtils.GetNeckEyeDelta(ivr); head2eyes = HeadUtils.GetHeadEyeDelta(ivr); DeterminePlatform(); cameraRoot = new GameObject("UnityVR Root"); cameraRoot.transform.parent = ivr.transform; #if UNITY_STANDALONE_WIN if (needsOVR || needsSteamVR) { cameraRoot.transform.position = ivr.transform.position; } else #endif cameraRoot.transform.position = transform.position; cameraRoot.transform.rotation = ivr.transform.rotation; cameraTransform.SetParent(cameraRoot.transform, false); base.StartController(ivr); if (needsOVR) { ovrManager = transform.gameObject.AddComponent <OVRManager>(); if (ovrManager != null) { ovrManager.resetTrackerOnLoad = true; #if UNITY_STANDALONE_WIN ovrManager.trackingOriginType = OVRManager.TrackingOrigin.FloorLevel; cameraTransform.localPosition = Vector3.zero; #else ovrManager.trackingOriginType = OVRManager.TrackingOrigin.EyeLevel; #endif } } if (needsSteamVR) { cameraTransform.gameObject.AddComponent <SteamVR_Camera>(); steamManager = cameraRoot.gameObject.AddComponent <SteamVR_ControllerManager>(); } #if INSTANTVR_ADVANCED kinect2Head = GetComponent <IVR_Kinect2Head>(); vicoVRHead = GetComponent <IVR_VicoVRHead>(); #endif } } }