仅调整色相不够,需要同时提供形状或图案的冗余编码
别名: 冗余编码 · shape coding · redundant coding · pattern redundancy
概念解释
色觉缺陷模式常见做法是把冲突色对换成可区分色对(红绿换成蓝橙)。这只解决了「这对颜色分不清」的特定类型,换一组色对或换一种色觉类型后问题重现。冗余编码(redundant non-colour encoding)是更根本的方案:每个用颜色区分的信息同时用第二种非颜色通道编码——形状(三角代表敌人、方块代表友军)、图案(条纹、点阵)、亮度差、文字标签。颜色仍然存在(它对色觉正常玩家最高效),但不再是唯一的信息载体。
机制
冗余编码有效因为它改变了信息的存在方式:颜色是单一维度的信号(一个像素只有一个颜色值),任何色觉类型都可能在该维度上损失分辨率;形状是结构化的空间信号,色觉异常不影响形状分辨。两种编码并存时,信息冗余度提高——任何单一感知通道的损失都不会导致信息完全丢失。这也是无障碍设计的一般原则(「不要只靠颜色传达信息」)的核心逻辑。色相调整方案的问题在于它假设存在一组对所有色觉类型都可区分的颜色——这个假设对单一色觉类型近似成立,对多种类型同时成立的颜色集合非常有限,而且不能适配个体差异。
边界
冗余编码有信息密度成本。形状或图案需要占用面积——小图标(状态效果角标)加图案后可能变得难以辨认,需要权衡图案的复杂度和图标的尺寸。不是所有视觉元素都能加冗余编码:真实感渲染的角色模型无法在表面上印图案,替代方案是轮廓描边(outline)、头顶图标或特效标记。冗余编码也不应该在默认模式下关闭——设计得好的形状编码对色觉正常玩家同样有用(在高速场景中形状比颜色更容易捕捉),把它藏在色盲模式里等于放弃了一次通用的可读性改进。
怎么落地
- 为每个颜色语义指定固定的非颜色伴随编码:形状、图案、亮度层级或文字,写入团队共享的映射表让所有子系统使用同一套对应关系。
- 在高速和远距离场景优先生效的元素(敌我标记、目标指示)用轮廓、头顶图标或描边,不依赖材质表面颜色。
- 验证办法:把游戏画面转灰度(去掉所有色相信息)后完整游玩核心循环,任何在灰度下丢失的信息就是缺乏冗余编码的元素。