Esempio n. 1
0
        private float GetAxis(GetAxisFunction axisFunction, XRAxis axis, bool left)
        {
            if (axis == XRAxis.Trigger)
            {
                return(axisFunction(left ? "Axis 9" : "Axis 10"));
            }

            else if (axis == XRAxis.Grip)
            {
                return(axisFunction(left ? "Axis 11" : "Axis 12"));
            }

            else if (axis == XRAxis.ThumbstickX)
            {
                return(axisFunction(left ? "Axis 1" : "Axis 4"));
            }

            else if (axis == XRAxis.ThumbstickY)
            {
                return(axisFunction(left ? "Axis 2" : "Axis 5"));
            }

            else if (axis == XRAxis.SecondaryTouchpadX)
            {
                return(axisFunction(left ? "Axis 17" : "Axis 20"));
            }

            else if (axis == XRAxis.SecondaryTouchpadY)
            {
                return(axisFunction(left ? "Axis 18" : "Axis 21"));
            }

            return(0.0f);
        }
Esempio n. 2
0
        /// <summary>
        /// Gets an axis value.
        /// </summary>
        /// <param name="axis">The axis.</param>
        /// <param name="left">Left or Right controller.</param>
        /// <returns>Returns the axis value.</returns>
        public float GetAxis(XRAxis axis, bool left)
        {
            if (axis == XRAxis.Trigger)
            {
                return(Input.GetAxis(left ? "Axis 9" : "Axis 10"));
            }

            else if (axis == XRAxis.Grip)
            {
                return(Input.GetAxis(left ? "Axis 11" : "Axis 12"));
            }

            else if (axis == XRAxis.ThumbstickX)
            {
                return(Input.GetAxis(left ? "Axis 1" : "Axis 4"));
            }

            else if (axis == XRAxis.ThumbstickY)
            {
                return(Input.GetAxis(left ? "Axis 2" : "Axis 5"));
            }

            else if (axis == XRAxis.SecondaryTouchpadX)
            {
                return(Input.GetAxis(left ? "Axis 17" : "Axis 20"));
            }

            else if (axis == XRAxis.SecondaryTouchpadY)
            {
                return(Input.GetAxis(left ? "Axis 18" : "Axis 21"));
            }

            return(0.0f);
        }
Esempio n. 3
0
        public override float GetAxis(int hand, XRAxis axis)
        {
            Vector2 result = Vector2.Zero;

            m_Controllers[hand].GetAxis(EVRButtonId.k_EButton_Axis0, ref result);
            return(axis == XRAxis.TouchpadX ? result.X : result.Y);
        }
Esempio n. 4
0
    public static XRAxis positive(float activator, float max = 1f)
    {
        if (activator >= max)
        {
            throw new Exception("bad value");
        }

        XRAxis axis = new XRAxis(0, max, activator);

        axis.negative_activator = float.NegativeInfinity;

        axis.ignore_negative = true;

        return(axis);
    }
Esempio n. 5
0
    public static XRAxis negative(float activator, float min = -1f)
    {
        if (activator <= min)
        {
            throw new Exception("bad value");
        }

        XRAxis axis = new XRAxis(min, 0, activator);

        axis.negative_activator = float.PositiveInfinity;

        axis.ignore_positive = true;

        return(axis);
    }
Esempio n. 6
0
 void Awake()
 {
     tiltAxis = XRAxis.positive(tilt_forward_min, 1);
 }
Esempio n. 7
0
 /// <summary>
 /// Gets a raw axis value.
 /// </summary>
 /// <param name="axis">The axis.</param>
 /// <param name="left">Left or Right controller.</param>
 /// <returns>Returns the axis value.</returns>
 public float GetRawAxis(XRAxis axis, bool left)
 {
     return(GetAxis(Input.GetAxisRaw, axis, left));
 }
Esempio n. 8
0
 /// <summary>
 /// Gets the value of an axis.
 /// </summary>
 /// <param name="hand">Which controller, 0 for the left hand and 1 for the right hand.</param>
 /// <param name="axis">The desired axis.</param>
 /// <returns></returns>
 public virtual float GetAxis(int hand, XRAxis axis) => 0;