void OnApplicationQuit() { //close connect from device Debug.Log("Nolo debug:Application quit"); NoloVR_Playform.InitPlayform().DisconnectDevice(); NoloVR_Controller.Remove(); }
public void Update() { if (Time.frameCount != preFrame) { preFrame = Time.frameCount; preControllerStates = controllerStates; if (NoloVR_Playform.InitPlayform().GetPlayformError() == NoloError.None) { controllerStates = NoloVR_Plugins.GetControllerStates(index); trackingStatus = NoloVR_Plugins.GetTrackingStatus(index); if (isTurnAround) { if (NoloVR_Controller.recPosition == Vector3.zero) { NoloVR_Controller.recPosition = NoloVR_Plugins.GetPose(0).pos; } pose = NoloVR_Plugins.GetPose(index); //pose.rot *= new Quaternion(0, 1, 0, 0); Vector3 rot = pose.rot.eulerAngles; rot += new Vector3(0, 180, 0); pose.rot = Quaternion.Euler(rot); pose.pos.x = NoloVR_Controller.recPosition.x * 2 - pose.pos.x; pose.pos.z = NoloVR_Controller.recPosition.z * 2 - pose.pos.z; return; } NoloVR_Controller.recPosition = Vector3.zero; pose = NoloVR_Plugins.GetPose(index); } } }
void Update() { if (NoloVR_Playform.GetInstance().GetPlayformError() != NoloError.None) { return; } if (showTrackingBoundary == false) { return; } var pose = NoloVR_Controller.GetDevice(NoloDeviceType.BaseStation).GetPose(); transform.localPosition = pose.pos; transform.localRotation = pose.rot; for (int i = 0; i < NoloVR_System.GetInstance().objects.Length; i++) { if (Mathf.Abs(NoloVR_System.GetInstance().objects[i].transform.localPosition.x) > Mathf.Abs(transform.position.z - NoloVR_System.GetInstance().objects[i].transform.localPosition.z) || Mathf.Abs(NoloVR_System.GetInstance().objects[i].transform.localPosition.y - transform.position.y) > Mathf.Abs(transform.position.z - NoloVR_System.GetInstance().objects[i].transform.localPosition.z + 0.1f)) { NOLO_Events.Send(NOLO_Events.EventsType.TrackingOutofRange); break; } else { NOLO_Events.Send(NOLO_Events.EventsType.TrackingInRange); } } }
//HapticPulse parameter must be in 0~100 public void TriggerHapticPulse(int intensity) { if (NoloVR_Playform.GetInstance().GetPlayformError() == NoloError.None) { NoloVR_Playform.GetInstance().TriggerHapticPulse(index, intensity); } }
public void Update() { if (Time.frameCount != preFrame) { preFrame = Time.frameCount; preControllerStates = controllerStates; if (NoloVR_Playform.GetInstance().GetPlayformError() == NoloError.None && NoloVR_Playform.GetInstance().GetAuthentication()) { controllerStates = NoloVR_Plugins.GetControllerStates(index); if (isTurnAround) { if (NoloVR_Controller.recPosition == Vector3.zero) { NoloVR_Controller.recPosition = NoloVR_Plugins.GetPose(0).pos; } pose = NoloVR_Plugins.GetPose(index); var rot = pose.rot.eulerAngles; rot += new Vector3(0, 180, 0); pose.rot = Quaternion.Euler(rot); pose.pos.x = NoloVR_Controller.recPosition.x * 2 - pose.pos.x; pose.pos.z = NoloVR_Controller.recPosition.z * 2 - pose.pos.z; pose.vecVelocity.x = -pose.vecVelocity.x; pose.vecVelocity.z = -pose.vecVelocity.z; return; } NoloVR_Controller.recPosition = Vector3.zero; pose = NoloVR_Plugins.GetPose(index); } } }
private void Update() { if (NoloVR_Playform.GetInstance().GetPlayformError() != NoloError.None) { return; } UpdatePose(); }
void Update() { if (NoloVR_Playform.InitPlayform().GetPlayformError() != NoloError.None) { return; } //更新位置 UpdatePose(); }
#pragma warning disable IDE0051 // 删除未使用的私有成员 private void Update() #pragma warning restore IDE0051 // 删除未使用的私有成员 { if (NoloVR_Playform.GetInstance().GetPlayformError() != NoloError.None) { return; } UpdatePose(); }
void Awake() { instance = this; objects = GameObject.FindObjectsOfType <NoloVR_TrackedDevice>(); GameObject androidCallBack = new GameObject("USB Host Peripherals"); androidCallBack.AddComponent <NoloVR_AndroidCallBack>(); NoloVR_Playform.InitPlayform().SetHmdTrackingCenter(NoloVR_Utils.GetHmdTrackingCenter(vrPlayform)); NoloVR_Controller.Listen(); }
public static NoloVR_Playform GetInstance() { if (instance == null) { #if UNITY_STANDALONE_WIN || UNITY_EDITOR instance = new NoloVR_WinPlayform(); #elif UNITY_ANDROID instance = new NoloVR_AndroidPlayform(); #else instance = new NoloVR_OtherPlayform(); #endif } return(instance); }
/// <summary> /// Android USB connect or dicconnect callback message /// </summary> /// <param name="msg">"usb 设备断开":usb device been pulled out callback,"usb 设备接入":usb device plug in phone callback</param> public void usbDeviceState(string msg) { switch (msg) { case "NOLO Devices Disconnected": NoloVR_Playform.InitPlayform().DisConnectedCallBack(); break; case "NOLO Devices Reconnected": NoloVR_Playform.InitPlayform().ReconnectDeviceCallBack(); break; default: break; } }
public void Update() { if (Time.frameCount != preFrame) { preFrame = Time.frameCount; preControllerStates = controllerStates; if (NoloVR_Playform.GetInstance().GetPlayformError() == NoloError.None && NoloVR_Playform.GetInstance().GetAuthentication()) { controllerStates = NoloVR_Plugins.GetControllerStates(index); electricity = NoloVR_Plugins.GetElectricity(index); connectStatus = NoloVR_Plugins.GetNoloConnectStatus(index); float yaw = real_yaw * 57.3f; pose = NoloVR_Plugins.GetPose(index); if (index == 0) { //pose.pos += pose.rot * new Vector3(0, 0.08f, 0.062f); pose.rot = Quaternion.Euler(new Vector3(0, -yaw, 0)); //pose.pos -= pose.rot * new Vector3(0, 0.08f, 0.062f); } if (isTurnAround) { if (NoloVR_Controller.recPosition == Vector3.zero) { NoloVR_Controller.recPosition = NoloVR_Plugins.GetPose(0).pos; } var rot = pose.rot.eulerAngles; rot += new Vector3(0, 180 + yaw, 0); pose.rot = Quaternion.Euler(rot); Vector3 revec = Quaternion.Euler(new Vector3(0, 180 + yaw, 0)) * pose.pos + NoloVR_Controller.recPosition; pose.pos.x = revec.x; pose.pos.z = revec.z; pose.vecVelocity.x = -pose.vecVelocity.x; pose.vecVelocity.z = -pose.vecVelocity.z; return; } } if (NoloVR_System.GetInstance().realTrackDevices != 3 && NoloVR_System.GetInstance().realTrackDevices != 6) { NoloVR_System.GetInstance().realTrackDevices = NoloVR_Plugins.GetTrackModel(); } } }
void Update() { if (NoloVR_Playform.InitPlayform().GetPlayformError() != NoloError.None) { return; } transform.localPosition = new Vector3(0, -NoloVR_Plugins.GetHmdInitPosition().y, 0); //y - play ground height for (int i = 0; i < NoloVR_Manager.GetInstance().objects.Length; i++) { if (Mathf.Abs(NoloVR_Manager.GetInstance().objects[i].transform.localPosition.x) > Mathf.Abs(NoloVR_Manager.GetInstance().objects[i].transform.localPosition.z) || Mathf.Abs(NoloVR_Manager.GetInstance().objects[i].transform.localPosition.y - transform.position.y) > Mathf.Abs(NoloVR_Manager.GetInstance().objects[i].transform.localPosition.z) + 0.1f) { NOLO_Events.Send(NOLO_Events.EventsType.TrackingOutofRange); break; } else { NOLO_Events.Send(NOLO_Events.EventsType.TrackingInRange); } } }
void Update() { //automatic connect the usb device if (automaticConnection) { if (NoloVR_Playform.InitPlayform().GetPlayformError() != NoloError.None) { if (spacingFrame < 200) { spacingFrame++; } else { ConnectionNOLO(); spacingFrame = 0; } } } if (turnAroundButtonType != TurnAroundButtonType.Null) { TurnAroundEventsMonitor(); } Recenter(); }
void OnApplicationQuit() { //close connect from device Debug.Log("Nolo debug:Application quit"); NoloVR_Playform.GetInstance().DisconnectDevice(); }
void Start() { NoloVR_Playform.GetInstance().Authentication(appKey); NoloVR_Playform.GetInstance().SetHmdTrackingCenter((int)VRPlayform); }
private void Start() { NoloVR_Playform.GetInstance().Authentication(appKey); }
void ConnectionNOLO(params object[] args) { NoloVR_Playform.InitPlayform().ConnectDevice(); }