首页 > 解决方案 > 如何使用 XInput 在 VS19、.Net Core 3 的终端上打印左操纵杆 Xbox Once 控制器?

问题描述

我希望在 VS 2019 的终端上打印一些东西,.NET Core 3 使用 SharpDX.XInput 作为操纵杆。如果操纵杆被推到左边,可能会有一些值 -1,如果操纵杆被推到右边,则可能是 1。这是我正在使用的代码,但我坚持在屏幕上打印一个值:

命名空间 XboxC { 类程序 {

    Controller controller;
    Gamepad gamepad;
    public bool connected = false;
    public int deadband = 2500;
    public Point leftThumb, rightThumb = new Point(0,0);
    public float leftTrigger, rightTrigger;

    public Program()
    {
        controller = new Controller(UserIndex.One);
        connected = controller.IsConnected;
    }

    public static void Main()
    {

    }
    public void Update()
    {
        if (!connected)
            return;

        gamepad = controller.GetState().Gamepad;


        leftThumb.X = (int)((Math.Abs((float)gamepad.LeftThumbX) < deadband) ? 0 : (float)gamepad.LeftThumbX / short.MinValue * -100);
        leftThumb.Y = (int)((Math.Abs((float)gamepad.LeftThumbY) < deadband) ? 0 : (float)gamepad.LeftThumbY / short.MaxValue * 100);
        rightThumb.X = (int)((Math.Abs((float)gamepad.RightThumbX) < deadband) ? 0 : (float)gamepad.RightThumbX / short.MaxValue * 100);
        rightThumb.Y = (int)((Math.Abs((float)gamepad.RightThumbY) < deadband) ? 0 : (float)gamepad.RightThumbY / short.MaxValue * 100);

        leftTrigger = gamepad.LeftTrigger;
        rightTrigger = gamepad.RightTrigger;


    }

}

}

标签: visual-studio-2019asp.net-core-3.0xbox-onexinput

解决方案


推荐阅读