浅谈键盘布局与游戏 UI 设计(上)

作者:认真的吉吉 奶牛关 2019-06-20

看直播的时候,你有没有发现过主播把技能设置在A键上?

总目录

•1问题
•2分析
•3物理布局
•3.1键盘上究竟有多少键
•3.2 Windows新三键
•3.3其它造型的ANSI/ISO键盘
•3.4韩国键盘
•3.5日本键盘
•3.6巴西键盘
•3.7不同键数键盘的兼容性问题
•4游戏UI设计
•4.1目标
•4.2实现
•5总结

1 问题

经常看笔者直播的朋友,可能会注意到,有的时候笔者玩《守望先锋》时,屏幕上显示终极技能的按键不是通常的Q,而是A。就像这样:

有时,屏幕上显示终极技能的按键不是通常的Q,而是A

但是实际上,这个时候笔者还是按键盘上的WASD来移动,按键盘上的Q来释放终极技能,一切都很正常。所以,这个A到底是什么意思呢?

2分析

笔者在《RPi 2B实战PCD8544×黑白屏(5)》里提到过,树莓派作为英国电子产品,其默认键盘布局为英国键盘,而非美国键盘。对于习惯美国键盘的我们来说,直接用英国键盘布局操作会有诸多不便。因为虽然二者字母的位置是一样的,但是很多符号的位置都不一样,影响命令行操作。

这个区别有多大呢?咱们先上一张Windows下美国键盘布局的标准图复习一下:

Windows美国键盘布局。黑色表示功能键,灰色表示普通键

然后,咱们再上一张Windows下英国键盘布局的标准图看一下:

Windows英国键盘布局。黑色表示功能键,灰色表示普通键,黄色表示Alternative Graph

我们可以看到,两者相比,字母的排列是一样的。这种前六个字母为QWERTY的字母排列也叫QWERTY布局。但是符号的位置确实不太一样。尤其是 、双引号、波浪线、井号、竖线和反斜杠的位置不一样了,这些变动会切实影响命令行操作的效率。

此外,美国键盘布局中回车键上方的「反斜杠、竖线」键在英国键盘布局不见了。同时,英国键盘布局则多出了回车键左边的「井号、波浪线」键和左Shift键右边的「反斜杠、竖线」键。这样的变化同时影响了回车键的形状。在USB标准中,这三个键分别有不同的编码,是不同的按键。

美国键盘布局有一个独占按键,英国键盘布局有两个独占按键,总体来看英国键盘多一个键

因此,美国键盘布局和英国键盘布局相对各自而言,美国键盘布局有一个独占按键,英国键盘布局有两个独占按键,总体来看,英国键盘布局多一个键。由于从硬件上发给操作系统的编码就有根本的不同,这两种键盘布局分属两个物理布局大类:ANSI和ISO。还有其它物理布局,暂且不展开。

除了硬件布局,键盘布局之间还有软件上的不同。例如1键左边、Tab键上方那个键,虽然键盘发给操作系统的编码是一样的,但是操作系统当前键盘布局设置为美国键盘时,这个键就是「抑音符、波浪线」,设置为英国键盘时,这个键就是「抑音符、否定号、断开的竖线」键。

想到还有软件上的不同,这个问题就简单了。这个现象的本质其实是《守望先锋》在交互UI上,多做了一点心思。当我们当前设置的输入法为美国键盘或英国键盘等QWERTY布局的键盘布局时,1键下方、Tab键右边那个键是Q键,所以就显示Q:

在美国键盘或英国键盘等QWERTY布局下,该按键上的字母为Q

但是在法国以及一些以法语为官方语言的国家,其标准键盘布局不是基于QWERTY布局,而是基于AZERTY布局。例如,Windows下的法国键盘布局是这样的:

Windows法国键盘布局。黄色和橙色表示Alternative Graph,橙色和红色表示Dead Key

我们可以看到,在这个键盘上,相当于美国键盘的WASD的四个键是ZQSD,而原本我们设置为释放终极技能的Q键,在这个键盘上写着的是A。

知道了这些,问题也就迎刃而解了。没错,就是因为笔者在Windows的语言设置里添加了法国键盘布局,而游戏过程中又不小心切到了法国键盘布局导致的。笔者在YouTube上随便找了个法国主播,他的游戏界面里释放终极技能也是显示的A:

法国主播AlphaReplay的释放终极技能按键也是A

那么,为什么笔者会在游戏中不小心切换到法国键盘布局呢?这是因为Windows 10切换键盘/输入法的快捷键与游戏本身的功能键有重合,所以容易按错。为了说明系统快捷键的作用,咱们举个例子,假设系统里有:

•英语(美国)/美国键盘

•中文(中国)/搜狗拼音

•中文(中国)/微软拼音

•中文(台湾)/微软注音

•土耳其语(土耳其)/Q-键盘

•土耳其语(土耳其)/F-键盘

•法语(法国)/法国键盘

•意大利语(意大利)/意大利键盘

•法语(加拿大)/加拿大多语种标准键盘

九种键盘和输入法,如下图:

假如系统里有这九种键盘和输入法

则Windows 10的三组切换键盘和输入法的快捷键的作用分别为:

Ctrl+Shift切换同语言的不同键盘/输入法

1、Ctrl+Shift切换同语言的不同键盘/输入法。例如,按下Ctrl+Shift可在同属「中文(中国)」语言的「搜狗拼音」和「微软拼音」之间切换,也可在同属「土耳其语(土耳其)」的「Q-键盘」和「F-键盘」之间切换,但不会切换到其它的「美国键盘」「法国键盘」等。

Alt+Shift切换语言

