public PositionInputInfo GetPosition(string objectName) { PositionInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? (PositionInputInfo)CurrentRecording.CurrentFrame.GetInputInfo(objectName) : null; return(inputInfo); }
public PositionInputInfo GetPosition(GameObject gameObject) { PositionInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? (PositionInputInfo)CurrentRecording.CurrentFrame.GetInputInfo(gameObject.name) : null; return(inputInfo); }
/// <summary> /// Get the Steam VR hair trigger up state. /// </summary> /// <returns>Trigger up state.</returns> public bool GetHairTriggerUp() { if (CurrentInputMode == RVInputMode.Playback) { SteamVRInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, "HairTriggerUp") : null; return(inputInfo == null ? false : inputInfo.HairTriggerUpState); } bool stateValue = m_DeviceImpl.GetHairTriggerUp(); if (CurrentInputMode == RVInputMode.Record) { SteamVRInputInfo inputInfo = CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, "HairTriggerUp"); if (inputInfo == null) { inputInfo = new SteamVRInputInfo(); } inputInfo.HairTriggerUpState = stateValue; CurrentRecording.CurrentFrame.AddInputInfo(DeviceIndex, "HairTriggerUp", inputInfo); } return(stateValue); }
/// <summary> /// Get the Steam VR axis value. /// </summary> /// <returns>The axis.</returns> /// <param name="buttonId">Button identifier.</param> public Vector2 GetAxis(EVRButtonId buttonId = EVRButtonId.k_EButton_SteamVR_Touchpad) { if (CurrentInputMode == RVInputMode.Playback) { SteamVRInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonId.ToString()) : null; return(inputInfo == null ? Vector2.zero : inputInfo.AxisValue); } Vector2 axisValue = m_DeviceImpl.GetAxis(buttonId); if (CurrentInputMode == RVInputMode.Record) { SteamVRInputInfo inputInfo = CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonId.ToString()); if (inputInfo == null) { inputInfo = new SteamVRInputInfo(); } inputInfo.AxisValue = axisValue; CurrentRecording.CurrentFrame.AddInputInfo(DeviceIndex, buttonId.ToString(), inputInfo); } return(axisValue); }
/// <summary> /// Get the Steam VR button touch up state. /// </summary> /// <returns>Touch up state.</returns> /// <param name="buttonId">Button identifier.</param> public bool GetTouchUp(EVRButtonId buttonId) { if (CurrentInputMode == RVInputMode.Playback) { SteamVRInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonId.ToString()) : null; return(inputInfo == null ? false : inputInfo.TouchUpState); } bool stateValue = m_DeviceImpl.GetTouchUp(buttonId); if (CurrentInputMode == RVInputMode.Record) { SteamVRInputInfo inputInfo = CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonId.ToString()); if (inputInfo == null) { inputInfo = new SteamVRInputInfo(); } inputInfo.TouchUpState = stateValue; CurrentRecording.CurrentFrame.AddInputInfo(DeviceIndex, buttonId.ToString(), inputInfo); } return(stateValue); }
/// <summary> /// Get the Steam VR button press down state. /// </summary> /// <param name="buttonMask">Button Mask</param> /// <returns>Press down state</returns> public bool GetPressDown(ulong buttonMask) { if (CurrentInputMode == RVInputMode.Playback) { SteamVRInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonMask.ToString()) : null; return(inputInfo == null ? false : inputInfo.PressDownState); } bool stateValue = m_DeviceImpl.GetPressDown(buttonMask); if (CurrentInputMode == RVInputMode.Record) { SteamVRInputInfo inputInfo = CurrentRecording.CurrentFrame.GetInputInfo(DeviceIndex, buttonMask.ToString()); if (inputInfo == null) { inputInfo = new SteamVRInputInfo(); } inputInfo.PressDownState = stateValue; CurrentRecording.CurrentFrame.AddInputInfo(DeviceIndex, buttonMask.ToString(), inputInfo); } return(stateValue); }
/// <summary> /// Returns the platform appropriate axis for the given name. /// </summary> /// <param name="name">Input Name</param> /// <returns>Axis Value</returns> public float GetAxis(string name) { if (CurrentInputMode == RVInputMode.Playback) { StandaloneInputInfo inputInfo = CurrentRecording.HasCurrentFrame() ? (StandaloneInputInfo)CurrentRecording.CurrentFrame.GetInputInfo(name) : null; return(inputInfo == null ? 0.0f : inputInfo.AxisValue); } float axisValue = Input.GetAxis(name); if (CurrentInputMode == RVInputMode.Record) { BaseInputInfo inputInfo = CurrentRecording.CurrentFrame.GetInputInfo(name); if (inputInfo == null) { inputInfo = new StandaloneInputInfo(); } StandaloneInputInfo standaloneInputInfo = (StandaloneInputInfo)inputInfo; standaloneInputInfo.AxisValue = axisValue; CurrentRecording.CurrentFrame.AddInputInfo(name, standaloneInputInfo); } return(axisValue); }