与倪爽老师交流为Minecraft设计视障者界面

收获超乎想象得大

最近我开始帮忙做一个帮助视障玩家玩 Minecraft 的 mod - minecraft-access。这个 mod 基本是为游戏设计一套新的适合视障者的人机交互界面。我没系统学过人机交互的知识,在构想新功能时逐渐感到力不从心。这时我想起设计顾问倪爽老师有在提供[免费咨询服务](https://nishuang.net/" >}})。我心想请倪爽老师帮我指条明路,就预约了一次免费咨询。

没想到预计十五分钟到半小时的咨询,最后变成了长达两小时的深度讨论。倪老师不仅为我原本提出的问题提供了多角度的解决方案,还延伸讲了设计关注的重点、用户体验调研等话题,让我受益良多。好记性不如烂笔头,得写篇博客记录下我们都聊了什么,以供日后参考。

我还惊讶地发现这个咨询被选作了倪老师最近准备开的迷你设计课的第一课,好事,受宠若惊,哈哈。

#准备咨询

倪老师提到明确议题是有效会议的关键,我同意。时间上我提前一天多确认了预约,预约系统会给我们俩一人发一封确认邮件。我附上了关于 mod 的介绍链接和展示视频链接,希望倪老师能针对两个问题指点我:

  1. 改进游戏的主界面(就是在世界中自由游玩的部分),降低视障玩家的认知负担。

    • 目前 mod 的主要设计是玩家视线看向哪个方块,就朗读出哪个方块的信息。这是在模拟正常视力玩家的操作——对准目标并交互。这种方式使得视障玩家认知中的 Minecraft 世界分离成了独立的方块,而非 Minecraft 最引以为傲的特征——连续的方块摆放组成更大的“结构”(建筑,风景,etc.)。依倪老师的说法:这种方式只对标实现了正常视力的 look(主动看)能力,但缺失了 seen(被动看到周围)能力
    • 另外 Minecraft 本身的游玩复杂性就比较高,正常视力玩家可以用眼睛轻松获取并理解的大量信息,对视障玩家来说获取延迟高、获取时间长、获取手段复杂。
  2. 为视障者做 Accessibility 的设计原则或方法论,或其他可迁移应用到该方面的UI/UX设计原则。

    • 我有试过搜索过,但很难搜到相关知识,所以想请倪爽老师提供几个搜索方向。

倪老师在咨询前回了我一封邮件,根据他的调研结果,希望和我讨论三个具体的议题。我根据议题提前整理出了一份参考资料,三个分标题就是议题:用声音描绘场景,简化信息,快速移动。三个议题的共通目的在于:让视障玩家在 Minecraft 世界(地图不固定的3D场景)中更轻松达成期望的目的,减少挫败感。

最后我们用这两个问题和三个议题作为话题展开了会议。开会时我发现我的两个问题和倪老师的三个议题是多对多的关系:每个议题背后是一个或多个设计原则,回答了第二个问题,将原则应用在这个案例上是针对第一个问题的不同角度的解决方案。其实我比较犯愁怎么在博客这种树状数据结构中写清楚这个多对多的关系。

#改进游戏主界面

倪老师能提供这么多有实践价值的建议,我是震惊的。我猜对了,倪老师之前没玩过 Minecraft,也没了解过视障游戏这一领域。但我又猜错了,倪老师仅通过几小时的调研(视障游戏的历史发展、现有产品甚至读了几篇论文),就能给出好多有实践价值的建议,每一个建议都是他依据已经掌握的设计原则结合调研得到的案例知识迁移应用得出的。我震惊于倪老师的专业性,和其他专业人士一样,他的专业性源于完整的理论框架和对设计原则的娴熟运用,这样才能在未接触过的子领域上快速找到解决方案。

#Audio Orientation

这类建议的目标是:通过环境音效让视障玩家获知自己的方位

经过倪老师调研,大多3D视障游戏都通过声音来作为(唯一的)输出方式。我因为太熟悉 Minecraft 而忘记了这一点,本来一个视障游戏就不该依赖任何视觉,就算我测试功能时暂时闭着眼,也无法在认知层面和视障玩家达成对 Minecraft 的理解一致。

  1. 主动探测。玩家主动按键,环境发出声音回应玩家,类似潜艇中的主动声纳、蝙蝠的回声。让周围方块播放音效的性能压力较大,但可以一试。
  2. 被动监听。部分环境中元素主动发出声音,玩家被动监听。目前已经实现了类似的功能,需要考虑如何复用放大效果。
  3. 固定方位指示。在固定方位(比如正北)间隔播放声音,提示玩家当前的视角和位置,玩家被动监听。
  4. 浮标。由玩家自行设置位置和音效,在主动探测时回应玩家。

#信息简化

这类建议的目标是:让视障玩家更易获取、理解并记忆本来为正常玩家设计的诸多游戏信息

#突出主要信息,抑制次要信息

上文辅助定位的音效,如果所有音效在同一时间播放,玩家可能处理不过来。解决这一问题有两个可选方案:

  • 次序间隔播放,同一时间只播放一组音效。
  • 给每一组音效分配按键,玩家按住按键时抑制其他音效的播放,让玩家主动选择监听哪一类音效。

#抽象信息含义化

  • 上文辅助定位的音效,不同特征可关联不同信息:音调、频率可关联信息的重要性大小关联远近
  • 利用领地 mod,命名区域。
  • 利用传送 mod,命名位置。

#分类分组信息

  • 上文辅助定位音效分组。
  • 所有领地和传送点作为可遍历选择的列表结构。
  • 依据玩家当前位置,将领地和传送点按东南西北划分到四个象限(斜45度为划分),或其他分类方式。
  • 结合ijkl方向按键,提供新的类似其他游戏大地图一样的传送点选择顺序(二维xz坐标排序)。

#复杂操作自动化

复杂的多步骤任务,通过自动化减少误操作。

  • 自动寻路并移动。(无法确保移动中的安全,比较难实现,利用指令瞬移更好)

#抽象出更高维度的信息集合

  • 区域 -> 领地,解决对结构(建筑,风景…)的空间认知
  • 多步骤任务的各步操作对应的音效 -> 将音效作为整体序列进行记忆

#设计相关的知识

咨询过程中和咨询后的闲聊,倪老师穿插着讲了些设计相关的知识(同时回答了我的第二个问题),结合我的理解整理记录在这个章节下。

  • 设计原则 = 设计逻辑
  • 设计技巧 = 解决方案

#突出主要信息,抑制次要信息

这是我这次学到的最重要的设计原则,因为我发现很多设计原则的动机是这个原则。支持这个原则的理论依据应该是认知心理学方面的,但我搜不到比较合适的对应理论,可能是和人脑信息处理顺序、短时记忆有限等有关。我搜了下,这个放在UI设计领域更常见的说法是“突出视觉主体”,例如重要信息的字号加大加粗。

#重点学习设计逻辑,次要学习设计技巧

如何学习设计技巧?观察用户行为,观察竞争对手产品。 但是比起表面的技巧,更应该分析背后的设计逻辑,案例在变,逻辑不变。就像我这个设计咨询中倪老师展现出的专业能力,这种迁移应用设计逻辑的能力就是 coder/美工/cooker 与 programmer/设计师/chef 的区别*。

* 我一般把 coder, programmer, developer 视为一词,但是这里要区别出来,你懂我的意思就行,别太在意。

#为视障者做 Accessibility 的设计原则

简而言之,为视障者设计 Accessibility 功能,会让大多数现有的设计技巧失效(因为大多数技巧是以视觉为媒介的)。但如上文所述,“信息简化”等设计原则仍然适用,这些原则是以认知心理学等通过实验证明的理论知识为依据的,对“所有人类”都适用,只是应用形式不同。

上帝关上门也会打开一扇窗,由于视觉的缺失,视障者的其他感官会变得比一般人更敏锐。以本案例来说,虽然我们以电子游戏为媒介,无法利用嗅觉、味觉和触觉,但仍然能利用听觉向用户传递信息,而且这很可能是最宽的路。

#设计与编程的异同

两者都是创造性活动,都同时包含由科学实验指导的工程和个人经验主导的艺术的部分。编程和设计最大的区别在于成果对用户行为的约束力不同,或者说在与用户交流时掌握的主动权不同。用户行为向编程成果妥协,设计成果向用户行为妥协。 具体来说:

  • 用户是在编程领域下使用编程成果的,行为受到领域和编程成果(通过API/契约施加的)的双重限制,此时用户行为具有确定性。用户不接受契约,就拒绝提供服务,编程成果掌握主动权。
  • 用户在使用设计成果时不会受到设计领域或设计成果的限制,所以用户行为具有不确定性。设计只能引导用户,减少不确定性,没办法阻止用户以错误的方式使用设计成果(3 Cats 3 Bowls.jpg),主动权不能说没有但较弱。

因为主动性不同,所以在进行设计与编程时所考虑的重点也不同。创造性活动的目的大多是输出作者的意图,这两者也不例外。编程可以很强硬地通过契约让用户接受意图,而设计只能哄着用户按着设计想表达的意图行动。也许这也是编程和设计领域本身的区别,编程过程大多能从底层开始推导确定性,而设计过程中充满不确定性。

#用户体验调研

  • 听从民主决议做不出好设计。因为好设计要突出主要信息,折衷不同甚至互斥的意见得到的结果是一个没有主次的大杂烩设计。
  • 建立包含个位数用户的调研目标小组,与这些用户进行长期深入交流,仔细观察这些用户的行为。

那么选哪些用户作为目标呢?

  • 不要为 power users(重度用户)做优化(Power User Trap 也叫 1% Trap),因为他们解决问题的方式、遇到的场景和多数用户不同。
  • 关注 high frequency users(轻度粘性用户),那些每天使用一小会,但天天都会用的用户(竞技游戏圈子有个更合适的比喻:又菜又爱玩),他们的行为和场景是代表了大多数人的。

#先完成最有价值的工作

产品以提供价值为目的,所以比起先完成最简单的工作,应该先完成最有价值的工作。放在设计活动上,就是优先设计实现效果最大的工作,其他设计围绕这个主要设计来实现,看,这个行为也符合突出主要信息原则。

updatedupdated2024-08-292024-08-29