gpt4 book ai didi

input - 如何从 Xbox 360 Controller 获取输入?

转载 作者:行者123 更新时间:2023-12-02 10:14:02 26 4
gpt4 key购买 nike

我正在编写一个需要从 Xbox 360 Controller 获取输入的程序。然后输入将被无线发送到我正在 build 的遥控直升机。

到目前为止,我了解到这可以使用 DirectX 中的 XInput 库或 XNA 中的输入框架来完成。

我想知道是否还有其他可用的选项。我的程序范围相当小,并且必须安装像 DirectX 或 XNA 这样的大型游戏库似乎太过分了。此外,我希望该程序是跨平台的,而不是特定于 Microsoft 的。

有没有一种简单的轻量级方法可以用Python之类的东西来获取 Controller 输入?

编辑以回答一些评论:

该直升机共有 6 个螺旋桨,排列成 3 个同轴对。基本上,它与 this 非常相似。 ,只是它的成本约为 1,000 美元,而不是 15,000 美元。它将使用 Arduino 进行板载处理,并使用 Zigbee 进行无线控制。

选择360 Controller 是因为它设计精良。它非常符合人体工程学,并具有所需的所有控制输入。对于熟悉直升机控制的人来说,左操纵杆将控制集体,右操纵杆控制俯仰和横滚,模拟触发器将控制偏航。模拟触发器是 360 Controller 的一大特色。 PS 和大多数其他人没有它们。

我有一个该项目的网页,但它仍然相当稀疏。不过,我确实计划记录整个设计,所以最终它会很有趣。
http://tricopter.googlecode.com
顺便说一句,为 googlecode 项目提供博客功能会毁掉 Google 吗?

如果可能的话,我希望360 handle 输入程序能够在Linux和Windows上运行。最终,我想将 Controller 直接连接到嵌入式微 Controller 板(例如 Arduino),这样我就不必通过计算机,但目前这不是一个高优先级。

最佳答案

这并不那么困难。正如前面提到的,您可以使用 SDL 库来读取 xbox Controller 的状态,然后您可以用它做任何您想做的事情。

有一个 SDL 教程:http://sdl.beuc.net/sdl.wiki/Handling_Joysticks这相当有用。

请注意,Xbox Controller 具有以下功能:

  • 两个操纵杆:
    • 左操纵杆为轴 0 和 1;
    • 左触发器是轴 2;
    • 右操纵杆是轴 3 和 4;
    • 右触发器是轴 5
  • 一顶帽子(方向键)
  • 11 个 SDL 按钮
    • 其中两个是操纵杆中心按压
  • 两个触发器(充当轴,见上文)

即将推出的 SDL v1.3 还将支持力反馈(又名触觉)。

我认为,由于该帖子已有几年历史,您已经做了一些事情,因此这篇文章主要是为了告知 future 的访问者。

关于input - 如何从 Xbox 360 Controller 获取输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/699745/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com