コード例 #1
0
ファイル: Gamepad.cs プロジェクト: vetuomia/rocket
        /// <summary>
        /// Updates the thumb stick inputs.
        /// </summary>
        /// <param name="handler">The input handler.</param>
        /// <param name="xAxis">The X axis input.</param>
        /// <param name="yAxis">The Y axis input.</param>
        /// <param name="x">The X axis value.</param>
        /// <param name="y">The Y axis value.</param>
        /// <param name="deadZone">The stick dead zone.</param>
        private static void UpdateStick(IInputHandler handler, GamepadAxis xAxis, InputDeviceAxis yAxis, int x, int y, int deadZone)
        {
            if (Math.Sqrt((x * x) + (y * y)) < deadZone)
            {
                Update(handler, xAxis, AxisValue.Neutral);
                Update(handler, yAxis, AxisValue.Neutral);
            }
            else
            {
                Update(handler, xAxis, x < 0
                    ? AxisValue.Rescale(x, short.MinValue, -deadZone, AxisValue.Minimum, AxisValue.Neutral)
                    : AxisValue.Rescale(x, +deadZone, short.MaxValue, AxisValue.Neutral, AxisValue.Maximum));

                Update(handler, yAxis, y < 0
                    ? AxisValue.Rescale(y, short.MinValue, -deadZone, AxisValue.Minimum, AxisValue.Neutral)
                    : AxisValue.Rescale(y, +deadZone, short.MaxValue, AxisValue.Neutral, AxisValue.Maximum));
            }
        }
コード例 #2
0
ファイル: Gamepad.cs プロジェクト: vetuomia/rocket
 /// <summary>
 /// Updates the trigger input.
 /// </summary>
 /// <param name="handler">The input handler.</param>
 /// <param name="input">The input.</param>
 /// <param name="value">The trigger value.</param>
 private static void UpdateTrigger(IInputHandler handler, GamepadAxis input, int value)
 {
     Update(handler, input, AxisValue.Normalize(value, GAMEPAD_TRIGGER_THRESHOLD, byte.MaxValue));
 }
コード例 #3
0
ファイル: Game.cs プロジェクト: vetuomia/rocket
 /// <summary>
 /// Called when gamepad axis is moved.
 /// </summary>
 /// <param name="axis">The gamepad axis.</param>
 public virtual void OnGamepadAxis(GamepadAxis axis) { }