2、Alt+Shift切换语言。不管当前键盘是「搜狗拼音」还是「微软拼音」,按下Alt+Shift都会切换到下一语言的首个键盘/输入法「微软注音」,再按会切换到「Q-键盘」,再按会切换到「法国键盘」。从「美国键盘」开始按Alt+Shift,则会切换到「搜狗拼音」。

Win+Space和Win+Shift+Space循环切换全部键盘/输入法

3、Win+Space和Win+Shift+Space分别按顺序正向和逆向循环切换全部键盘/输入法。例如,若当前语言为「美国键盘」,则按下Win+Space会切换到「搜狗拼音」,再按会切换到「微软拼音」,再按会切换到「微软注音」,以此类推。从「美国键盘」开始按Win+Shift+Space则会切换到「加拿大多语种标准键盘」,再按会切换到「意大利键盘」,以此类推。

至于游戏中为什么会误按,那就更好理解了。《守望先锋》默认键位中,Shift是用来释放技能的,Ctrl是用来下蹲的,本身就都是常用按键。笔者又自行在Alt键上设置了切换武器(天使、托比昂等人用的)键,所以就很容易误按。切换到法国键盘,自然就显示A为释放终极技能的按键了。

至于标题图中以F为释放终极技能的按键,那是因为切换到了土耳其语(土耳其)的F-键盘:

Windows土耳其F-键盘。黄色和橙色表示Alternative Graph,橙色和红色表示Dead Key

在这种情况下,1键下方、Tab键右边那个键是F键,所以《守望先锋》会很聪明地显示F:

在土耳其F-键盘布局下,该按键上的字母为F

虽然本文开头的问题得到了答案,但是我们还可以再想得远一点。

除了ANSI和ISO,还有没有其它的物理键盘布局?

我们怎么区分、称呼这些物理键盘布局?

在游戏中,我们怎样实现显示正确的按键?

如果您对以上问题感兴趣,咱们接着往下看。

3物理布局

3.1键盘上究竟有多少键

用电脑时间比较长的老用户可能经常听到两个词,就是101-键键盘和102-键键盘,那这个101-键,就是指标准的ANSI键盘有101个键:

ANSI 101键盘:打字机区58键、功能键区13键、指令导航区13键,小键盘区17键

而102-键,就是指标准的ISO键盘有102个键:

ISO 102键盘:打字机区59键、功能键区13键、指令导航区13键,小键盘区17键

可以看到,这两种键盘在物理键盘布局方面的差异都在打字机区,而功能键区、指令导航区、小键盘区完全一致。这也是笔者前文法国键盘、土耳其F-键盘等键盘布局的图都只展示打字机区的按键的原因。

虽然绝大部分物理键盘布局的差异都只发生在打字机区,但是,也有巴西ABNT和ABNT2这样在小键盘区也动了手脚的布局。遇到这种情况时,笔者会特别说明。

3.2 Windows新三键

不过,实际上,上面这种101-键、102-键键盘已经很少见了。因为Windows 95面世时,微软就开始推广自己的新标准。与传统的PC键盘相比,新的Windows键盘多了三个按键(下称Windows新三键):左Win键、右Win键和Menu键。这三颗按键挤在键盘两侧的Ctrl键和Alt键之间。

由于后来鼠标和触控操作的飞速发展远远超出微软的预料,所以Menu键现在基本上没用了,但Win键依然活跃。在所有地区给Windows电脑用的键盘上,你都能看到以各种方式挤在键盘上的Win键,以及可能看得到也可能看不到的Menu键。

所以,上文大部分的键盘布局配图也都是包含Windows新三键的。咱们平常使用的带有Windows新三键的ANSI 104美国键盘,其标准形象是这样的:

ANSI 104键盘:打字机区61键、功能键区13键、指令导航区13键,小键盘区17键

可以看到,在标准尺寸的ANSI 104键盘中,原有的Ctrl键、Alt键以及Space键的尺寸都做了压缩,才放下了Windows新三键。同理,ISO 102键盘加入新三键之后,就有了ISO 105键盘:

ISO 105键盘:打字机区62键、功能键区13键、指令导航区13键,小键盘区17键

与ANSI 104类似,标准尺寸的ISO 105键盘也在压缩原有的Ctrl键、Alt键以及Space键尺寸的前提下,才放得下Windows新三键。

总之,Windows新三键的出现,使得现在标准尺寸的ANSI和ISO的Windows键盘分别是104个键和105个键。这使得101-键键盘和102-键键盘也被称为101/104-键键盘和102/105-键键盘。但同时,由于习惯的力量,很多地方我们仍然能看到101-键键盘或者102-键键盘这样不精确的说法。

在Windows 10微软韩语输入法中,物理键盘布局的设置选项有101和103/106两大类

不过,将101/104-键键盘单单称作101-键键盘还算是安全的,反而如果单单称作104-键键盘是不妥当的。巴西ABNT和ABNT2物理键盘布局的按键就是104/107个,因此如果将101/104-键键盘单单称作104-键键盘,是有可能和巴西键盘布局混淆的。这里的103/106-键键盘,是指韩国键盘。

细心的读者可能要问了,为什么Windows 10微软韩语输入法没有102-键的选项呢?我如果用着102-键键盘,应该怎么选呢?这就涉及到一个101-键键盘与102-键键盘之间的兼容性问题。

关于韩国键盘、巴西键盘以及不同键数键盘之间的兼容性问题,我们下文再详谈。

作者:认真的吉吉
来源:奶牛关
原地址:https://cowlevel.net/article/1964704

最新评论
暂无评论
参与评论

商务合作 查看更多

编辑推荐 查看更多
【爆款新游】【潜力佳作】分析系列
推广