1

SO的好人,

我目前正在使用 xbox 360(有线或非有线)控制器在 Unity3D 中开发游戏。我正在寻找一些“最佳实践”之王来实现对游戏的 Windows 和 MacOS 支持。

步骤1

我的第一种方法是创建一个完整的 InputManager.asset 映射到 4 个控制器,基于:

http://wiki.unity3d.com/index.php/Xbox360Controller http://wiki.etc.cmu.edu/unity3d/index.php/Joystick/Controller (和其他一些......)

并使用 Input.getAxis()。

问题

我遇到的主要问题是当您断开并重新连接控制器时:Axis ID 发生了变化……而且很难找到将控制器重新分配给游戏中正确的玩家实例。Unity 提供给我的唯一信息是 Input.GetJoystickNames() 以随时了解连接了多少个控制器......但它不足以知道谁被插入到哪里......

第2步

然后我听说了 XInput dll:

http://forum.unity3d.com/threads/37542-XInput-NET-full-support-for-Xbox-360-Controller-(Windows)

那将解决有关使用控制器的所有问题...

问题

...但遗憾的是它在 macOS 中不起作用...

有什么解决办法吗?谢谢 :)

4

0 回答 0