// Start is called before the first frame update void Start() { if (VR.GetPlatform() == VR.Platform.None) { this.enabled = false; return; } RightControllerButton0 = TransformUtils.FindTransform("AButton"); RightControllerButton1 = TransformUtils.FindTransform("BButton"); RightControllerJoystick = TransformUtils.FindTransform("RightJoystickCenter"); RightControllerTrigger = TransformUtils.FindTransform("RightTriggerCenter"); RightControllerGrip = TransformUtils.FindTransform("RightGripCenter"); LeftControllerButton0 = TransformUtils.FindTransform("XButton"); LeftControllerButton1 = TransformUtils.FindTransform("YButton"); LeftControllerJoystick = TransformUtils.FindTransform("LeftJoystickCenter"); LeftControllerTrigger = TransformUtils.FindTransform("LeftTriggerCenter"); LeftControllerGrip = TransformUtils.FindTransform("LeftGripCenter"); MenuButton = TransformUtils.FindTransform("MenuButton"); HomeButton = TransformUtils.FindTransform("HomeButton"); leftController = TransformUtils.FindTransform("LeftControllerAnchor"); rightController = TransformUtils.FindTransform("RightControllerAnchor"); transform.parent = rightController; transform.localPosition = Vector3.zero; transform.localRotation = Quaternion.identity; rightVRInputToTransform = new Hashtable(); rightVRInputToTransform.Add(VRInput.Button0, RightControllerButton0); rightVRInputToTransform.Add(VRInput.Button1, RightControllerButton1); rightVRInputToTransform.Add(VRInput.JoystickClick, RightControllerJoystick); rightVRInputToTransform.Add(VRInput.JoystickHorizontal, RightControllerJoystick); rightVRInputToTransform.Add(VRInput.JoystickVertical, RightControllerJoystick); rightVRInputToTransform.Add(VRInput.Trigger, RightControllerTrigger); rightVRInputToTransform.Add(VRInput.Grip, RightControllerGrip); rightVRInputToTransform.Add(VRInput.MenuButton, HomeButton); leftVRInputToTransform = new Hashtable(); leftVRInputToTransform.Add(VRInput.Button0, LeftControllerButton0); leftVRInputToTransform.Add(VRInput.Button1, LeftControllerButton1); leftVRInputToTransform.Add(VRInput.JoystickClick, LeftControllerJoystick); leftVRInputToTransform.Add(VRInput.JoystickHorizontal, LeftControllerJoystick); leftVRInputToTransform.Add(VRInput.JoystickVertical, LeftControllerJoystick); leftVRInputToTransform.Add(VRInput.Trigger, LeftControllerTrigger); leftVRInputToTransform.Add(VRInput.Grip, LeftControllerGrip); leftVRInputToTransform.Add(VRInput.MenuButton, MenuButton); //Create hashtable linking generic vrinputs to OVRInputs VRInputToOVRButton = new Hashtable(); VRInputToOVRButton.Add(VRInput.Button0, OVRInput.Button.One); VRInputToOVRButton.Add(VRInput.Button1, OVRInput.Button.Two); VRInputToOVRButton.Add(VRInput.JoystickClick, OVRInput.Button.PrimaryThumbstick); VRInputToOVRButton.Add(VRInput.JoystickHorizontal, OVRInput.Button.PrimaryThumbstickRight); VRInputToOVRButton.Add(VRInput.JoystickVertical, OVRInput.Button.PrimaryThumbstickUp); VRInputToOVRButton.Add(VRInput.Trigger, OVRInput.Button.PrimaryIndexTrigger); VRInputToOVRButton.Add(VRInput.Grip, OVRInput.Button.PrimaryHandTrigger); VRInputToOVRButton.Add(VRInput.MenuButton, OVRInput.Button.Start); VRInputToOVRButtonAlternate = new Hashtable(); VRInputToOVRButtonAlternate.Add(VRInput.Button0, OVRInput.Button.One); VRInputToOVRButtonAlternate.Add(VRInput.Button1, OVRInput.Button.Two); VRInputToOVRButtonAlternate.Add(VRInput.JoystickClick, OVRInput.Button.PrimaryThumbstick); VRInputToOVRButtonAlternate.Add(VRInput.JoystickHorizontal, OVRInput.Button.PrimaryThumbstickLeft); VRInputToOVRButtonAlternate.Add(VRInput.JoystickVertical, OVRInput.Button.PrimaryThumbstickDown); VRInputToOVRButtonAlternate.Add(VRInput.Trigger, OVRInput.Button.PrimaryIndexTrigger); VRInputToOVRButtonAlternate.Add(VRInput.Grip, OVRInput.Button.PrimaryHandTrigger); VRInputToOVRButtonAlternate.Add(VRInput.MenuButton, OVRInput.Button.Start); }