对游戏手柄的理解¶
这里不考虑触屏,只考虑电脑端的键鼠和手柄连接。
手柄按键
手柄含义
键鼠
A
确认
鼠标左键
B
返回/取消
X
Y
左摇杆
光标移动
鼠标移动
左摇杆按下
右摇杆
上下左右
上下左右
右摇杆按下
D-pad
上下左右
上下左右
左肩
往左一页
右肩
往右一页
左扳机
右板机
share
退出
esc
home
menu
选项
鼠标右键
对于鼠标支持良好的游戏,手柄需要绑定如下按键:
左摇杆:鼠标移动
A:鼠标左键
menu:鼠标右键
share:esc
基本上是用手柄模拟出了鼠标可以做到的所有操作,这对绝大部分游戏来说已经足够。比较关键的是,手柄的光标最好能够圈出物体(其实鼠标也应该做到这个效果),这样在点击 A 的时候更明确点击的物体。
在此基础上支持手柄,需要适配:
B:返回
右摇杆:上下左右
D-pad:上下左右
左右肩:左右翻页
剩下的手柄按键可以自定义:
XY
左右摇杆按下
左右板机
但是需要注意,还可以有长按和双击等多种操作。每一个界面的按键操作可能还不一样。
得去进一步理解手柄的底层 IO 逻辑。最好就是学一下 Chrome 对手柄输入的处理,看 JS 如何能监听或者收取到手柄的输入。
