我正在使用Arduino Uno通过USB或蓝牙将(真正的)SNES控制器连接到计算机。
Arduino使用snespad library捕获控制器的按钮按下和释放。它将按钮按下和释放作为字符进行通信(例如,用于按A的'a',用于释放'A'的'A')。接下来,Java程序使用rxtx library侦听串行输出。最后,Java robot使用keyPress和keyRelease来模拟按键。
不幸的是,这种方法有一些缺点。主要问题是关键映射。我有点随意决定哪些按键是哪个键盘键。
Java似乎没有任何游戏手柄KeyEvents。当我说“游戏键盘KeyEvent”时,我指的是类似于Android SDK的内容:http://developer.android.com/reference/android/view/KeyEvent.html(ctrl + f“游戏手柄”或“按钮”。)
我的问题是,有没有办法模拟游戏手柄按钮而不是使用Java的机器人类按键?
答案 0 :(得分:1)
在JAVA中使用机器人课程
您可以通过以下方式创建虚拟按键/释放...
Robot robo=new Robot();
robo.keyPress(KeyEvent.VK_A);
//don't forget to release it else you'll land up in infinite loop
robo.KeyRelease(KeyEvent.VK_A);
欢呼声
答案 1 :(得分:0)
你应该可以轻松地从我的expierience游戏手柄按钮被映射到键盘按钮我知道它唯一的映射我,j,k,我去看看周围和w,a,s,d去移动< / p>