C 如何在linux下编写使用xbox控制器的程序

C 如何在linux下编写使用xbox控制器的程序,c,linux,xbox360,C,Linux,Xbox360,目前我是一名IT专业的学生,我想做一个游戏作为我的业余工作。我想制作一个纯C语言的几何战争克隆(因为我们绑定到C,因此没有C++/C#,只有C和OpenGL),当它完成时,我想将它发布为Linux/Mac/PC的开源游戏。我想问,我如何使用Xbox360控制器(有线)作为游戏输入设备?经过一些研究,我了解到XInput是这样做的,但这真的是多平台的东西吗?我很好奇,在linux下用C编写Xbox控制器输入代码时,您使用的是什么工具。我假设您使用的是一个普通的无线Xbox 360控制器,它不是标准

目前我是一名IT专业的学生,我想做一个游戏作为我的业余工作。我想制作一个纯C语言的几何战争克隆(因为我们绑定到C,因此没有C++/C#,只有C和OpenGL),当它完成时,我想将它发布为Linux/Mac/PC的开源游戏。我想问,我如何使用Xbox360控制器(有线)作为游戏输入设备?经过一些研究,我了解到XInput是这样做的,但这真的是多平台的东西吗?我很好奇,在linux下用C编写Xbox控制器输入代码时,您使用的是什么工具。

我假设您使用的是一个普通的无线Xbox 360控制器,它不是标准的USB控制器吗?(我不知道)好吧,也许我会问一些不同的问题……我如何通过C编程语言从USB设备(现在是xbox360控制器)捕获输入?目前,我在CNote中从未使用过USB外设,因为C和OpenGL都不关心窗口、输入和其他特定于平台的内容,所以仅使用C和OpenGL无法创建太多外设。使用libSDL来掩盖这一点,它还提供了跨平台操纵杆和键盘API。Linux的驱动程序可以使xbox控制器看起来像一个操纵杆,你可以将按钮映射成按键。我想我用一种非常愚蠢的方式总结了我的问题,没关系,我从中了解到:我的意思是,我只能使用C并用外部libs扩展它,比如OpenXX之类的东西。我将尝试SDL的东西,也许它会起作用,谢谢你的回答:)