private void LoadControllerFromPrefab(PXR_Input.Controller hand) { switch (controllerType) { case 3: var g2Go = Instantiate(g2, transform, false); var g2Comp = g2Go.AddComponent <PXR_ControllerKeyEffects>(); LoadTexture(g2Comp, g2TexBasePath, true); loadModelSuccess = true; break; case 4: var neo2Go = Instantiate(hand == PXR_Input.Controller.LeftController ? neo2L : neo2R, transform, false); var neo2Comp = neo2Go.AddComponent <PXR_ControllerKeyEffects>(); neo2Comp.hand = hand; LoadTexture(neo2Comp, neo2TexBasePath, true); loadModelSuccess = true; break; case 5: var neo3Go = Instantiate(hand == PXR_Input.Controller.LeftController ? neo3L : neo3R, transform, false); var neo3Comp = neo3Go.AddComponent <PXR_ControllerKeyEffects>(); neo3Comp.hand = hand; LoadTexture(neo3Comp, neo3TexBasePath, true); loadModelSuccess = true; break; default: loadModelSuccess = false; break; } }
private int RefreshControllerBattery(PXR_Input.Controller hand) { var curBattery = 0f; switch (hand) { case PXR_Input.Controller.LeftController: { InputDevices.GetDeviceAtXRNode(XRNode.LeftHand).TryGetFeatureValue(CommonUsages.batteryLevel, out curBattery); } break; case PXR_Input.Controller.RightController: { InputDevices.GetDeviceAtXRNode(XRNode.RightHand).TryGetFeatureValue(CommonUsages.batteryLevel, out curBattery); } break; } return((int)curBattery); }
private void RefreshPower(PXR_Input.Controller hand) { battery = RefreshControllerBattery(hand); if (battery == 0) { powerImage.enabled = true; } switch (battery) { case 1: powerImage.sprite = power1; powerImage.color = Color.red; break; case 2: powerImage.sprite = power2; powerImage.color = Color.white; break; case 3: powerImage.sprite = power3; powerImage.color = Color.white; break; case 4: powerImage.sprite = power4; powerImage.color = Color.white; break; case 5: powerImage.sprite = power5; powerImage.color = Color.white; break; default: powerImage.sprite = power1; powerImage.color = Color.white; break; } }
private void RefreshController(PXR_Input.Controller hand) { if (PXR_Input.IsControllerConnected(hand)) { if (systemOrLocal == 0) { LoadControllerFromPrefab(hand); if (!loadModelSuccess) { LoadControllerFromSystem((int)hand); } } else { var isControllerExist = false; foreach (Transform t in transform) { if (t.name == modelName) { isControllerExist = true; } } if (!isControllerExist) { LoadControllerFromSystem((int)hand); if (!loadModelSuccess) { LoadControllerFromPrefab(hand); } } else { var currentController = transform.Find(modelName); currentController.gameObject.SetActive(true); } } PXR_ControllerKeyTips.RefreshTips(); } }
public void SetControllerVibration(float strength, int time, PXR_Input.Controller controller) { PXR_Input.SetControllerVibration(strength, time, controller); }
public PXR_ControllerLoader(PXR_Input.Controller controller) { hand = controller; }