体感游戏交互设计规范
面向设计师与工程师:让用户知道自己要做什么、做得到、判得准、随时停得下来,并且不因为玩得久而受伤或被羞辱。
7 条原则 · 44 条规则 · 必须 36 · 应当 8
目录
面向设计师与工程师:让用户知道自己要做什么、做得到、判得准、随时停得下来,并且不因为玩得久而受伤或被羞辱。
体感游戏以身体动作参与游玩;在以锻炼为目标的内容中,身体活动本身也是交付价值。它因此需要同时设计游戏挑战与运动负荷。
身体参与可以带来乐趣与训练价值,但疲劳不是所有体感游戏的目的,越累也不等于效果越好。
这带来两条贯穿全文的前提:
第一,系统在要求用户活动身体时,要控制可预见的负荷与环境风险。强度递增、连续天数、成就和排行可以促进参与,也可能让用户忽视不适或承受额外压力。设计需要同时考虑动机价值与这些可预见后果。
第二,识别失败与用户真的没做到,若产品不主动区分,用户往往无从分辨。在体感游戏里,系统可能把识别失败呈现成"你没做到"——把技术缺陷归因给用户的身体能力。这是 M3 重点处理的归因风险;它与 M7 中的身体意象和激励压力共同构成心理层面的设计责任。
把这两件事当边缘情况的设计,其可预见的失效不止于"不好用":伤到人、以及让人不想再打开,都在失效方式之列。
本规范由七条原则和44 条规则组成:原则说明设计方向,规则规定适用情境、行为要求与验证方式。每条规则归属且仅归属一条原则,规则编号即原则编号(M4-2 就是第四条原则下的第二条规则)。
阅读每条规则时,分别确认:设计需要决定什么、工程提供什么事实、用户如何知道要求已生效。
同一件事只写在一处。以"用户做不到一个深蹲"为例:这个动作是否本来就超出该用户的身体能力(M2-3)、系统判不出时怎么表述(M3-1)、连做五十个之后越来越做不到(M1-3),分属三条不同规则——因为它们的规范对象不同,不是同一条义务的三种表述。
本规范约束的是产品对用户作出的交互承诺及其兑现机制的性质,不预设唯一的传感方案(光学骨骼、惯性、压力、可穿戴、混合方案均适用),不指定具体动作库或识别算法。它不是训练课程设计指南,不规定"深蹲应该做几组";运动处方与强度分级见 ACSM 等运动医学来源。采用本规范不能替代无障碍、隐私与健康数据保护、运动医学与医疗器械、未成年人保护的专项评估。
全文四章:第 1 章原则,第 2 章规则的读法与速查,第 3 章规则详解,第 4 章术语;验证方法与清单、论证边界见附录 A、B,外部来源对照见 reference.md,字段见 Design Token.md。
本规范的强制要求是本项目提出的设计约束,不冒充所引用机构的认证标准;来源事实、由事实作出的设计推导与待验证假设分别记录。娱乐、健身、屏幕与头显场景按每条的适用条件选用,不把健身负荷要求机械套到所有体感输入。
1. 七条原则
七条原则按规范对象切分设计责任:每条原则管辖一类对象上的义务,每条规则按其义务的直接规范对象归属唯一原则。对象不同,原则就不会互相替代——这是切分的依据,也是检验切分的方式。
| 原则 | 规范对象 | 设计方向 | 管辖规则 |
|---|---|---|---|
| M1 负荷可控 | 用户的生理负荷及其累积 | 不要让强度成为关卡难度的副产品。目标强度、上限、累计与恢复是产品显式作出的决定 | M1-1 ~ M1-6 |
| M2 动作可执行 | 系统要求用户做出的动作本身 | 不要只设计一套标准动作。幅度、姿势、器材与身体差异决定了谁被排除在外 | M2-1 ~ M2-7 |
| M3 判定与归因 | 对动作的识别、评分与失败表述 | 不要把判不出说成没做到。系统的识别缺陷禁止被呈现为用户的身体缺陷 | M3-1 ~ M3-6 |
| M4 时序与通道 | 动作到反馈的时间与感官通道 | 不要按坐姿看屏幕设计反馈。运动中视线离屏、双手被占、耳朵被音乐占,通道是稀缺资源 | M4-1 ~ M4-7 |
| M5 运动中可控 | 运动状态下用户对系统的控制能力 | 不要把控制入口设计给一个不喘气的人。心率一百五、满手是汗时,停止与降档仍必须够得着 | M5-1 ~ M5-6 |
| M6 空间与在场者 | 现实场地、器材与同场的人和物 | 不要把客厅当成空场。全身动作会撞到家具、宠物和同住的人,场地是安全对象不是背景 | M6-1 ~ M6-5 |
| M7 进程与身体数据 | 跨会话的推进、动机与身体记录 | 不要用连续性换留存。连续天数不得变成带伤继续的压力,体重心率是健康数据不是分数 | M7-1 ~ M7-7 |
同一个场景可以触及多条原则——用户在第三十个深蹲时动作变形、系统判为未完成、他因为怕断掉连续记录而继续做——这一个瞬间同时涉及疲劳后段的要求(M1-3)、判定的归因表述(M3-2)与连续性机制的压力(M7-1)。这不是分类错误:三条规则约束的是三个不同规范对象上的义务。互斥与穷尽是这套切分接受检验的主张,不是宣布即成立的事实:规则增删或归属存疑时,按附录 A 的分类检验验证;检验不过,修改的是原则的切分。
原则用于理解规则与裁决归属,本身不作为单独的判定条目。当原则与具体条款的解读出现冲突时,以适用条款为准,并记录需要澄清的歧义。
本规范不把乐趣简化为强制条款。Mueller 与 Isbister 的十条 movement-based game guidelines(拥抱模糊、彰显动作表达、有意设计疲劳、彰显节奏、支持自我表达等)是本规范在乐趣侧主要引用的设计知识来源,本规范多处引用它们作为设计应用与依据,但不把它们写成规则——它们是生成性的设计目标,不是可判定的义务。两者不冲突,混在一起会让规范失去可判定性。
2. 规则的读法
2.1 每条规则的结构
| 部分 | 作用 |
|---|---|
| 一句话 | 规则的记忆版,不替代正文 |
| 适用 | 这条规则在什么情境下生效。不落在适用范围内的产品记录"不适用"即可 |
| 规则 | 规范正文,规定这条规则的要求 |
| 边界条件 | 与适用共同限定要求的适用范围:说明这条规则不要求什么、例外在什么条件下成立(仅部分规则有) |
| 设计应用 / 验证示例 / 反例 | 帮助落地的说明,不另行增加义务,也不指定唯一实现 |
| 依据与参考 | 失败记录与实现参考(仅部分规则有;来源见 reference.md) |
规则写行为性质、不写实现方式:用户在动作中途停下时不得继续累计完成数,是产品行为;用状态机还是用时间窗判断,是工程方案——两者必须对得上,但不是同一份交付物。
2.2 约束词
- 必须:不满足即不符合本规范。缺了它,某条对用户的承诺会在可预见的情境下失效——这是标「必须」的唯一依据(见附录 B)。
- 禁止:与「必须」同等强度的反向表述;正文中的「不得」与「禁止」等价。
- 应当:默认遵循;确有理由偏离时,记录理由与替代做法,并接受同样的验证。偏离不需要审批,但需要留痕。
合规判定以正文中的独立义务子句为单位:无显式约束词的正文子句承接规则标题的强度;【应当】规则内的「禁止/不得」子句仍是硬约束(M1-6、M2-6、M3-6、M4-5、M5-5、M6-3、M7-6 含此类子句),规则标题与速查表的强度标注不替代子句约束力。
强度表示约束力,不表示重要性:「必须」决定产品能不能上,「应当」往往决定产品好不好用。
2.3 反例的两侧
反例分两侧:"做不到"是漏掉这条要求,"做过头"是为了满足它而堆免责声明、健康问卷与安全确认。两侧都算没做对。
体感游戏被做坏的两种方式同样常见,而且方向相反:一种是把用户当运动员——默认所有人都能跳、能蹲、有五平米空场、能连续三十分钟;另一种是把用户当病人——每个动作前弹健康免责声明、每分钟问一次"你还好吗"、把强度压到不产生任何训练效果。前者伤人,后者让产品失去存在理由。这条规范的每一条都要在这两侧之间取位置,不能只朝一边优化。
2.4 规则速查:44 条
下表是全部规则的一句话记忆版。速查不替代各条的适用条件与完整要求。
M1 负荷可控
| 规则 | 强度 | 一句话 |
|---|---|---|
| M1-1 目标强度是显式决定 | 必须 | 强度是产品定的,不是关卡难度顺带产生的。 |
| M1-2 单次与累计有上限 | 必须 | 一次能练多久、一段时间能练多少,有上限而不是无限续。 |
| M1-3 疲劳后段不加码 | 必须 | 越到后面越累,别在这时候要求更高的精度和平衡。 |
| M1-4 强度调整由用户主导 | 必须 | 系统可以建议改强度,改之前让用户知道并能否决。 |
| M1-5 生理估算不冒充测量 | 必须 | 实测、估算与推断分开说,不把数值当健康结论。 |
| M1-6 恢复是设计对象 | 应当 | 组间和天之间的休息要设计,不是让用户自己看着办。 |
M2 动作可执行
| 规则 | 强度 | 一句话 |
|---|---|---|
| M2-1 动作要求可预知 | 必须 | 开始前用户就能知道要做什么、需要什么身体条件。 |
| M2-2 每个动作有替代 | 必须 | 站不了、跳不了、单侧受限的人有真正的替代路径。 |
| M2-3 不假定标准身体 | 必须 | 身高、体重、关节活动度、平衡、义肢都在设计范围内。 |
| M2-4 器材依赖显式 | 必须 | 需要什么器材、没有时能不能玩,事先说清。 |
| M2-5 动作本身不制造伤害风险 | 必须 | 已知高风险动作不作为强制路径。 |
| M2-6 动作示范可重入 | 应当 | 随时能再看一遍怎么做,不靠首次教程讲完。 |
| M2-7 多人适配分别生效 | 必须 | 各自选动作和负荷,也能一起参与;适配不公开标成能力缺陷。 |
M3 判定与归因
| 规则 | 强度 | 一句话 |
|---|---|---|
| M3-1 判不出与没做到可区分 | 必须 | 让用户知道是系统没看见,还是自己没做到。 |
| M3-2 失败不归因于身体能力 | 必须 | 系统的识别缺陷不能表述成"你不行"。 |
| M3-3 判定标准可知 | 必须 | 什么算做到一次,用户能知道,也能据此改进。 |
| M3-4 判定阈值稳定且自适应可知 | 必须 | 别为了留住用户偷偷放宽或收紧判定。 |
| M3-5 评分不是健康评价 | 必须 | 游戏分数不等于体能、健康或努力程度。 |
| M3-6 判定偏置按动作性质分档 | 应当 | 安全判据不随意放宽,证据不足时不判用户失败。 |
M4 时序与通道
| 规则 | 强度 | 一句话 |
|---|---|---|
| M4-1 反馈延迟有上限 | 必须 | 慢到破坏因果感时降级为离散反馈,而不是没反馈。 |
| M4-2 判定窗口显式且稳定 | 必须 | 节奏类的判定窗口是显式设计决定,不随帧率漂移。 |
| M4-3 反馈不独占视觉 | 必须 | 运动中视线经常离屏,关键状态要有非视觉通道。 |
| M4-4 运动中可读 | 必须 | 按真实距离、抖动和出汗条件设计文字与目标尺寸。 |
| M4-5 音乐与提示不互相掩盖 | 应当 | 提示音不被背景音乐盖掉,也不打断节奏。 |
| M4-6 连续动作有连续反馈 | 应当 | 拉伸、蓄力、保持时持续显示当前状态。 |
| M4-7 画面舒适性与光敏性风险受控 | 必须 | 镜头运动可调,合成画面经过光敏性检查。 |
M5 运动中可控
| 规则 | 强度 | 一句话 |
|---|---|---|
| M5-1 即时中止始终可达 | 必须 | 不适时能立刻停,不必先看完动画或做完这一组。 |
| M5-2 中止不被表述为失败 | 必须 | 停下来休息不扣分、不断记录、不掉成就。 |
| M5-3 暂停与中断保住进度 | 必须 | 门铃响了、宠物冲进来,回来还能接着练。 |
| M5-4 降档在运动中可达 | 必须 | 觉得太累时不用退到设置页才能降强度。 |
| M5-5 控制入口不要求精细操作 | 应当 | 满手汗、喘着气、手被器材占着也能操作。 |
| M5-6 必要控制有非体感路径 | 必须 | 不先做出动作,也能开始、设置、暂停和退出。 |
M6 空间与在场者
| 规则 | 强度 | 一句话 |
|---|---|---|
| M6-1 场地要求显式且开始前确认 | 必须 | 需要多大空间说清楚,并在开始前确认满足。 |
| M6-2 边界可感知 | 必须 | 快出界要在发生时知道,不是靠撞到东西才知道。 |
| M6-3 动作方向不指向危险 | 应当 | 主路径不要求后退、闭眼或落点不明的跳跃。 |
| M6-4 在场他人不被当作玩家 | 必须 | 路过的人不接管判定,也不被默默留存。 |
| M6-5 采集状态可见 | 必须 | 摄像头什么时候在拍,用户能知道,且关不掉这个指示。 |
M7 进程与身体数据
| 规则 | 强度 | 一句话 |
|---|---|---|
| M7-1 中断不惩罚 | 必须 | 连续天数不得成为带伤、带病继续的压力。 |
| M7-2 进程反映真实活动 | 必须 | 完成度、消耗和成就对应真实发生的运动。 |
| M7-3 身体数据可见可控 | 必须 | 记了什么、留多久、能不能删,用户说了算。 |
| M7-4 身体数据不默认对外 | 必须 | 体重、心率、体型不进公开排行和默认分享。 |
| M7-5 不使用体型羞辱式激励 | 必须 | 不靠贬低身体、制造焦虑来提高留存。 |
| M7-6 目标由用户设定 | 应当 | 不默认所有人都想减重。 |
| M7-7 年龄与初始能力分别适配 | 必须 | 按年龄与能力选择起点,不把游玩天数当身体能力证明。 |
2.5 从流程进入规则
先描述一段完整游玩,再记录其中适用的规则与决定。下表用于设计走查,不增加独立义务。
| 时刻 | 必须作出的决定 | 工程需要提供的事实 | 用户能理解的反馈 | 规则 |
|---|---|---|---|---|
| 选内容 | 身体要求、适配路径、器材和空间;负荷与技巧分开 | 内容条件与可用路径 | “可坐姿游玩;不含跳跃”及实际训练差异 | M1-1、M2、M6-1 |
| 准备 | 主体绑定、标定和场地哪些条件仍有效 | 有效确认与缺失条件;不以配置代替检查结果 | 只补必要检查,随时能退出 | M2-3、M5-6、M6 |
| 动作中 | 判据、证据时效、反馈链路、控制入口 | 当前动作、有效属性、判定结果及计数事件 | “已计入”或“暂时看不到手部” | M3、M4、M5-1 |
| 被打断 | 停止范围、半次动作处理、成果保留 | 中止已生效、保留计数、未确认部分 | “已暂停,已完成部分保留” | M5-1~M5-3 |
| 降档与恢复 | 下一动作、负荷、受影响条件、用户准备 | 生效配置、待复核项、动作重入点 | “从下一次动作继续,已降低负荷” | M1-4、M5-3、M5-4 |
| 结束与再来 | 游戏进程、活动量、休息和数据用途 | 结束原因、活动来源、累计账目与删除状态 | “本次结束”及真实活动,不把休息写成失败 | M1-2、M7 |
2.6 状态与回执的最小契约
以下形状用于落实 M3、M5、M6、M7,不要求指定框架或消息系统。字段中的具体标识与时刻是运行事实,不是 design token。
| 对象 | 分开记录的维度 | 界面不得混淆的事实 |
|---|---|---|
| 会话 | 准备/活动中/暂停/结束;完成情况;结束原因 | 结束不等于完成;暂停不取消已完成部分 |
| 一次动作 | 待开始/进行中/已收束;达标/未达标/未观测/无判定能力 | 进行中尚无裁决;画面有骨架不等于有判定依据 |
| 控制 | 请求收到;停止身体要求已生效;器材停机状态(适用时) | 软件暂停与实体器材安全停机分别显示 |
| 前置条件 | 主体、设备、标定、空间各自的有效性与依据 | 一项有效不代表全部可继续;只重查受影响项 |
| 记录 | 已确认活动、估算或补记、游戏进程 | 一般游戏进程不能转换成未实际发生的运动量 |
计数事件关联会话、主体、动作实例、输入来源、发生时刻、判据和配置快照;同一完成事件重放不得重复累计。停止回执关联受影响会话、触发原因、生效时刻及待停机项。空间确认记录检查者或检测来源、范围和失效条件。界面和统计读取同一份事实;没有证据时显示待确认或不可用。
中断恢复的示例:动作进行中 → 信号丢失 → 未观测并暂停 → 信号恢复但仍暂停 → 核验受影响条件、用户确认准备 → 从可执行动作边界继续。过程中已确认次数保持,半次动作不伪记完成,系统故障仍进入观测质量统计。
3. 规则详解
本章按七条原则展开全部 44 条规则。其中的设计应用、验证示例与反例只是帮助落地的说明,不指定唯一实现。
3.1 M1 负荷可控
体感游戏与其他游戏的经济学不同:其他游戏里"难度"消耗的是玩家的注意力和时间,体感游戏里消耗的是心肺、肌肉和关节,而且消耗会累积到明天。把强度当作关卡难度曲线的副产品来处理,等于把一个运动处方问题交给了一个只考虑心流曲线的系统。本原则管的是负荷本身:定多少、最多多少、什么时候必须让人歇。
M1-1目标强度是显式决定必须
一句话:强度是产品定的,不是关卡难度顺带产生的。
适用以持续身体活动或锻炼为内容目标,需要向用户说明预期负荷的产品。
规则产品必须为每个可进入的运动内容显式声明目标负荷。对于有氧内容,强度区间必须锚定在可解释的公开量表上(如 MET、最大心率百分比、心率储备百分比或主观用力程度量表),记录量表出处、适用人群、绝对或相对强度口径及测量或估算方法。成人 MET 区间不得直接作为儿童或每位用户的相对强度结论。力量、平衡与柔韧内容必须补充其实际负荷要求,不得用有氧强度替代关节负荷或动作安全评估。禁止仅以“难度 3”等自造等级作为唯一表达;面向用户可用简明等级,但其含义与依据必须在进入前可得。
边界条件可以采用文献或模型估算;必须注明适用条件和已知误差。没有可信误差区间时明确精度尚未验证,不编造区间。产品可以用公开量表辅助用户主观调节,不要求每次测心率。
依据与参考CDC 区分绝对强度与相对强度,并提供 MET 和主观用力程度的解释;相同活动对不同人的相对负担不同。本规范据此要求记录量表口径,而不是把一个数值区间当作普遍的个人处方。CDC:测量活动强度。
设计应用把强度声明与关卡难度分成两个独立的设计维度——同一强度下可以有不同的技巧难度,同一技巧难度下也可以有不同强度。二者合成一个滑块,是本条最常见的失败方式。
验证示例
- 用户侧:让未使用过产品的目标用户在进入内容前预测"这一段会有多累",与实测的主观疲劳评分比较。
- 实现侧:检查每段内容是否有可解析的强度声明字段;检查该字段是否只是难度字段的别名。
反例做不到——关卡越往后敌人越多,强度随之上升,但产品从未声明过任何强度,用户在第七关第一次体验到心率失控;做过头——把强度声明做成进入前必须逐项确认的健康问卷,用户在开始运动前先填三屏表格。
M1-2单次与累计有上限必须
一句话:一次能练多久、一段时间能练多少,有上限而不是无限续。
适用允许用户连续游玩或在同一日多次进入的产品。
规则产品必须声明单次时长与跨会话累计负荷的管理阈值,分别标明其性质:建议休息门槛或硬限制,并定义达到后的行为。累计计数必须绑定明确主体、统计窗口与数据来源,切换内容、退出重进不得重置同一主体的账目。建议门槛可以提示后继续,但必须提供无成本停止或降档路径;达到硬限制后不得继续投放超限内容,必须按已评估的过渡方式停止该负荷要求。用户报告不适时不得等待计数门槛才响应(见 M5-1)。
边界条件硬限制是产品基于内容与适用人群设定的运行边界,不是人体通用安全线;公共卫生推荐活动量不能倒用成安全上限。产品只能如实说明自己可观测的累计范围,不得暗示掌握用户全部运动量,也不得为跨账号追踪而默认识别人脸。
设计应用按内容负荷定义单次与累计窗口,并注明休息是否计入。日、周窗口可供选用,窗口与门槛须有依据。单独记录休息提醒和不可继续的硬限制,避免一个“上限”字段表达两种相反行为。
验证示例
- 用户侧:连续游玩至声明上限,观察是否收到提示、提示是否可被无成本地采纳。
- 实现侧:检查上限是否有对应的运行时判定;检查同一主体通过退出重进或切换内容能否绕过累计计数;多账号共享设备时不擅自合并身体记录。
反例做不到——"建议每次不超过 30 分钟"写在说明页,系统对玩到第三小时的用户没有任何反应;做过头——到 30 分钟强制黑屏踢出,用户在一组动作中途被打断。
M1-3疲劳后段不加码必须
一句话:越到后面越累,别在这时候要求更高的精度和平衡。
适用单次会话内强度或难度随时间推进的产品。
规则产品必须显式定义会话内的负荷曲线,并在内容评估中写明其所采用的疲劳敏感因素、阶段判别方式与"足以恢复"的判据(评审可据此说明通过依据,而不只是确认做过测试);并保证对精度、平衡、爆发力与关节负荷的要求不在疲劳累积的后段单调上升。需要高平衡性、高关节负荷或落地缓冲的动作,必须安排在疲劳程度较低的阶段,或在其之前安排足以恢复的间歇。禁止把最高风险的动作放在会话末尾作为"最终挑战"。
边界条件本条不禁止后段提高强度本身——后段可以更累,但不能同时更需要精准和平衡。区别在于:提高心肺负荷是设计意图,提高摔倒概率不是。
依据与参考疲劳导致动作质量下降与代偿姿势,是运动医学的基本结论;对交互设计的直接含义是,同一个动作要求在会话前后不是同一个难度。Mueller 与 Isbister 的"有意设计疲劳"(Intend Fatigue)主张把疲劳作为设计材料而非缺陷——本条不与之冲突,而是限定其边界:疲劳可以被设计,但不得与摔倒风险叠加。
设计应用按具体动作、姿势、支撑条件及目标人群评估疲劳敏感度,再安排负荷曲线。坐姿、上肢或拉伸不天然属于低风险;不得仅凭动作类别推导安全性。
验证示例
- 用户侧:在会话首尾各安排同一组动作,比较后段的动作完成质量与主观疲劳评分。
- 实现侧:检查会话编排逻辑是否只按难度值排序;检查高敏感动作在时间轴上的分布。
反例做不到——三十分钟课程的最后一节是单腿平衡加跳跃落地;做过头——为了避免疲劳影响,把整个会话做成与用户已选择目标不符的恒定低挑战,失去所需体验。
M1-4强度调整由用户主导必须
一句话:系统可以建议改强度,改之前让用户知道并能否决。
适用提供自动难度或强度调整(含基于表现、心率或其他生理信号的自适应)的产品。
规则自动上调强度前,系统必须让用户知道方向和将发生的变化,并提供当场拒绝与手动锁定路径;可以沿用用户已选择的自适应模式,无需每次弹窗。禁止在不知情的情况下持续上调。手动设定在会话内优先,直到用户改变,但不得覆盖硬限制或必要的安全下调。使用生理信号的自适应必须定义失联、过期、低质量、异常值和信号滞后时的处置;证据不足时不得据此上调,也不得以旧读数持续显示“状态正常”。
边界条件本条不禁止自动下调强度在安全相关情形下先执行后告知(例如检测到动作严重变形或用户明显跟不上);但下调同样必须可感知,且不得被表述为惩罚(见 M5-2)。
依据与参考Darzi 等的实验室研究没有发现加入生理信号后体验量表的显著优势;另一项 ExerCube 研究比较的是实测与公式估算 HRmax 两种适配方式,不能拿来证明所有自适应无效。这些研究支持按场景验证,不能替代运行中的控制边界。Darzi 等,2021;Martin-Niedecken 等,2021。
设计应用把“下一段建议升档”和“已因数据失效停止升档”分开表达。先处理信号有效性,再在允许范围内调节;不要用单次心率读数或连续命中数替用户判断身体是否适合加量。
验证示例
- 用户侧:让用户在一次会话中被自动调整强度,事后询问其是否察觉、是否知道方向。
- 实现侧:检查是否存在无用户可见事件的强度变更路径;检查手动设定是否会被后续自动逻辑覆盖。
反例做不到——系统检测到用户表现好,静默把后续内容全部上调一档,用户只感觉"今天怎么这么累";做过头——每次微调都弹窗要求确认,用户在运动中被打断七次。
M1-5生理估算不冒充测量必须
一句话:实测、估算与推断分开说,不把数值当健康结论。
适用向用户呈现能量消耗、心率、运动强度或任何生理指标的产品。
规则产品呈现生理指标时,必须区分实测值、估算值与基于估算的推断三者,并使这一区分对用户可见。估算值必须说明其估算依据(体重、年龄、动作类型、时长等),禁止以精确到个位的数字暗示测量精度。普通娱乐与健身功能禁止直接从游戏内指标推出健康状况、体能水平或医学结论。产品未实际测量的指标,禁止以测量的形式呈现。经相应领域专项评估支持的评估功能属于额外范围,按 M3-5 单独声明其性质、依据与限制后方可提供;免责声明不替代证据,也不使未经专项支持的结论变得合法。
依据与参考数值性质须由实际传感链路和模型验证决定:有心率传感器不意味着读数适用于诊断,未直接测量能量消耗的模型也不能冒充测量。本条不对所有消费级传感器与医疗设备作统一精度排名。
设计应用估算值用区间或量级表达而非精确数值;把"本次运动量"与"健康影响"在信息架构上分开,后者不由产品给出。
验证示例
- 用户侧:询问用户是否认为产品显示的卡路里是"测出来的";检查其是否据此调整饮食。
- 实现侧:清点所有生理指标的呈现位置,逐项确认其来源标注与精度表达。
反例做不到——首页大字显示"消耗 327 kcal",无任何来源说明;做过头——每个数字旁都挂一段免责声明,用户看不到自己实际关心的进展。
M1-6恢复是设计对象应当
一句话:组间和天之间的休息要设计,不是让用户自己看着办。
适用包含重复动作组或鼓励连续多日使用的产品。
规则产品应当把组间休息与跨日恢复作为显式的设计元素:定义最短组间间歇、在高强度内容后建议恢复间隔,并使休息在界面上具有正当性而非空白等待。不得将休息表述为进度停滞、失败或需要额外付出成本才能获得的状态。
设计应用休息时段可以提供可跳过的数据回顾或剧情,也可以安静等待。主动拉伸仍属于身体活动,不能把要求继续用力的段落计为被动休息。
验证示例
- 用户侧:观察用户在组间是否实际休息,还是立刻开始下一组。
- 实现侧:检查是否存在可跳过全部间歇的连续路径;检查跳过时是否有任何提示。
反例做不到——每组之间只有一个"继续"按钮,用户连做十二组没有一次间歇;做过头——强制六十秒不可跳过的休息,用户觉得一半时间在等。
3.2 M2 动作可执行
体感游戏对用户提出的第一个要求不是"学会操作",而是"做出这个动作"。这个要求会直接把一部分人排除在外——而且是在他们付了钱、打开产品之后才发现。本原则管的是动作本身:它要求什么身体能力、有没有替代、需要什么器材、会不会伤人。
M2-1动作要求可预知必须
一句话:开始前用户就能知道要做什么、需要什么身体条件。
适用所有以身体动作作为输入的产品。
规则进入任一运动内容之前,产品必须使用户可以知道该内容包含哪些类别的动作,以及执行这些动作所需的基本身体条件(是否需要站立、是否需要跳跃、是否需要地面支撑、是否需要单腿平衡、是否需要下蹲或跪姿)。该信息必须在实际发生消费或投入之前可得,且不得仅以动作名称呈现——名称不足以让用户判断自己能否做到。
设计应用用"身体条件"而不是"动作名称"作为标注维度:站立/坐姿、需要跳跃、需要地面接触、需要单侧负重、需要头部位置变化。用户按自己的限制筛选,而不是按动作名猜。
验证示例
- 用户侧:让有明确身体限制的用户(膝关节问题、平衡障碍、居住在楼上不能跳跃)在进入前判断某内容是否适合自己,事后核对准确率。
- 实现侧:检查内容元数据是否包含身体条件字段;检查该字段是否被实际用于筛选与提示。
反例做不到——课程列表只显示"燃脂进阶 20 分钟",用户做到第三分钟才发现全是跳跃;做过头——进入每个内容前必须逐项确认十二条身体条件声明。
M2-2每个动作有替代必须
一句话:站不了、跳不了、单侧受限的人有真正的替代路径。
适用包含对身体能力有特定要求的动作的产品。
规则对每个必经动作,产品必须提供适配路径,覆盖坐姿及无跳跃冲击的参与需求;适配可由替代动作或非体感输入完成。路径必须能获得同等的内容访问与一般进程认可,不得因选用辅助方式而无法进入后续内容。实际运动量和专门动作挑战的记录必须按各自定义如实计算,不得把按键跳过记成身体完成(见 M7-2)。每条替代路径必须分别声明它能参与的游戏任务、产生的实际活动,以及无法与原动作等同的运动结果;坐姿或低冲击替代保持的是参与机会,不得据此报告与原动作相同的能量消耗或身体效果——计分、进程、动作专属成就与身体估算各按自己的证据记录。
边界条件坐姿与无冲击是可组合的条件,不是互斥档位;坐姿路径可能同时满足二者。声明适用范围不能替代适配路径。若某具体训练效果确实依赖原动作,必须在进入前说明,提供不同训练目标的内容或非运动推进路径,不冒充同等训练效果。
依据与参考Xbox XAG 107 明确提出为关键体感输入提供数字输入替代;任天堂的运动辅助设置已支持把选定运动换成按键。这证明“能继续游玩”与“必须完成原动作”可以分开。轮椅使用者研究还提示,能操作之外仍要考虑挑战与多人参与。XAG 107;任天堂运动辅助;Mason 等,2022 摘要。
设计应用把进程访问、游戏挑战与实际运动量分别设计。替代动作可按个人负荷提供充分挑战;按钮辅助可以推进剧情,但不生成不存在的动作次数或热量。
验证示例
- 用户侧:让坐姿用户完整走完一段内容,检查其获得的进程、成就与反馈是否与站姿用户可比。
- 实现侧:清点必经动作,逐项确认替代路径存在且不触发任何降级标记。
反例做不到——"轻松模式"只是把动作次数减半,坐着的人仍然做不了;做过头——把所有动作都降到坐姿能做的幅度,站着的用户失去训练效果。
M2-3不假定标准身体必须
一句话:身高、体重、关节活动度、平衡、义肢都在设计范围内。
适用所有依赖身体姿态或运动幅度进行判定的产品。
规则姿态判定必须考虑用户自身身体比例、可用活动范围与标定基线,禁止无依据地把单一身高、肢体长度或活动度当作所有人的标准。产品必须声明判定依赖的测量项、获取方式、适用人群及标定失败后的路径,并验证声明范围内不同身体条件下的误判与拒判。固定角度或位移仅在有明确动作依据且适用范围经验证时使用;归一化不得把不安全动作变成合格,也不得在用户反复失败后自动把范围扩大到其舒适范围之外。
依据与参考Meta 的追踪接口存在关节有效性和骨架标定变化状态,说明姿态输出并非始终适合作同一判据的输入。不同身体条件下的误判差异需要本产品实测;该平台文档本身不证明所有算法都有同一种身体偏置。Meta 身体追踪文档。
设计应用以"手举到肩线以上"而不是"手举到距地面 150cm"作为判据;标定阶段获取的身体测量项进入 Design Token 的身体档案类,并允许用户在感觉判定不准时重新标定。
验证示例
- 用户侧:让身高分布两端、体型差异明显、有肢体差异的用户执行同一动作,分别报告有效观测覆盖、误接纳与误拒绝,并说明各自的分母与参考标注方法——只比较"判定通过率"不能区分动作差异与系统偏差(通过率相同不证明识别公平,不同也不直接证明传感偏差),且降低有效观测覆盖不得使指标看起来更好。参考标注应针对该用户已选择的动作与适配范围,不要求不同群体达到相同的运动表现。
- 实现侧:清点全部判定阈值,确认绝对值阈值有明确的动作依据、适用范围与验证记录。
反例做不到——判定要求手举过某个固定高度,身高 155cm 的用户始终判不过;做过头——为了兼容所有体型,把判定放宽到任何抬手都算通过,动作质量完全失控。
M2-4器材依赖显式必须
一句话:需要什么器材、没有时能不能玩,事先说清。
适用依赖专用外设、可穿戴设备或环境器材(垫子、椅子、墙面)的产品。
规则产品必须在用户投入之前显式声明每段内容所需的器材,并定义器材缺失、电量耗尽、连接中断或标定失效时的行为。器材中断时,产品必须保住已完成的进度(见 M5-3),并给出明确的恢复路径;禁止把器材问题静默呈现为用户动作未被识别。
依据与参考以压力传感环加腿部绑带为输入的产品把器材从可选配件变成了必经通道——器材一旦失效,整个交互不可用而非降级。这是本条要求显式定义中断行为的直接场景。
设计应用把"器材状态"做成与"动作判定"并列的一等状态,而不是判定失败的一个原因;中断时的提示指向用户可执行的动作(重新连接、更换电池、重新标定)。
验证示例
- 用户侧:在运动中途拔掉或遮挡器材,观察用户是否能立刻理解发生了什么。
- 实现侧:检查器材失效是否与识别失败走同一条错误路径。
反例做不到——绑带滑落后系统只显示"动作未完成",用户以为是自己做错;做过头——每次开始前强制走完一套六步器材自检。
M2-5动作本身不制造伤害风险必须
一句话:已知高风险动作不作为强制路径。
适用所有要求用户执行特定身体动作的产品。
规则产品必须建立并维护按条件成立的风险规则集合——每条规则限定其适用的动作或动作组合、负荷、人群与能力范围、姿势与支撑、器材与环境、疲劳与准备前置条件,并给出排除或替代行为、依据、评审者及评估记录,且使其在内容编排中实际生效。仅按动作类别列名不足以表达"有支撑时允许、支撑未知时排除"或"单独可用、与高疲劳阶段组合后不可用"这类判定;任一必需条件为未知时,不进入依赖该条件成立的路径。评审必须考虑准备不足、视野遮蔽、不可预知落点、器材负重与追赶节奏等组合风险;不得将未经评估的高风险组合放入必经路径。需要准备活动的内容必须提供相应准备段,不得静默跳过。
边界条件这里列的是待评估风险因素,不是通用医学禁忌动作清单。本规范不直接宣布某种关节角度、颈部运动或负重方式对所有人都危险;具体限制由适用的专业依据决定。
设计应用把动作库的风险标注与内容编排引擎绑定,使高风险动作在结构上无法被排进必经路径,而不是依赖编导自觉。
验证示例
- 用户侧:观察用户在追赶节奏时的实际动作形态,特别是躯干扭转与落地缓冲。
- 实现侧:检查是否存在跳过准备活动直达高强度内容的路径。
反例做不到——开场第一个动作就是全力开合跳;做过头——每次进入都强制五分钟不可跳过的热身,日常使用者放弃。
M2-6动作示范可重入应当
一句话:随时能再看一遍怎么做,不靠首次教程讲完。
适用包含需要学习的动作形态的产品。
规则每个动作的示范与要点应当在任何时候可被重新调取,且调取路径不应当要求退出当前会话。示范应当包含常见错误形态而不只是正确形态。不得把动作示范仅放在首次引导中,也不得要求用户为重看示范而损失当前进度。涉及左右侧和方向的示范,必须说明以玩家身体还是镜像为参照,确保示范、语音和判据一致;镜像画面不得隐式互换身体侧别。
设计应用在动作进行中提供低成本的"看一下"入口(长按、侧栏、语音),而不是把示范埋在教程菜单里。
验证示例
- 用户侧:让用户在第三次使用时被要求执行一个首次引导中出现过的动作,观察其能否找到示范。
- 实现侧:检查示范内容是否与首次引导共用同一条不可重入的流程。
反例做不到——动作要点只在首次教程里讲一次,之后再也找不到;做过头——每次动作前都强制播放十五秒示范。
M2-7多人适配分别生效必须
一句话:各自选动作和负荷,也能一起参与;适配不公开标成能力缺陷。
适用支持共同游玩、协作或竞争,且允许不同输入或能力配置的产品。
规则每位玩家必须能分别选择适配路径、起始负荷和辅助输入,另一玩家或房主的难度选择不得静默覆盖个人限制。协作内容必须为声明支持的每类路径提供实际贡献机会,不得只让适配玩家旁观;竞技模式必须在进入前说明计分和平衡方式,不保证相同成绩。辅助配置须对本人可知,不得默认对其他玩家公开身体原因或以“弱者补偿”等标签展示。
边界条件对等参与指配置权、内容访问和有效贡献机会,不是相同动作、训练量或胜率。无需让全队看到每次辅助生效;M3-4 的透明性面向受影响者,M7-4 约束对外披露。
依据与参考轮椅使用者研究指出综合适配与多人体验的重要性;另一项舞蹈游戏研究显示平衡方式的显著程度会影响自尊与关系感。以下规则是据此作出的产品设计推导,并非论文原有条款。Mason 等,2022 摘要;Gerling 等,2014,作者上传稿。
设计应用协作关卡允许一人按自己的范围完成上肢动作,另一人完成位移任务;两人均能推进共同目标,实际活动各自记录。
验证示例
- 用户侧:混合站姿、坐姿和按键辅助玩家完成一段协作内容,检查每人是否能自主配置并产生贡献。
- 实现侧:切换房主或团队难度,检查个人限制与公开信息范围是否保持。
反例做不到——房主升档后所有人被要求跳跃,坐姿玩家只能旁观;做过头——强制抹平所有分数,玩家失去挑战和自主选择。
3.3 M3 判定与归因
这是体感游戏需要重点处理的原则。摄像头没看清、传感器漂移、骨骼估计在遮挡下失效——这些都是系统的问题,但系统把它们呈现给用户的方式是"未完成"、"Miss"、"动作不标准"。用户收到的信息是关于自己身体的。这条原则管的是判定依据、裁决与归因,不规定具体的识别算法。识别算法不进入本规范,不等于精度证据与本规范无关——M2-3、M3-1、M3-6 仍要求判定依据充分、误判经过验证(见各条)。
M3-1判不出与没做到可区分必须
一句话:让用户知道是系统没看见,还是自己没做到。
适用所有对用户动作作出判定的产品。
规则系统必须区分并分别表达:有有效依据且未达标准、暂时未获有效观测(遮挡、超出范围、器材失效、追踪丢失)、当前配置不具备该项判定能力。后两种不得统一显示为未达标,也不得进入用户动作表现评分的分母;必须分别计入系统观测覆盖与故障统计,不能用拒判掩盖识别缺陷。每项判据必须绑定输入来源、所需身体部位、有效条件、时间新鲜度和适用范围;只获得部分有效数据时,只裁决可支持的属性。禁止仅因完整骨架已被渲染,就宣称全部关节已被测到。
边界条件不要求显示实时置信度。推断姿态并非一概不能用于游戏:在具体动作与人群中验证适用后可以使用,但不得把用于外观补全的生成腿部当作脚掌落点或膝关节安全的实测依据。暂时丢失与固有不支持必须分别给出重试、重新标定或改用适配路径的出口。
设计应用为"没看见"设计与"没做到"完全不同的反馈形态——不同的音效、不同的措辞、不同的视觉表现,并且"没看见"的反馈应指向用户可执行的改善动作(往前站、避开背光、调整绑带),而不是指向动作质量。
验证示例
- 用户侧:人为制造遮挡后让用户执行标准动作,询问其认为发生了什么。
- 实现侧:清点判定结果的取值域,确认其中存在与"未达标"分离的"未观测"取值,并确认未观测与无判定能力不进入用户动作表现评分分母,但计入系统观测覆盖与故障统计。
反例做不到——用户站得偏了,屏幕连续显示七次"Miss",用户以为自己动作不对;做过头——每次判定都附带一段关于识别条件的说明,节奏完全被打断。
M3-2失败不归因于身体能力必须
一句话:系统的识别缺陷不能表述成"你不行"。
适用所有向用户反馈动作判定结果的产品。
规则判定失败的反馈措辞、语音与视觉表现,禁止将失败归因于用户的身体能力、体能水平、努力程度或身材。反馈必须指向这一次动作的可改变属性(幅度、速度、位置、朝向)或外部条件(站位、光线、器材),不得指向用户的身体本身。产品必须在发布前对全部失败反馈文案进行归因审查,审查记录作为该产品符合本条的依据;审查范围覆盖内容包、各语言与后续的文案模板变更——一次审查不永久有效。
依据与参考传感不确定性有平台接口依据;游戏平衡方式影响自尊也有体感舞蹈研究。但“识别失败文案直接改变身体自我认知”的因果链仍缺少所列资料直接支持的实证。本条是基于反馈真实性与避免无依据归因提出的设计约束,不以“两个已确认事实”冒充证据。Gerling 等,2014,作者上传稿。
设计应用建立文案可用词与禁用词清单。只在已验证判据与用户舒适范围内建议调整幅度;证据不足时提示调整观测条件或改用替代路径,禁止对连续拒判无限重复“再大一点”“再用力一点”。
验证示例
- 用户侧:让在判定中系统性表现较差的用户群体(体型分布两端、有肢体差异)使用产品,事后测量其对自身运动能力的判断变化。
- 实现侧:导出全部失败反馈文案与语音,逐条标注归因指向。
反例做不到——连续判定失败后语音说"看来今天状态不太好,加油";做过头——所有失败都表述为"系统可能没看清",用户永远得不到真实的动作纠正。
M3-3判定标准可知必须
一句话:什么算做到一次,用户能知道,也能据此改进。
适用对动作是否达标作出二值或分级判定的产品。
规则产品必须使用户能够知道每个动作的达标判据涉及哪些可观察属性(幅度、速度、保持时长、身体朝向、双侧对称性)。判定结果为未达标时,反馈必须指出是哪一项属性未达标,而不是仅给出总体结论。禁止以完全不可解释的综合评分作为唯一反馈。
边界条件本条不要求公开具体阈值数值,也不要求实时显示各项属性的量化值;要求的是用户能够知道判定看的是什么、这一次差在哪一项。
设计应用把判定拆成有限几项可命名的属性,反馈时只点出偏差最大的一项——多点几项会变成 M4 所说的反馈过载。
验证示例
- 用户侧:让用户在连续三次未达标后描述自己应该改什么,检查其描述与系统实际判据的一致性。
- 实现侧:检查是否存在只输出总分而无属性分解的判定路径。
反例做不到——只显示"动作评分 62",用户不知道该改什么;做过头——每次动作后展示七项指标的雷达图,用户在运动中根本读不了。
M3-4判定阈值稳定且自适应可知必须
一句话:别为了留住用户偷偷放宽或收紧判定。
适用判定阈值可能随用户表现、使用时长或运营目标变化的产品。
规则判定阈值必须是显式定义的设计决定。产品若采用随用户表现自适应的阈值,必须使该自适应对用户可知并可关闭,且必须声明其调整范围的上下界。禁止为提高留存、延长会话或制造成就感而在用户不知情的情况下放宽判定;禁止为增加挑战感而在用户不知情的情况下收紧判定。判定阈值禁止与商业化状态(是否付费、是否处于活动期)挂钩。
依据与参考动态难度调整在游戏中是成熟做法,但在体感游戏中它调整的不只是挑战感——它同时改变了用户对自己身体表现的认知,也改变了 M1 的实际负荷。这使得"用户不知道判定被调过"从一个游戏设计选择变成了一个归因问题。
设计应用内容挑战、实际负荷与动作判据分开管理;内容变化影响身体要求时同样适用 M1-4。让使用者知道所选辅助或平衡机制,但不在公共画面逐次播报谁获得帮助,也不公开身体限制;“本人可知”不等于“对手必须知道”。
验证示例
- 用户侧:让同一用户在阈值被调整前后执行同一动作,询问其对自己表现变化的解释。
- 实现侧:清点全部影响判定阈值的输入,确认其中不含商业化或留存相关字段。
反例做不到——新用户前三天判定被暗中放宽以提高留存,第四天用户突然"退步";做过头——阈值完全固定,用户在明显进步后仍面对同一套判定,失去成长感。
M3-5评分不是健康评价必须
一句话:游戏分数不等于体能、健康或努力程度。
适用向用户呈现分数、等级、排名或评价性标签的产品。
规则普通游戏的分数、等级与评价性标签禁止被直接表述为对用户体能水平、健康状况或努力程度的评价。这类表达必须限定在游戏内表现的范围内。产品禁止以任何形式给出体能测评结论、健康风险判断或医学建议,除非该功能经过相应领域的专项评估并显式标明其性质与限制——这一例外是 M1-5 所说的「额外范围」的唯一入口,其证据由该专项承担,本规范不代为判定;附录 B.2 把康复与医疗用途排除在本规范之外,指的是本规范不为这类功能设立要求,不是禁止产品在专项支持下提供它们。
边界条件本条不禁止产品呈现客观活动量记录(时长、次数、估算消耗,见 M1-5);禁止的是把这些记录转换为对人的评价。
设计应用等级命名避免使用体能语汇("入门体质"、"运动达人"),改用与游戏内容相关的命名。
验证示例
- 用户侧:询问用户是否认为自己的等级反映了真实体能水平。
- 实现侧:清点全部等级、称号与评价性文案,逐条确认其语义范围。
反例做不到——连续几天分数低后显示"你的体能等级:偏弱";做过头——所有反馈都拒绝给出任何评价,用户看不到自己的进步。
M3-6判定偏置按动作性质分档应当
一句话:安全判据不随意放宽,证据不足时不判用户失败。
适用需要在漏判与误判之间取舍的产品。
规则判定偏置应当按误判后果分档。涉及动作安全的判据,只有在输入质量和适用性满足要求时才可裁决;证据不足必须进入 M3-1 的未观测或无判定能力路径,不得为了“判严”而默认判用户失败。不得以提高通过率为由放宽已验证的安全判据,也不得把游戏确认当作安全认证。连续拒判必须提供暂停、替代或检查观测条件的出口;趣味动作可在声明范围内容忍变化。
依据与参考Isbister 与 Mueller 主张为运动与传感的不确定性留出空间。本规范据此区分趣味容错与安全判据,再加入“无依据则不裁决”的边界;这是一项设计推导,不能写成严判必然降低伤害率的实证结论。运动游戏指南,§4.3.1。
设计应用先检验输入是否足以裁决,再检验动作是否达标。连续拒判时停止追加强度,并检查是否是位置、遮挡、标定或动作不适配。
验证示例
- 用户侧:让用户以明显代偿的姿势执行安全相关动作,检查系统是否确认。
- 实现侧:检查是否存在全局统一的置信阈值;检查安全标记是否实际参与判定。
反例做不到——用弯腰代替深蹲也被判为完成,用户练了两周腰痛;做过头——所有动作都严判,用户大部分动作都不被承认,放弃使用。
3.4 M4 时序与通道
体感游戏的反馈设计不能沿用坐姿看屏幕的假设:用户在两三米外、身体在动、视线经常离屏、双手可能被器材占着、耳朵被背景音乐占着、还在喘。可用的感官通道比 GUI 少,而对时序的敏感度比 GUI 高——动作与反馈之间的因果感是这个模态的基础体验。本原则管的是反馈的时间与通道分配。
M4-1反馈延迟有上限必须
一句话:慢到破坏因果感时降级为离散反馈,而不是没反馈。
适用所有对用户动作给出反馈的产品。
规则产品必须按反馈类型声明端到端延迟预算,并定义起止事件、采样设备、时钟对齐方式、统计分位与允许超限比例;平均延迟不得替代尾部延迟和抖动检查。动作采样、传输、推断、平滑、渲染和输出均计入相应链路。超出预算时必须提供可感知的降级反馈;不得继续把陈旧姿态呈现为实时跟随。头显的头部视角更新与身体评分是不同链路,不得把“离散反馈”方案用于冻结头部视角;无法维持该链路时使用平台支持的安全退出或透视路径。
依据与参考端到端延迟的可接受范围须按设备、反馈链路、内容与目标用户验证,不能套用单一通用阈值。Apple 对追踪中断的建议是淡出虚拟手并显示真实手,而非保留冻结姿态;这是反馈降级的具体平台参考,不是延迟验收线。Apple 沉浸体验指南。
设计应用分别预算头部视角、身体跟随、动作评分和进度提示。平滑可以减小抖动,也会增加延迟;按最终输出测量,在目标设备和内容上验证预算。
验证示例
- 用户侧:人为注入递增延迟,测量用户出现动作过冲、重复执行或"感觉不跟手"的抱怨阈值。
- 实现侧:在真实设备上端到端测量各类反馈的延迟分布,而非只测渲染耗时。
反例做不到——虚拟形象滞后半秒仍然继续跟随,用户越做越乱;做过头——为压低延迟把所有反馈简化为一个闪光,用户得不到动作信息。
M4-2判定窗口显式且稳定必须
一句话:节奏类的判定窗口是显式设计决定,不随帧率漂移。
适用包含节奏、计时或音乐同步判定的产品。
规则判定窗口必须以时间单位定义,并说明判定的是动作开始、目标事件还是动作完成。输入事件须有可对齐的时间戳,不得以回调到达时间直接代表动作发生时间。产品必须定义统一判定时基及与音频、显示、传感器的对齐方式;对齐可采用音频时钟或经过验证的单调时钟映射。提供用户可执行的校准路径,音频输出、显示模式或关键设备改变时使失效校准重新生效前得到核验。禁止窗口随渲染帧率漂移。
设计应用判定基于音频时基而非渲染帧计数;校准入口在用户第一次表现出系统性提前或滞后时主动提示,而不是埋在设置里。
验证示例
- 用户侧:在不同显示设备与音频输出路径(电视、蓝牙耳机、外接音箱)下测量同一用户的判定偏移分布。
- 实现侧:注入帧率抖动,检查判定窗口的实际时长是否变化。
反例做不到——接了蓝牙音箱后所有判定都偏,用户以为自己节奏感变差了;做过头——每次启动都强制走一遍完整校准流程。
M4-3反馈不独占视觉必须
一句话:运动中视线经常离屏,关键状态要有非视觉通道。
适用所有要求用户在运动中获取系统状态的产品。
规则以下状态必须至少有一条非视觉通道可感知:动作是否被计入、当前是否在有效范围内、是否需要停止或调整、会话是否已结束。产品不得假定用户在运动全过程中持续注视屏幕。非视觉通道的选择必须考虑该通道是否已被占用——背景音乐占用听觉时,提示音必须在响度或频段上可分离(见 M4-5)。
边界条件四类状态只在其适用内容与条件下要求可感知。所选非视觉通道必须在实际佩戴、静音、环境噪声及目标用户感官能力条件下可用;不可用时提供其他通道或保持可见的等效内容路径,不能仅凭“配置了声音”认定覆盖。
依据与参考转身、低头和朝向变化会使用户暂时看不到固定屏幕。内容既然要求这些动作,就须保证期间的关键状态仍可感知。具体通道应在真实动作和感官条件下验证。
设计应用把"计入"做成一个短促、低干扰、与背景音乐频段分离的音效,而不是屏幕上的数字变化。
验证示例
- 用户侧:让用户在完整会话中佩戴视线记录,统计视线离屏时长占比与离屏期间发生的状态变化。
- 实现侧:静音条件下与遮挡屏幕条件下各完整走一次会话,检查四类状态是否仍可分辨。
反例做不到——转身动作期间的所有反馈都在屏幕上,用户转回来时已经错过三次判定;做过头——每个动作都配一声提示音,二十分钟里响四百次。
M4-4运动中可读必须
一句话:按真实距离、抖动和出汗条件设计文字与目标尺寸。
适用在用户运动过程中呈现需要阅读或点选的信息的产品。
规则运动中呈现的文字、图标与可操作目标,其尺寸与对比度必须按实际使用距离与用户处于运动状态的条件确定,而非按静止近距离阅读的标准确定。产品必须声明其设计所依据的观看距离范围。运动中必须阅读的信息量必须有上限,超出上限的信息应当移到间歇或会话结束后呈现。
设计应用把信息按"必须在动作中读到"与"可以等到间歇"分类,前者压缩到极少数几项——通常是当前动作、剩余次数、是否被计入。
验证示例
- 用户侧:在声明距离的上界、用户处于运动状态时,测量关键信息的识别正确率。
- 实现侧:检查是否存在按桌面或手持距离设计后直接放大的界面元素。
反例做不到——三米外看不清剩余次数,用户只能凭感觉;做过头——所有文字放到超大号,屏幕上只放得下两行,用户失去情境信息。
M4-5音乐与提示不互相掩盖应当
一句话:提示音不被背景音乐盖掉,也不打断节奏。
适用同时使用背景音乐与音频提示的产品。
规则音频提示与背景音乐应当在频段、响度与时间上分离,使提示在音乐播放中仍可辨识,同时不破坏音乐的节奏结构。产品应当提供两者的独立音量控制。不得把安全相关提示(停止、超范围、器材失效)与普通反馈音置于同一优先级,也不得让背景音乐掩盖安全相关提示。
依据与参考节奏是这个模态最有效的引导手段之一(Mueller 与 Isbister 将"彰显节奏"列为独立指南)——但同一个听觉通道同时承担了引导、反馈与安全提示三种职能,三者的冲突必须显式设计而不是靠混音师现场调。
设计应用为安全相关提示保留一个独立的音色与响度层级,并在其触发时对背景音乐做短时压低。
验证示例
- 用户侧:在最大背景音乐音量下触发安全提示,测量用户的察觉率与反应时间。
- 实现侧:检查是否存在共用同一音频总线且无优先级区分的提示路径。
反例做不到——高潮段音乐盖住了"超出范围"的提示,用户继续后退撞到桌子;做过头——每次提示都把音乐压到几乎静音,整段体验断断续续。
M4-6连续动作有连续反馈应当
一句话:拉伸、蓄力、保持时持续显示当前状态。
适用包含需要保持、渐进用力或缓慢移动的动作的产品。
规则对保持类与渐进类动作,产品应当在动作过程中持续呈现当前状态与目标的关系,而不是只在结束时给出结果。连续反馈应当至少覆盖"当前处于目标区间内外"这一信息。
设计应用把"还差多少"做成连续量而不是离散阶段——用户据此实时微调,这正是这类动作的训练价值所在。
验证示例
- 用户侧:观察用户在保持类动作中是否出现反复试探性调整(无连续反馈的典型表现)。
- 实现侧:检查保持类动作的反馈是否只在判定结束时触发。
反例做不到——保持三十秒的动作全程无反馈,结束时才说不合格;做过头——每帧刷新一次数值,用户盯着跳动的数字反而做不好动作。
M4-7画面舒适性与光敏性风险受控必须
一句话:镜头运动可调,合成画面经过光敏性检查。
适用呈现游戏画面的产品;镜头效果和沉浸控制条款仅在相应能力启用时适用。
规则产品必须允许关闭非必要的镜头摇晃、晃动和运动模糊,并保留任务所需提示。头显内容必须说明其现实位移与虚拟位移关系,提供可达的降低沉浸或退出路径,尊重平台的边界、透视和追踪丢失行为。切换呈现模式时必须保持会话状态与控制入口,不得以舒适性设置降低为由惩罚用户。头部跟随异常时按 M4-1 处理,不以冻结视角或强制等待动画维持游戏。
边界条件降低沉浸不一定意味着平台具备透视能力;无此能力时给出真实可用的暂停和退出路径。舒适性设置不能被宣称为消除所有不适,也不能代替现实空间确认。光敏性检查与镜头运动控制分别验证,具体测试方法与适用显示条件须有依据。
依据与参考XAG 117 提供镜头运动与视觉效果的可调建议,Apple 强调用户控制沉浸和追踪中断的呈现。这里提取可迁移的交互要求,不照搬特定平台的活动半径。XAG 117;XAG 118 光敏性;Apple 沉浸体验。
设计应用将低负荷与减少镜头运动做成两个独立选项;静止观看也可能需要后者。
验证示例
- 用户侧:启用减少运动效果,检查关键状态与退出入口仍然可用。
- 实现侧:模拟追踪失效和平台边界事件,检查不会继续显示冻结的身体或视角,也不会丢失已确认进度。
反例做不到——调低运动强度仍强制摇晃镜头;做过头——关闭所有动画连同方向提示,用户无法知道下一步。
3.5 M5 运动中可控
大多数产品的控制入口是给一个坐着的、不喘气的、双手空着的、能看清小字的人设计的。体感游戏里,需要用到控制入口的时刻恰恰是用户最不具备这些条件的时刻——他觉得太累了、有点头晕、或者刚扭了一下。用户最需要停下来的那一刻,正是他最难操作的那一刻。本原则管的是这个时刻。
M5-1即时中止始终可达必须
一句话:不适时能立刻停,不必先看完动画或做完这一组。
适用所有以身体运动作为主要输入的产品。
规则产品必须在运动的任何时刻提供即时中止,触发不得要求完成当前动作、组或关卡,不得等待动画或过场结束,也不得依赖精确看屏或精细操作。至少一条路径必须独立于主动作识别链路(如物理按键或可用的系统退出控制),避免追踪失效时连暂停也失效。生效后停止计时压力、新动作指令及追加身体要求;产品控制阻力或运动器材时按该器材的安全停机方案执行,不把突然卸载、锁死或黑屏当通用中止。用户报告不适时直接响应,不先要求完成问卷或测心率。界面必须依据控制生效事实表示“已暂停”,不能以请求已收到代替生效;中止后的排队指令、迟到网络消息和传感重连不得重新追加身体要求。
边界条件本条不要求中止立即结束整个会话;中止可以进入暂停状态。要求的是"对用户的身体要求立刻停止"这一效果不被任何界面流程延迟。
设计应用中止的触发方式应当是最粗糙的输入——一个大的物理按键、一个不需要精度的动作、一句话,而不是屏幕上的小图标。同时提供至少两条独立通道,避免单一通道在器材失效时同时失效。
验证示例
- 用户侧:在会话的各个阶段(动画中、倒计时中、动作组中途、结算中)要求用户尽快停止,测量从意图到实际停止的时间。
- 实现侧:清点所有会话状态,确认每个状态都有中止入口;检查是否存在不可中断的界面流程。
反例做不到——用户觉得头晕,但必须等这一组十二次做完才出现暂停按钮;做过头——把中止做成任何大幅动作都会触发,用户正常运动时反复被暂停。
M5-2中止不被表述为失败必须
一句话:停下来休息不扣分、不断记录、不掉成就。
适用所有记录用户表现或维护进度状态的产品。
规则用户主动中止、暂停或降低强度,禁止被表述为失败、放弃或负面事件,禁止触发扣分、进度回退、连续记录中断或成就撤销。中止后的界面禁止使用施压性表述(挽留式劝返、损失提示、与他人的比较)。因身体不适而中止时,产品必须优先呈现的是恢复与安全信息,而不是进度信息。
边界条件本条不禁止产品记录会话未完成这一事实;禁止的是把它转换为对用户的负面评价或惩罚性后果。
实时多人边界:个人的即时中止不受其他玩家同意或联网回执的限制;产品必须说明一名玩家停止时,共同时间轴如何处理、未完成部分如何计入、本场如何结算——采用无额外退出惩罚的退出、替补或“不计入排名”等明确结算方式。客观比赛结果与退出惩罚分开:不得撤销已获得的一般进程或已确认活动,也不保证未完成比赛的名次和未取得的动作成就。已获得的一般进程与已确认的活动量保留,缺席的部分不得被伪记为完成,也不得为了继续比赛而要求本人继续做动作。无法原位恢复时说明可重入的边界,不承诺回到已经结束的比赛时刻。
依据与参考这条与 M7-1 处理的是同一类机制在两个时间尺度上的表现:M5-2 管这一次停下来的即时代价,M7-1 管跨天的连续性压力。两者分列,是因为规范对象不同——前者是运动中的控制能力,后者是跨会话的进程。产品可能满足其中一条而违反另一条。
设计应用把活动阶段、完成情况与结束原因分别表达。例如“已结束;已确认 8 次动作;由你主动停止”,既保留成果,也不把停止写成失败。
验证示例
- 用户侧:让用户在会话中途主动停止,记录其看到的全部界面文案与状态变化。
- 实现侧:清点中止路径触发的全部状态变更,确认其中不含惩罚性变更。
反例做不到——中途退出弹出"你确定要放弃吗?今天的连续记录将中断";做过头——中止后完全不记录任何信息,用户下次回来什么都没有了。
M5-3暂停与中断保住进度必须
一句话:门铃响了、宠物冲进来,回来还能接着练。
适用会话可能被用户主动或被环境被动打断的产品。
规则中断时必须保存内容位置、已确认计数、游戏进程、运动量来源、强度设定及中断原因。恢复前确认用户已准备好,按中断原因核验设备、标定和场地;仅重新取得受影响的前置条件。禁止追踪一恢复就自动开始动作指令,禁止重做已确认完成的部分或重复计数。被截断的半个动作或保持段不得伪记完成;可从可执行的动作边界重入,同时保留已发生的活动记录。
边界条件本条不要求无限期保存;保留期限必须显式声明。超过保留期限后的行为必须明确,且不得表现为静默丢失。实时多人保留个人成果,重入位置受仍在进行的共同时间轴约束;已结束的比赛不承诺原位恢复。
设计应用恢复时不要直接回到中断的那一帧——中断意味着用户已经脱离了运动状态,恢复应当包含一小段重新进入,但这一段不计入需要重做的内容。
验证示例
- 用户侧:在动作组中途拔掉器材、切走应用、让第二人走进画面,各测一次恢复体验。
- 实现侧:检查各类中断是否走同一条恢复路径;检查已完成计数是否在中断时丢失。
反例做不到——接了个电话回来,二十分钟的课程从头开始;做过头——每次中断都要走一遍完整的重新标定与热身。
M5-4降档在运动中可达必须
一句话:觉得太累时不用退到设置页才能降强度。
适用提供多个强度档位或难度档位的产品。
规则降低强度必须在运动中可达,或在一次即时中止后的当前会话内可达。不得要求用户结束会话、回到外部设置页、重做已完成部分或继续原负荷。操作负担应当与常用暂停入口相近,并在实际输入条件和目标用户中验证;不得为了满足成本比较而降低中止可达性,也不能只用点击次数比较不同输入方式。降档必须在下一项身体要求生效前应用,无法安全切换时先停止该负荷;不得引发进度损失或惩罚性表述(M5-2)。
边界条件本条不要求提供运动中的升档路径——升档可以要求更显式的操作。这个不对称是有意的:降档的紧迫性来自身体,升档的紧迫性只来自动机。
设计应用把降档做成与中止并列的一等入口,而不是设置菜单里的一项。降档的粒度要够细,使用户不必在"继续硬撑"和"完全停下"之间二选一。
验证示例
- 用户侧:在会话中途要求用户降低强度,测量操作路径长度与是否需要中断运动。
- 实现侧:检查强度设定是否只能在会话开始前修改。
反例做不到——想降一档必须退出课程回到主菜单重选;做过头——运动中不断弹出"要不要降低强度"的询问。
M5-5控制入口不要求精细操作应当
一句话:满手汗、喘着气、手被器材占着也能操作。
适用在运动过程中需要用户操作的产品。
规则运动中的控制入口应当在以下条件下仍可用:手部出汗、手部握持器材、身体处于运动状态、呼吸急促影响语音、视线未对准屏幕。控制入口应当不要求精确指向、不要求多步序列、不要求长时间保持姿势。不得把运动中的必要控制放在需要精确点选的小目标上。
设计应用优先使用物理按键、大范围动作或语音;触摸目标按运动状态下的手抖幅度而非静止状态确定尺寸。
验证示例
- 用户侧:让用户在完成一组高强度动作后立即操作控制入口,测量首次成功率。
- 实现侧:清点运动中可能需要的全部操作,逐项确认其输入精度要求。
反例做不到——暂停按钮是屏幕角落一个小图标,需要走过去点;做过头——为了容错把整个屏幕做成暂停区,用户碰一下就暂停。
M5-6必要控制有非体感路径必须
一句话:不先做出动作,也能开始、设置、暂停和退出。
适用采用身体动作或设备运动输入的产品。
规则开始、教程、辅助设置、标定重试、暂停、恢复与退出等必要控制,必须有不依赖完成训练动作的操作路径;可使用按钮、键盘、开关或平台支持的辅助输入。用户必须能在首次动作之前启用该路径,并关闭非必要的动作触发,避免调整站位、休息或旁人活动造成操作。关闭体感控制不得关闭 M5-1 的停止能力。触发完成训练动作的辅助输入,按 M2-2 与 M7-2 分别处理访问和运动量。
边界条件对确以身体运动为本质的训练活动,不承诺按钮产生同等训练效果;但这种本质性不能用来取消菜单和恢复控制的替代路径。系统必要的安全检测与普通动作指令分别管理。
依据与参考WCAG 2.2 的 2.5.4 包含替代操作、可关闭动作触发及本质性例外,其直接范围是 Web 内容;本规范将该思路用于必要控制,并结合游戏领域的 XAG 107。这里不是对全部体感产品作 WCAG 合规判定。WCAG 2.5.4;XAG 107。
设计应用首次页面就能用按键进入设置;绑定可用停止键后再开始标定。不要把“抬双手”做成打开坐姿模式的前提。
验证示例
- 用户侧:不站立、不抬双手,从启动到设置辅助、进入、暂停和退出完整走查。
- 实现侧:停用或断开主动作识别链路,验证必要控制仍可用,恢复连接不会触发排队动作。
反例做不到——要先跳一次才能打开无跳跃模式;做过头——把安全检测也归为体感输入一起关闭。
3.6 M6 空间与在场者
体感游戏可能要求用户在家里挥拳、跳跃或改变位置。这些动作发生在有家具、有宠物、有同住者、地面可能打滑的真实空间里,而系统对这个空间通常一无所知或所知很少。本原则管的是场地、边界与同场的人和物——它们不是背景,是安全对象。
M6-1场地要求显式且开始前确认必须
一句话:需要多大空间说清楚,并在开始前确认满足。
适用要求用户进行位移、大幅肢体动作或跳跃的产品。
规则产品必须在开始前声明动作所需空间及其参考站位、地面与高度要求,并通过传感、用户检查或二者确认适用条件。空间须覆盖身体、手持器材和辅助器具的扫掠范围,不得只量双脚位置或传感器视野。说明无法自动检测的障碍、地面和动态进入者;内容要求、站位、朝向、设备位置或场地布局改变时,复核受影响条件。禁止在中途突然引入超出已确认范围的动作。
设计应用空间确认的成本要与风险相称——低强度坐姿内容不需要每次确认,含跳跃与位移的内容需要。把确认做成一次性设置加变更时复核,而不是每次开始都重来。
验证示例
- 用户侧:在小于声明尺寸的空间内启动内容,检查是否被提示。
- 实现侧:检查内容元数据是否包含空间要求;检查中段引入位移的内容是否有前置告知。
反例做不到——课程中段突然要求向左右各跨三步,用户旁边就是茶几;做过头——每次开始都强制走一遍环境扫描,坐姿拉伸也不例外。
M6-2边界可感知必须
一句话:快出界要在发生时知道,不是靠撞到东西才知道。
适用存在有效活动区域限制的产品(传感范围、安全区域或内容设定的活动范围)。
规则产品必须分别声明传感有效范围、内容活动范围与已确认的现实空间,不得用“追踪正常”推导“没有障碍”。具备定位能力时,接近或越过相应边界必须及时反馈并按声明行为降级或暂停;不具备实时边界检测能力时,必须说明能力限制,采用用户确认的固定站位、地面标记或适配内容,不承诺自动避障。可检测的越界不得仅表现为动作不计入;提示与判定失败可区分,并适用 M4-3 的通道要求。
依据与参考没有专门反馈时,越界与判定失败可能都表现为动作没反应。用户可能通过扩大动作尝试补救,进一步离开有效范围。本条将这种可预见的错误补救作为设计风险;这并不意味着所有用户都会如此反应。
设计应用边界反馈应当是渐进的而不是二值的——在接近时就给出方向性提示,而不是越过后才提示。
验证示例
- 用户侧:让用户在不知情的情况下逐步移出有效区域,观察其何时察觉、如何反应。
- 实现侧:检查越界事件是否与识别失败共用同一反馈路径。
反例做不到——用户后退出了摄像头范围,动作全部不计,他以为自己做得不标准所以做得更用力;做过头——离边界还有一米就持续报警,用户被限制在很小的范围里活动。
M6-3动作方向不指向危险应当
一句话:主路径不要求后退、闭眼或落点不明的跳跃。
适用设计用户在真实空间中位移或改变朝向的产品。
规则位移动作的方向应当让用户能够确认落点与前方空间;应当避免盲目后退、遮蔽视野中的位移或落点未知的跳跃。改变朝向后复核受影响的空间条件,提示方向须与用户当前朝向一致。不得在用户无法确认现实落点时要求位移或跳跃。背向固定屏幕时,只有在真实空间可感知且关键状态有有效替代通道时才可继续;头显场景按透视和空间能力判断,不得套用“面向电视”的假设。
设计应用把位移方向限定在用户面向与侧向;需要"后退"的内容改为"面向另一侧前进"。
验证示例
- 用户侧:在布置了家具的真实居家环境中走查全部含位移的内容,记录每次接近障碍物的情况。
- 实现侧:清点全部含位移与朝向变化的动作,逐项标注其方向相对用户视野的关系。
反例做不到——躲避动作要求用户快速向后跳;做过头——完全禁止任何位移,内容退化成原地动作的集合。
M6-4在场他人不被当作玩家必须
一句话:路过的人不接管判定,也不被默默留存。
适用采集范围可能覆盖非玩家的产品。
规则系统必须明确当前判定所依据的主体,并分别定义七件事:支持人数、加入候选的规则、主体的确认方式、保持条件、丢失时的行为、转移的触发条件、恢复前的核对。"被检测到"不等于"已决定加入"——未经确认的人不进入主体候选,其身体计数不被归属。先到顺序只能用于在已主动加入者之间排序候选;原主体丢失后不得重新计算"首个进入者"而自动接管,转移须满足已声明的显式触发条件。禁止因另一人更靠近、更清晰或先被检测到而自动转移主体。非主体人员的动作不得影响判定结果,其可识别信息不得在无明确依据的情况下留存。多人游玩场景中,每位玩家的判定主体必须各自明确。
边界条件本条不要求产品支持多人;声明单人使用的产品,只需保证第二人进入采集范围时不发生主体转移或判定污染即可满足。
设计应用主体丢失(玩家被遮挡或短暂离开)时的行为需要预先定义——暂停并等待,而不是切换到画面中的另一个人。
验证示例
- 用户侧:玩家正在进行动作时让第二人从其身后走过,观察判定是否被劫持。
- 实现侧:检查主体切换是否作为事件被记录;检查非主体的骨骼数据是否进入留存路径。
反例做不到——家人走过画面,虚拟形象突然开始跟着家人动;做过头——要求每次开始前做人脸识别登录。
M6-5采集状态可见必须
一句话:摄像头什么时候在拍,用户能知道,且关不掉这个指示。
适用使用摄像头、深度传感器或其他环境感知设备的产品。
规则传感器处于采集状态时,必须有对在场人员可感知的指示,该指示不得被产品配置关闭。产品必须声明采集数据的处理位置(设备本地或外部)、留存范围与留存期限。原始图像与深度数据若承诺不离开设备,该承诺必须可被核验且不得由运行配置静默关闭;若提供外部处理模式,必须分别说明用途、接收方与范围,获得明确且可撤回的同意。模式切换不追认既往外发,也不扩大已采集记录的原用途。
依据与参考体感游戏的采集范围可能包含家庭起居空间、身体影像与同住者。采集指示服务于所有在场人员;是否保存原始影像不能替代对当前采集事实的告知。
设计应用优先利用真实反映采集状态的硬件指示或系统指示;物理遮挡盖是阻止光学采集的控制方式,不是采集中指示的替代品。暂停、结算和后台分别明确仍在采集什么。
验证示例
- 用户侧:询问同住者是否知道该设备何时在采集。
- 实现侧:检查采集指示是否可被任何配置项或内容状态关闭;核验声明的本地处理承诺。
反例做不到——摄像头常开,无任何指示,用户不知道结算界面等待时仍在采集;做过头——把采集指示做成占据屏幕四分之一的持续警告条。
3.7 M7 进程与身体数据
体感游戏与用户的关系以周和月计,不以会话计。这个时间尺度上出现的东西——连续天数、成就、体重曲线、排行榜——既是这类产品最有效的动机机制,也是它最容易造成伤害的地方:这些机制作用的对象是用户对自己身体的认知。本原则管的是跨会话的推进与关于身体的记录。
M7-1中断不惩罚必须
一句话:连续天数不得成为带伤、带病继续的压力。
适用提供连续记录、日常目标、限时活动或社交比较机制的产品。
规则产品的连续性与激励机制禁止使中断产生不可恢复的损失。若产品提供连续记录,必须同时提供不要求用户运动即可维持的方式(休息日、补记、暂停),且该方式的获取不得要求付费或额外运动。产品禁止使用倒计时施压、损失框架表述或社交比较,诱导用户在身体不适、疾病或伤病状态下继续运动。
边界条件本条不禁止连续记录本身——它是有效的动机机制。禁止的是让中断的代价大到足以改变用户对身体信号的反应。
依据与参考这是本规范中商业目标与用户利益正面相撞的一条。常用于提高留存的机制(连续性、损失厌恶、社交比较)与保护用户身体的基本做法(生病、受伤时休息)在此冲突;本段不主张这些机制在留存上的相对有效性排序,那不在本规范已核验的证据范围内。本条把这个冲突写成硬约束而不是权衡建议,是因为冲突的代价由用户的身体承担而不是由产品承担。
设计应用把"运动记录"与"参与记录"分开——用户打开产品、做了拉伸、或只是记录了休息,都可以维持参与连续性,而运动量单独统计。
验证示例
- 用户侧:让用户模拟连续使用二十天后中断一天,记录其看到的全部文案与状态变化。
- 实现侧:清点全部因中断触发的状态变更与推送,逐项确认其框架表述。
反例做不到——发烧那天收到"你的 47 天连续记录将在 3 小时后中断";做过头——完全取消任何连续性机制,产品失去日常使用的动机结构。
M7-2进程反映真实活动必须
一句话:完成度、消耗和成就对应真实发生的运动。
适用向用户呈现累计进度、成就或运动量统计的产品。
规则产品必须分别记录游戏进程、经有效依据确认的身体活动与估算或用户补记的活动。按键辅助、跳过、参与休息日可以推进其规则允许的游戏进程,但不得计成原动作的次数、运动时长或消耗。暂时未观测不得计入动作达标率的分母,也不得抹掉已确认活动;估算或补记必须保留来源标记。排行榜、成就与趋势比较必须绑定相应统计口径,输入方式、判据定义或校准变化导致不可比时说明或分段。
设计应用把"课程完成度"与"实际运动量"作为两个字段分别呈现——用户可以完成课程但只做了一半动作,这两件事都是真的,混成一个数字则两个都不真。
验证示例
- 用户侧:让用户跳过一半动作完成一段内容,检查统计呈现是否反映这一事实。
- 实现侧:检查统计口径中是否包含未观测状态的动作。
反例做不到——用户站着不动看完整段课程,系统记录"完成 20 分钟运动,消耗 180 千卡";做过头——任何一次未被识别的动作都导致整段内容判为未完成。
M7-3身体数据可见可控必须
一句话:记了什么、留多久、能不能删,用户说了算。
适用记录用户身体测量、生理指标或运动记录的产品。
规则产品必须使用户可以查看产品保存了哪些关于其身体的数据、各自的保留期限,并可以逐项更正、删除与停止继续记录。身体测量项(身高、体重、体脂、身体比例、肢体长度)、生理指标(心率及其衍生值)与运动记录必须分别可控,不得只提供整体的删除全部账号数据一个选项。删除必须实际生效于用于个性化与推荐的数据副本,不得仅从展示界面移除。
边界条件产品可以声明某些数据为核心功能所必需(例如用于 M2-3 归一化判定的身体比例);此时必须说明停止记录后的功能影响,而不得以功能必需为由拒绝提供删除。
设计应用把身体数据与游戏数据在存储与界面上分离,使前者可以整体删除而不影响后者。
验证示例
- 用户侧:让用户尝试删除历史体重记录,检查删除后的推荐与个性化内容是否仍反映已删除的数据。
- 实现侧:追踪一条被删除的身体数据在所有下游副本中的处置。
反例做不到——体重数据一旦录入无法删除,只能注销账号;做过头——每次记录都要求逐项授权,用户在运动前先过一遍同意流程。
M7-4身体数据不默认对外必须
一句话:体重、心率、体型不进公开排行和默认分享。
适用提供社交、排行、分享或多人功能的产品。
规则身体测量项、生理指标和身体影像(含录像、姿势截图与体型映射)禁止默认对外可见。产品须明确分享对象、字段与可撤回范围,取得用户的明确选择;撤回后停止后续传播,并处理产品控制的公开入口和副本。对无法控制的第三方下载、截图或转发,不承诺全部追回;在分享前说明限制,并提供撤下或删除请求路径。多人画面默认最少披露,不因启用适配而公开其身体限制。
设计应用优先选择用户愿意公开的游戏进程指标;次数、参与天数和游戏分数仍可能透露行为信息,不能因不是体重就默认可公开。
验证示例
- 用户侧:新用户完成首次会话后,清点其他用户实际可见的全部信息。
- 实现侧:清点全部对外可见字段,逐项确认其默认值与同意状态。
反例做不到——好友榜默认显示每个人的体重变化曲线;做过头——完全禁止任何分享,用户无法与一起锻炼的人互动。
M7-5不使用体型羞辱式激励必须
一句话:不靠贬低身体、制造焦虑来提高留存。
适用所有向用户呈现激励、提醒或评价性内容的产品。
规则产品的激励文案、推送、成就命名与视觉表现,禁止以用户的体型、体重、身体外观或与他人身体的比较作为动机来源,禁止使用暗示当前身体状态不可接受的表述。虚拟形象的体型映射禁止被用作惩罚或奖励机制。产品禁止在未经用户设定的情况下呈现体重或体型目标(见 M7-6)。
边界条件本条不禁止用户自行设定的与身体相关的目标及其进度呈现;禁止的是由产品发起的、以身体为对象的负面表述。
依据与参考这条与 M3-2 处理的是同一类伤害的两个来源:M3-2 管的是判定失败的归因表述(技术缺陷被说成身体缺陷),M7-5 管的是激励机制的表述(身体本身被当作需要修正的问题)。两者分列,是因为一个发生在动作判定的瞬间,一个发生在跨会话的动机设计里,且通常由不同的团队产出。
设计应用把动机来源建立在能力增长、参与本身与内容进展上,而不是身体外观的变化。
验证示例
- 用户侧:清点用户在三十天内收到的全部推送与激励文案,逐条标注其动机来源。
- 实现侧:审查文案库与推送模板,检查是否存在以身体状态为触发条件的负面表述。
反例做不到——三天没运动后推送"你的努力正在白费"配一张体型对比图;做过头——所有反馈都回避身体话题,一个健身产品无法讨论用户的实际训练进展。
M7-6目标由用户设定应当
一句话:不默认所有人都想减重。
适用提供目标设定或个性化推荐的产品。
规则产品应当让用户在娱乐、保持活动、提升表现或自行设定的身体目标之间选择,并使该选择实际影响内容推荐与进度呈现。康复或医疗目标须处于相应专项支持范围内,不得仅靠一个选项声明具备该能力。不得在用户未选择的情况下默认采用体重相关目标,也不得因用户的身体测量值而自动指派目标。
设计应用初次设置时把目标选择放在身体数据录入之前——顺序本身传达了"目标由你定,数据用来服务这个目标"。
验证示例
- 用户侧:以不同身体数据完成初次设置,检查系统默认呈现的目标是否相同。
- 实现侧:检查目标字段是否有由身体测量值推导的默认逻辑。
反例做不到——录入身高体重后系统自动设定"减重 8 公斤"并据此推荐内容;做过头——把目标设定做成十二道题的问卷,用户在开始运动前先答题五分钟。
M7-7年龄与初始能力分别适配必须
一句话:按年龄与能力选择起点,不把游玩天数当身体能力证明。
适用可能被未成年人使用,或对新用户无既往运动数据的产品。
规则产品必须分别定义年龄适配与初始能力适配,记录依据、可进入内容、初始负荷和调整条件。对能力未知的新用户提供可低负荷试用、手动调节的起点;对已知未成年人采用适龄内容和适用的平台或家长控制,不直接套用成人阈值。禁止仅凭登录天数、累计分数或付费解锁推断其可以提高负荷。默认不记录非必需身体测量项,不预设体重目标;必要的瞬时测量与长期留存分别说明。已经生效的硬限制不得由普通难度设置或单次确认绕过。
边界条件“适龄”不等于所有未成年人都应比成人运动更少。WHO 的年龄分组建议描述公共健康活动目标,不是单款游戏的时长上限。本条不强制新采集年龄或身体数据;可沿用平台年龄段、家长控制及用户主动提供的信息,未知时采用已验证的通用起点并说明范围。
设计应用把年龄适用范围、个人起始负荷和硬限制做成不同配置。用户可选择适合自己的起点;需要提升高负荷内容权限时按既定评估条件核验,不能以“玩满七天”代替能力证据。
验证示例
- 用户侧:以不同年龄信息、经验和能力未知状态进入内容,检查起点、调整路径与适用范围是否相符。
- 实现侧:检查强度上限是否存在可被单次操作放开的配置路径。
反例做不到——新用户第一次打开就能进入最高强度内容并连续两小时;做过头——所有新用户被锁在最低强度两周,有运动基础的人立刻流失。
4. 术语和定义
| 术语 | 本规范中的含义 |
|---|---|
| 体感游戏 | 以用户身体动作作为主要游玩输入的交互产品;运动负荷是否为核心价值取决于具体内容。传感方案不限(光学骨骼、惯性、压力、可穿戴或其混合) |
| 会话 | 一次可暂停并恢复的运动活动单元,从进入内容到明确结束或按已声明期限失效;中止可仅暂停。与账号会话、应用前后台状态均非同一概念 |
| 目标强度 | 产品为某段内容显式声明的生理负荷区间,锚定在公开量表上(MET、最大心率百分比、心率储备百分比、主观疲劳量表) |
| 负荷曲线 | 单次会话内负荷随时间的分布,包含心肺负荷与对精度、平衡、关节的要求两个维度(见 M1-3) |
| 疲劳敏感度 | 一个动作的执行质量与安全性受疲劳影响的程度。平衡、落地、爆发等是评估因素,结论取决于姿势、负荷、支撑及适用人群 |
| 必经路径 | 不使用替代动作即无法完成该段内容的动作集合。替代路径的要求见 M2-2 |
| 替代路径 | 覆盖坐姿、无冲击等参与需求的动作或非体感路径;保留内容访问,实际活动量单独计量 |
| 判定 | 系统对一次动作是否达标作出的裁决。其取值域必须包含"未观测",与"未达标"分离(见 M3-1) |
| 未观测 | 系统未能有效获得该次动作数据的状态(遮挡、超出范围、器材失效、追踪丢失)。不计入用户动作表现评分分母,但计入系统观测覆盖与故障统计 |
| 归因 | 判定失败被表述为由什么原因造成。本规范禁止归因指向用户的身体能力(见 M3-2) |
| 判定偏置 | 在漏判与误判之间的取舍方向。按动作的安全相关性分档,不取全局单值(见 M3-6) |
| 判定窗口 | 节奏或计时类判定所接受的时间范围。必须以时间单位定义并保持稳定(见 M4-2) |
| 即时中止 | 使系统对用户的身体要求立刻停止的操作。不等于结束会话,可以进入暂停(见 M5-1) |
| 降档 | 降低后续内容强度的操作。在运动中或一次中止后的当前会话内可达,在下一项身体要求前生效(见 M5-4) |
| 有效活动区域 | 传感有效范围、内容活动范围与已确认现实空间的适用交集;确认有条件且会失效,不表示自动检测了全部危险(见 M6-2) |
| 判定主体 | 当前判定所依据的人。其建立、保持与转移必须有显式条件(见 M6-4) |
| 身体测量项 | 产品保存的关于用户身体尺寸与构成的数据(身高、体重、体脂、身体比例、肢体长度)。与生理指标、运动记录分别可控(见 M7-3) |
| 生理指标 | 心率及其衍生值、估算能量消耗等反映当前身体状态的数据。必须区分实测与估算(见 M1-5) |
| 连续性机制 | 连续天数、日常目标、限时活动等以中断为代价的动机机制。禁止使中断产生不可恢复的损失(见 M7-1) |
附录 A:验证与验收
A.1 分开验证文档、机制与用户理解
每项适用要求分别检查:决定是否完整,机制是否实际执行,用户是否理解且能操作。配置完整不能证明停止已生效,模拟测试通过也不能证明运动中的控制入口可达。未做的测试写“待验证”,不计为通过。
最小验收记录包含:规则及独立义务、内容与设备、适用人群和身体条件、配置快照、前置条件、触发事件、预期行为、实际证据、样本量与分母、门槛和理由、结论、责任人及复核触发。数值门槛在测试前确定,不能测试后选取有利值。
A.2 故障注入与完整流程
对涉及身体安全、识别可靠性与环境条件的规则,采用可控故障注入:优先以录制数据回放、模拟传感事件或测试桩制造条件。禁止为测试让参与者真的超量运动、诱发疼痛或接近碰撞;涉及动作的用户研究应在适用人群、可随时退出的受控条件下开展。写不出这类测试的候选规则不应进入规范。下表是示例子集而非穷尽清单。
| 注入情境 | 主要检查什么 | 对应规则 |
|---|---|---|
| 在已评估负荷范围内验证内容强度 | 按所选量表核对主观用力程度或有效生理数据;不强制采集心率 | M1-1、M1-5 |
| 模拟计数到达建议门槛与硬限制 | 前者提示可采纳;后者不能继续超限内容,同主体重进不清零 | M1-2 |
| 用已标注回放和受控低风险动作比较会话各阶段 | 后段完成质量衰减;高风险动作在时间轴上的位置;该内容对"疲劳敏感因素、阶段判别与恢复依据"的定义是否可查 | M1-3 |
| 以已标注回放注入遮挡,再单独变更判据定义 | 两者产生的指标变化可被分别归因,不混为同一结论 | M3-1、M3-2 |
| 让系统自动上调强度一档 | 用户是否察觉、能否当场否决、手动设定是否被覆盖 | M1-4 |
| 让有明确身体限制的用户在进入前判断内容是否适合 | 判断准确率 | M2-1 |
| 坐姿用户完整走完一段站姿内容 | 进程、成就与反馈是否与站姿用户可比 | M2-2 |
| 身高分布两端与有肢体差异的用户执行同一动作 | 分组的有效观测覆盖、误接纳与误拒绝(各带分母与参考标注方法);提高拒判率不得被汇总为"动作能力进步" | M2-3、M3-2 |
| 运动中途拔掉或遮挡器材 | 是否与识别失败走同一错误路径;已完成计数是否保住 | M2-4、M5-3 |
| 制造遮挡后让用户执行标准动作 | 反馈是"没看见"还是"没做到" | M3-1 |
| 在可退出的受控研究中比较失败反馈 | 是否理解系统限制、知道下一步;不安排持续遭受已知偏差的使用 | M3-2 |
| 回放已标注的非达标动作与低质量传感样本 | 前者按有效判据裁决;后者进入未观测,不要求用户不断加力 | M3-1、M3-6 |
| 人为注入递增延迟 | 出现过冲与重复执行的阈值;是否降级为离散反馈 | M4-1 |
| 切换到蓝牙音频输出后进行节奏判定 | 判定偏移分布;校准入口是否被主动提示 | M4-2 |
| 静音条件与遮挡屏幕条件下各完整走一次会话 | 四类关键状态是否仍可分辨 | M4-3 |
| 在声明的正常收听范围内模拟最不利混音条件 | 察觉率与反应时间 | M4-5 |
| 在动画中、倒计时中、动作组中途要求尽快停止 | 从意图到实际停止的时间 | M5-1 |
| 用户中途主动停止 | 全部界面文案与状态变化中是否含惩罚性表述 | M5-2、M7-1 |
| 完成一组高强度动作后立即操作控制入口 | 首次成功率 | M5-5 |
| 在小于声明尺寸的空间内启动含位移的内容 | 是否被提示 | M6-1 |
| 模拟逐步接近和越过已声明边界 | 可检测时是否及时反馈;不可检测时有无虚构实时安全状态 | M6-2、M3-1 |
| 以模拟障碍和空间轨迹回放检查位移内容 | 扫掠范围、朝向转换和提示方向正确;不让参与者接近真实碰撞 | M6-3 |
| 玩家进行动作时让第二人从其身后走过 | 判定是否被劫持;非主体数据是否留存 | M6-4 |
| 模拟连续使用二十天后中断一天 | 全部文案与状态变化;恢复方式的获取成本 | M7-1 |
| 站着不动看完整段内容 | 统计是否计入未发生的活动 | M7-2 |
| 删除历史身体数据后检查推荐 | 删除是否生效于个性化副本 | M7-3 |
| 新用户完成首次会话后清点其他用户可见信息 | 身体数据是否默认对外 | M7-4 |
| 清点三十天内收到的全部推送与激励文案 | 动机来源是否指向身体外观 | M7-5 |
| 新账号、已知年龄段与能力未知配置进入内容 | 初始策略有依据;登录天数不会自动取消硬限制 | M7-7 |
| 相同原始数据切换判据定义、输入方式或标定 | 统计可追溯;不可比的历史不伪装成身体退步 | M3-4、M7-2 |
| 生成完整腿部,但真实脚部无有效输入 | 只裁决有验证依据的属性,不冒充脚部实测 | M3-1 |
| 心率失联、读数过期或质量不足 | 停止依赖它升档,旧值不显示为当前正常 | M1-4、M1-5 |
| 半次动作中断后恢复,重放最后一条完成事件 | 不虚记半次完成、不重复计数、不自动开始运动 | M5-3、M7-2 |
| 多人混合能力参与并变更房主设置 | 个人适配保持、各自有贡献机会、公共画面不披露身体原因 | M2-7 |
| 关闭镜头摇晃或降低沉浸 | 关键提示仍在,平台追踪与退出行为正常 | M4-7 |
| 主动作链路断开后启动、设置与退出 | 非体感控制可达,停止不依赖同一失效链路 | M5-1、M5-6 |
| 身体分享被撤回,第三方已下载 | 产品可控副本被处理,无法追回范围不虚报删除成功 | M7-4 |
| 一次完整会话的操作路径计时(进入、开始、降档、停止) | 是否被确认、免责声明与问卷拖慢 | M1-1、M5-1、M6-1 |
最后一行不能省:否则产品可能通过全部安全测试,却啰嗦到没人愿意打开。除故障注入外,还应分别验证分类(不同评审者能否对具体要求独立得出相近归属)与用户价值(用户是否真的更愿意继续、动作质量是否真的提高),三者不能互相替代。还应当用完整任务走查检验覆盖面——沿"打开、选内容、确认场地、标定、运动、被打断、恢复、停止、看结果、第二天再来"过一个真实案例,检查是否存在重要设计要求无处归属。
A.3 判定质量的分母与证据
以测试前定义的动作机会为统计单元,暂停且未要求动作的时段不混入该分母。分组至少覆盖声明支持的人群、身体条件、适配路径、设备与观测条件。参考标注须独立于被测判定器,并记录歧义和排除理由。
| 指标 | 计算口径 | 解读限制 |
|---|---|---|
| 有效观测覆盖 | 有充分依据可裁决的动作机会/全部应判动作机会 | 同时列未观测、无判定能力及其原因,避免只报可识别样本 |
| 误接纳率 | 被系统判达标但参考标注不达标的次数/可裁决且参考标注不达标的次数 | 分母为零记“不适用”,不写 0% |
| 误拒绝率 | 被系统判未达标但参考标注达标的次数/可裁决且参考标注达标的次数 | 与覆盖率并列,不能排除困难样本后声称普遍可靠 |
| 用户达标率 | 达标次数/有效裁决次数 | 这是动作表现统计,不等于系统准确率或健康水平 |
| 控制可达性 | 成功完成停止或降档的任务数/有效操作任务数;另报耗时分布 | 区分用户发现与触发耗时、系统触发后生效耗时 |
所有比率同时报告计数、样本覆盖和不确定性。样本不足时缩小结论范围;不同人群运动表现无需相同,判定证据必须支持各自声明的适配范围。
A.4 边界组合与交付结论
| 用例 | 预期结果 | 关联规则 |
|---|---|---|
| 同一完成事件重复回传、跨午夜迟到、切换时区 | 去重;按声明窗口唯一归属,不丢失累计账目 | M1-2、M7-2 |
| 玩家停止后房主继续发动作指令,断网后旧事件重放 | 本人身体要求保持停止,其他人按共同规则继续;不误记缺席活动 | M2-7、M5-1~M5-3 |
| 暂停后调整朝向或更换器材 | 仅受影响的空间、标定和时序条件失效;未确认前不自动开始 | M4-2、M5-3、M6-1 |
| 坐姿且静音,触觉器材不可用 | 改用能持续感知状态的适配内容,保留必要控制 | M2-2、M4-3、M5-6 |
| 镜像示范、语音“左侧”与玩家左侧核对 | 判据指向同一身体侧;朝向变化后仍一致 | M2-6、M6-3 |
| 多个命中特效与节拍闪光同时出现 | 对合成输出完成光敏性检查;单个素材通过不替代叠加检查 | M4-7 |
| 配置引用缺失、限制交集为空、输入来源不支持判据 | 阻止受影响内容启动,提供经验证的适配路径;不猜测阈值 | M1、M2-5、M3-1 |
| 恢复期限前后进入,或先删除身体档案再恢复 | 按期限说明可恢复成果;失效依赖重新获取或切换路径,不恢复已删除数据 | M5-3、M7-3 |
结论使用“通过/受限可用/不通过/不适用/待验证”,附适用范围与证据。受限可用必须由实际内容范围和配置约束实现,不能只是免责声明。硬限制被绕过、停止后继续追加身体要求、主体串绑、重复或虚假运动量、无依据裁决以及身体数据违背已声明用途,均不能被平均满意度或总体通过率抵消。
内容、判据、传感方案、显示或音频路径、适用人群以及数据用途改变时,复核受影响的证据。真实故障回流为可重放用例;只收集排障所需最少数据。即使所有文档检查通过,也须分别完成机制测试和目标用户走查,才能作出产品结论。
附录 B:论证边界与适用范围
B.1 约束词的判据
标「必须」的唯一依据是必要性:缺了这条要求,产品对用户的某条承诺会在可预见的情境下失效。判断一条规则用三类论证:
| 论证类型 | 回答的问题 | 决定什么 |
|---|---|---|
| 必要性推导 | 缺了它,哪条承诺在什么情境下失效 | 是否入选、是否标「必须」——强制性的唯一来源 |
| 失败记录 | 问题在什么条件下真实发生过 | 增强论据、校准适用条件 |
| 实现参考 | 有哪些已被验证的做法 | 证明可行、提供示例,不决定强制性 |
只有必要性论证成立的规则才标「必须」;只满足质量或效率的降为「应当」或逐出规范。具体识别算法、传感器选型、动作库内容与运动处方不进入规范。
身体与心理风险仍按同一套判据判断。M2-5、M3-2、M5-2、M7-1、M7-5 关注的后果包括身体或心理风险;这不是另一套约束词体系。所有「必须/禁止」均不得仅以商业指标为由偏离,所有来源事实都须与本项目提出的规范性选择分开。
B.2 适用范围与已知弱处
本规范的适用范围是:以用户的大幅身体运动作为主要输入通道的交互式娱乐与健身产品,涵盖家用主机、PC、移动设备、头显与专用器材场景。它不覆盖:动作识别算法与传感器工程、运动处方与训练计划设计、康复与医疗用途的运动系统、无障碍专项评估、健康数据的法域合规、未成年人保护的法定要求、竞技体育的规则与判罚。M2-5 要求存在一份高风险动作清单,但不给出清单内容——那属于运动医学专项。
如实说明四点弱处:
- 没有充分证据支持的跨产品通用安全阈值。量表可帮助描述强度,不能给出每人的安全上限。各产品必须声明并验证自己的数值、适用条件与统计口径。
- 产品事故与长期结果证据仍不足。官方安全说明与所列实证论文不足以推导伤害发生率、最常见伤害种类或长期效果;失败反例是设计情境,不自动等于真实事故复盘。
- M3 有相关依据,但直接归因证据有限。平台追踪有效性、运动游戏的传感模糊性和游戏平衡对自尊的影响均有资料;失败文案如何改变身体自我认知仍待验证。未找到一条完全同文的上位条款,不等于该原则没有相关先例。
- 规则的分类与强度尚待外部评审。M1-3 与 M3-4、M5-2 与 M7-1、M3-2 与 M7-5 的边界仍应通过独立分类检验。M2-7 的对等性指进入、配置和贡献机会,不保证相同分数或胜率。
B.3 尚未独立成条的方向
- 触觉可感知范围由 M4-3 承载,字段须描述实际佩戴与接触条件。
- 地面材质与动态障碍自动检测按 M6-1、M6-2 的真实能力声明,不要求所有产品具有该能力。
- 长期训练效果宣称需补充直接效果证据与适用评估,不能只凭游戏记录证明。
- 康复、医疗用途及未成年人保护的法定要求仍由专项负责,本规范不提供法域合规结论。
外部来源对照见 reference.md。
实施验收场景
以下场景把已有条款转成可复核的验收输入,不另设通用性能阈值。按产品适用能力选取,补充真实设备、用户、输入序列和证据;不适用记录原因,未执行不得记为通过。
| 条款 | 测试输入与异常 | 预期行为与失败判据 |
|---|---|---|
| M2-2 | 站姿动作切换坐姿替代并完成同一关卡。 | 分别显示游戏完成与实际动作记录,不伪造相同能耗。 |
| M3-1 | 一侧身体短时不被观测。 | 不将未观测计为玩家失败,同时计入系统覆盖统计。 |
| M4-2 | 帧率波动、暂停音频并在跨午夜时恢复。 | 节奏不随帧率漂移,活动计数防重且按声明窗口归属。 |
每个场景分别核对配置的有效值、执行记录与用户可理解的结果。保留版本、目标、事件时点、失败范围和恢复结果;外部结果未知不填作成功或失败。
使用说明
本字典把体感游戏产品必须作出的交互决策写成可配置、可解析、可交付给工程的字段。它配套《体感游戏交互设计规范》(同目录 Design-Guidelines.md,下称"规范"):规范规定行为性质,本字典规定这些性质在产品中被表达为哪些具体决定。配套七原则、44 条规则;来源见 reference.md。
本字典与视觉 Design Token 是两类东西。颜色、字号、间距描述的是渲染结果;这里的字段描述的是身体契约——让用户累到什么程度、要求他做什么动作、什么算做到、判不出时怎么说、他想停时怎么停。DTCG 提供设计 Token 交换格式,包含数值、时长等基础类型,但没有身体负荷策略、判据有效性等完整领域语义。基础值可映射,策略对象仍需产品 Schema 与验证器;扩展元数据不等于通用工具能执行这些策略。它是社区组报告,不是 W3C 推荐标准。参见 DTCG 格式说明。
本字典也不是训练计划。它不规定做几组、几次、练什么肌群——那是内容设计与运动处方的范围。它规定的是:这些内容在被排进产品之前,必须先有哪些决定被明确地作出。
十类速览
| 类别 | 前缀 | 必选 | 可选 | 合计 | 负责什么 |
|---|---|---|---|---|---|
| 负荷 | body.load | 4 | 5 | 9 | 让用户累到什么程度、最多多少、什么时候必须歇 |
| 动作集 | body.move | 4 | 5 | 9 | 要求做什么动作、谁做不了、有没有替代 |
| 身体档案 | body.profile | 3 | 2 | 5 | 判定依据身体的哪些量、怎么标定、能不能不给 |
| 判定 | body.judgment | 4 | 3 | 7 | 什么算做到、判不出怎么办、失败怎么说 |
| 时序 | body.timing | 3 | 2 | 5 | 多快算跟手、判定窗口多宽、以什么为时基 |
| 反馈 | body.feedback | 3 | 5 | 8 | 哪些状态走哪条通道、运动中还读得到什么 |
| 控制 | body.control | 4 | 2 | 6 | 想停怎么停、想降档怎么降、中断了怎么回来 |
| 场地 | body.space | 3 | 2 | 5 | 要多大地方、边界怎么给、旁边的人怎么处置 |
| 进程 | body.progression | 2 | 5 | 7 | 跨天怎么推进、中断的代价、目标由谁定 |
| 身体数据 | body.record | 3 | 3 | 6 | 记什么身体数据、留多久、给谁看、能不能删 |
共 67 项:33 项必选、34 项可选。必选按适用性判定;可选能力启用后的必要依赖仍须完整。
必选与可选
| 级别 | 含义 | 配置方式 |
|---|---|---|
| 必选 | 适用的产品或内容类型必须明确的基础决策。 | 可以继承产品预设,也可以用合法的关闭、空范围或单一取值表达限制;不要求用户逐项填写。 |
| 可选 | 仅在特定能力或差异化需求下采用的参数。 | 无对应能力时不配置;启用能力后,必要依赖必须有明确值或可执行的继承规则(见第十一节)。 |
数值约定
本字典不提供任何推荐数值。强度上限、单次时长、延迟预算、判定窗口、活动空间尺寸都强依赖传感方案、内容类型、用户群体与场地条件,现有依据不足以支持一套跨产品通用值。字段规定的是"必须有一个可解析的值"以及该值的合法形态与约束关系,具体数字由各产品自行确定并验证(验证方法见规范附录 A)。
量表锚点另行明确:有氧内容的 body.load.target.intensity 必须锚定在公开量表上(MET、最大心率百分比、心率储备百分比、主观用力程度量表);非有氧负荷另列适用依据。这不是本字典给出的数值,而是要求产品的数值必须可被外部解释——否则强度声明退化为产品自说自话的等级。
共用值约定(各字段只引用其所需的部分):
- 数值:一律为有限数;区间按"下界 ≤ 上界"书写,并声明端点是否包含。
- 心率:绝对心率用 bpm;百分比心率必须附基准与其取得方法(最大心率百分比、心率储备百分比等)。本字典不要求采集心率。
- 时长:带单位;每一处时长另写起算事件与是否续期。
- 距离、角度与面积:带单位与参考坐标系。
- 能量:带单位并标注为估算。
- 无值语义:区分"未配置"、"不适用(附理由)"与"运行时未知",三者不互相代替。
- 时区与配置来源来自产品预设,不要求用户在运动中填写。
集合不默认全选。多个硬限制同时生效时取共同允许的范围,不按"后配置覆盖前配置"放宽保护。
比例和时间细则:概率与置信度明确采用 0~1 还是 0~100,不允许混用;置信度不自动等于动作质量概率。单调时钟用于经过时长与动作时序,民用时钟用于日周窗口;系统时钟回拨不得延长身体要求或重复计数。日周窗口采用 [起点, 终点),滚动窗口必须显式声明端点。重复活动按事件身份去重,迟到记录按声明口径归属。
配置状态:resolved 表示值或引用已解析;not_applicable 附适用性理由;disabled 仅用于字段允许关闭的能力;unresolved 表示缺值、坏引用或冲突。必需项 unresolved 阻止受影响能力启动;不得把它解释成零、不限或关闭。运行时未知是另一种事实,不拿这些配置状态代替。
分档约定:负荷、身体条件与游戏挑战分别记录
负荷区分有氧相对或绝对强度、局部或关节负荷及风险前置条件。量表内可定义轻、中、高等产品标签,但须指向量表、人群与出处;“需前置评估”不是第四级有氧强度。力量、平衡和柔韧内容不以 MET 单独概括。
身体条件使用可组合的标签:坐姿、站姿、无跳跃冲击、单侧输入、上肢受限、使用辅助器具等。坐姿与无冲击可以同时成立;不能把这些交叉条件当作互斥档位。替代映射同时声明所需条件、提供的游戏访问和实际可统计活动。
游戏挑战另行定义技巧、节奏、记忆等维度;不得用一条“难度”配置同时静默改变身体负荷和动作判据。公开量表描述与用户的相对体验可能不同,冲突时提供手动调节与解释,不判断用户“应该没那么累”。
状态与对象的边界
| 对象 | 负责什么 | 关键边界 |
|---|---|---|
| 会话 | 一次运动过程的位置、计数、进程与强度设定 | 与账号会话、应用前后台状态不是同一件事;允许暂停,中断不结束会话(见规范 M5-3)。活动阶段、判定结果与结束原因分别记录,不合并为一个状态。 |
| 判定 | 系统对一次动作的裁决 | 取值域是类型约定(配置),某一次的判定结果是运行事实(数据)。取值域必须包含"未观测",与"未达标"分离;未观测与无判定能力不进入用户动作表现评分的分母,但必须计入系统观测覆盖与故障统计(见规范 M3-1) |
| 判定主体 | 当前判定所依据的人 | 与"画面里有几个人"不是同一件事;非主体的动作不影响判定(见规范 M6-4) |
| 有效活动区域 | 传感、内容与已确认现实空间的适用交集 | 按实际能力说明确认与检测边界;不以追踪正常承诺无障碍物(见规范 M6-2) |
| 身体测量项 | 产品保存的身体尺寸与构成数据 | 与生理指标、运动记录分别可控;用于判定归一化的部分可声明为功能必需,但仍须可删(见规范 M7-3) |
字段读取约定
每节前缀与表中的字段拼接为完整名称,例如 body.control 与 abort.max_latency 组成 body.control.abort.max_latency。十类统一使用 级别、设计决定、字段、类型与合法取值、适用条件与作用 五列。
必选仍受适用条件约束。不提供节奏判定时,可在适用性记录中标明相应项不适用;无数据留存时可配置空字段集和不留存。配置决定与运行事实分开:阈值、映射和策略属于本字典;采样时间、关节有效标记、判定事件和删除回执属于运行记录,不能用配置值证明已经发生。
字段不得把规范的设计示例擅自升级为新硬要求;固定底线以规范正文及其适用范围为准。所有继承项绑定来源和可核对的配置快照,定义变化后重新验证受影响的判据、统计和恢复路径。
一、负荷:让用户累到什么程度、最多多少、什么时候必须歇
前缀:body.load
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 目标负荷 | target.intensity | 结构:负荷维度 + 量表名称与出处 + 区间 + 绝对/相对口径 + 适用人群 + 获得方法与已知误差。无可信误差区间时标明未验证,不编造区间;有氧以外的负荷另列。 | 适用运动内容的负荷声明(M1-1);成人 MET 不直接用作儿童或个人安全阈值。 |
| 必选 | 单次管理阈值 | session.duration.max | 结构:带单位的正时长 + 建议门槛/硬限制 + 起止事件 + 是否计入休息 + 适用内容与来源。可按负荷分档。 | 运动会话的管理阈值(M1-2),字段名中的 max 不自动代表医学安全线。 |
| 必选 | 累计管理阈值 | cumulative.limits | 集合:指标、单位、门槛、建议/硬限制、主体范围、统计窗口、数据来源与来源覆盖范围。窗口可为日、周或滚动正时长,按依据确定;采用日或周窗口时必须声明时区与周起点,采用滚动窗口时必须声明端点是否包含。另须声明跨午夜会话如何分配(整段计入开始日、按时间切分,或其他已声明规则)与迟到记录的归属(按发生时间还是接收时间)。 | 防止同一主体切换内容或重进清零;不承诺掌握其他账号或产品之外的运动量(M1-2)。 |
| 必选 | 到达阈值行为 | on_limit.behavior | 按阈值映射:建议门槛可提示后继续/降档/恢复/结束;硬限制只允许不会继续超限内容的降档、恢复或停止方案。须含安全过渡与恢复条件。 | 硬限制不允许取“提示并继续”;停止身体要求不等于突然断电或卸载器材(M1-2、M5-1)。 |
| 可选 | 负荷曲线 | curve.profile | 结构:会话分段 + 各段负荷 + 动作疲劳敏感度及评估依据 + 必要恢复条件。后段高敏感要求须符合 M1-3,不能只靠动作类别推定。 | 编排会话负荷时必须明确;可继承经验证的课程结构。 |
| 可选 | 自适应模式 | adaptive.mode | 枚举:不自适应/基于表现/基于生理信号/混合。取非"不自适应"时,adaptive.range 与用户可感知的调整事件必须同时存在。 | 是否随用户表现或生理信号调整强度。生理信号存在滞后,不作为唯一依据。 |
| 可选 | 自适应范围 | adaptive.range | 结构:基准、上下界、最大变化步长、生效时点与允许输入。取值不得越过当前硬限制及用户接受的负荷范围。 | 启用自动调整时配置,用户锁定仍受安全下调约束(M1-4)。 |
| 可选 | 最短间歇 | rest.interval.min | 非负时长,按内容与负荷分档;零须显式给定,并附适用依据。被动休息与主动恢复分别记录。 | 重复动作组或跨日恢复适用时明确(M1-6)。 |
| 可选 | 生理信号有效性 | signal.validity | 结构:信号来源、采样时间口径、最大年龄、质量条件、异常与失联判断、允许滞后及处置。证据不足不据此升档;旧值标为失效。 | 生理信号用于显示或自适应时明确(M1-4、M1-5)。 |
边界:目标负荷描述内容要求;建议门槛与硬限制规定不同的运行行为,均不预测每个人的安全状态。自适应在用户接受的范围及硬限制内生效,不能借标签变化绕过边界。
二、动作集:要求做什么动作、谁做不了、有没有替代
前缀:body.move
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 身体条件标注 | catalog.body_conditions | 每个动作的条件集合:需要站立/需要位移/需要跳跃或落地/需要地面接触(跪、坐地、俯卧)/需要单侧负重/需要头部位置大幅变化/需要视线离屏。不接受以动作名称替代本标注。 | 让用户在进入前判断自己能否做到的依据,也是替代路径覆盖检查的输入(规范 M2-1)。 |
| 必选 | 替代路径覆盖 | alternative.coverage | 结构:必经动作 → 可组合身体条件 → 替代动作/非体感路径。每条路径声明适用条件、输入及可进入内容,覆盖坐姿和无冲击参与需求。 | 训练效果不能等同时须明确说明,并保留游戏访问或其他训练目标路径(M2-2)。 |
| 必选 | 路径认可与统计 | alternative.parity | 结构:内容访问、一般进程、动作专属成就、实际运动量分别映射。辅助路径保留访问与一般进程;运动量按真实输入来源计算。 | 对等访问不等于相同消耗、动作成绩或胜率(M2-2、M7-2)。 |
| 必选 | 条件风险排除 | risk.excluded_set | 风险规则集合:稳定标识、动作或组合引用、负荷、人群与能力、姿势与支撑、器材与环境、疲劳与准备条件、排除或替代行为、依据、评审者与评估记录。必需条件未知时不进入依赖路径;空集合须附覆盖范围与评估结论。 | 条件规则参与实际内容编排,不能以动作名称清单代替组合风险评估(M2-5)。 |
| 可选 | 准备活动要求 | warmup.required | 按内容分档:需要与否、依据、需要时的时长和重入条件。允许跳过时必须显式操作,且不绕过硬限制。 | 需要准备的内容启用后明确(M2-5);不是所有内容都采用同一热身。 |
| 可选 | 器材依赖 | equipment.required | 集合;每项含器材标识、是否必需、以及缺失/断连/电量耗尽/标定失效四种状态各自的行为。器材状态必须与判定失败走不同的错误路径。 | 依赖专用外设时配置。器材问题被呈现为"动作没做对"是本领域的高频失败(规范 M2-4)。 |
| 可选 | 示范重入 | demo.reentry | 枚举:会话内可重入/会话外可重入。后者是应当级偏离,须有理由、覆盖动作时序与要点的替代做法,并保留进度;不可重入不合法。 | 需要学习动作时明确,文字标签不能替代完整示范(M2-6)。 |
| 可选 | 多人适配策略 | multiplayer.adaptation | 每玩家配置范围、个人限制优先关系、贡献映射、计分和平衡说明、公开字段;实时多人另含个人停止时的共同时间轴、退出或替补、未完成部分结算、可重入边界。 | 共同游玩时明确;个人中止不依赖房主或网络确认,不公开身体原因(M2-7、M5-2、M5-3)。 |
| 可选 | 示范方向参照 | demo.orientation | 结构:玩家身体/镜像参照、左右侧与坐标映射、语音和判据的对应、朝向变化处理。 | 涉及左右与方向示范时明确;视觉镜像不能改变实际判定侧(M2-6、M6-3)。 |
边界:身体条件标注决定"谁做得了";替代路径决定"做不了的人还能不能玩";排除集决定"哪些条件下不得安排该动作或组合"。三者的对象不同,不能互相替代。
三、身体档案:判定依据身体的哪些量、怎么标定、能不能不给
前缀:body.profile
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 判定所用测量项 | measures.used | 字段清单 + 获得方式 + 瞬时使用或保存 + 判据依赖;无此类依赖可为空。不得以“用户档案”笼统代替具体字段。 | 仅描述判定依赖,不决定心率显示等其他功能的数据必要性(M2-3、M7-3)。 |
| 必选 | 判定适配方式 | normalization.mode | 枚举:按测量项/按标定基线/混合/有动作依据的固定判据。每项绑定人群、范围及验证;无姿态判定可记录不适用。 | 固定角度不是一概禁止;归一化也不是安全证明(M2-3)。 |
| 必选 | 重新标定触发 | recalibration.trigger | 集合:用户主动/判定质量持续下降/判定主体变更/距上次标定超过声明期限。判定依赖个人标定时必选,且必须包含「用户主动」;判定不依赖个人标定(采用经验证的固定判据)时记为不适用并写明该判据的依据。 | 用户感觉判定不准时的出口。无标定的系统记不适用是合格结论,不得为填满字段编造一次标定流程(M2-3)。 |
| 可选 | 可缺省测量项 | measures.optional | 集合 + 每项缺省时的降级行为。缺省行为不得是"判定按人群均值执行且不告知"。 | 允许用户不提供部分身体数据时配置。降级必须可感知。 |
| 可选 | 年龄相关数据默认 | minor.defaults | 结构:年龄信息来源、适用年龄段、功能必需项、默认不留存项、目标默认值。非必需身体测量默认不记录,不默认体重目标。 | 获得年龄信息或面向未成年人时配置;瞬时标定和长期档案分别决定(M7-7)。 |
边界:测量项与归一化方式决定判定对不同身体是否公平;重新标定决定用户在判定失准时有没有出路。本类声明判定的数据依赖;其他功能的数据必要性在 body.record.categories 中分别论证。
四、判定:什么算做到、判不出怎么办、失败怎么说
前缀:body.judgment
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 判定取值域 | outcome.domain | 集合,必须至少包含:达标/未达标/未观测/无判定能力。未观测与无判定能力不得进入用户动作表现评分的分母,但必须计入系统的有效观测覆盖与故障统计——否则观测覆盖下降会被误读为表现提升。四者必须有互相可区分的用户侧表达。 | 本字典最重要的单个字段。把"系统没看见"从"你没做到"里分出来(规范 M3-1)。 |
| 必选 | 判据属性 | criteria.attributes | 每动作的判据定义引用与属性集合:幅度/速度/保持时长/朝向/对称性/落点等;含单位、身体或空间参照、逻辑组合与完成事件定义。引用须可解析。 | 让用户知道本次哪项未达标;复合判据不得用一个有效属性冒充整体完成(M3-1、M3-3)。 |
| 必选 | 判据证据要求 | evidence.requirements | 每个属性绑定传感来源、必要部位、观测/推断/生成补全类别、质量与时效、适用人群、验证记录,以及部分有效和无效时的状态映射。 | 有身体判定时必须明确;完整虚拟形象不证明身体各部位已被实测(M3-1)。 |
| 必选 | 按后果选择判定策略 | bias.by_safety | 结构:动作判据、误判后果、有效输入条件、容错方向、连续拒判处置。安全判据不为通过率而放宽;证据不足不裁决用户未达标。 | 先验证能否裁决,再判断是否达标;连续拒判有暂停或替代出口(M3-6)。 |
| 可选 | 阈值自适应 | threshold.adaptive | 枚举:不自适应/自适应且对用户可见并可关闭。"自适应且不可见"不是合法取值。取自适应时 threshold.range 必须有效。 | 判定阈值是否随用户表现变化。静默调整可能使用户误解自身表现变化(规范 M3-4)。 |
| 可选 | 阈值调整范围 | threshold.range | 结构:基准判据引用、增量或倍率、上下界、端点、最大步长、生效点及允许输入。增量与基准同单位,倍率为无量纲比值;商业化与留存分层不得作为输入。 | 随表现调整时明确;不得修改已完成动作的历史裁决或放宽安全判据(M3-4、M3-6、M7-2)。 |
| 可选 | 归因词表 | feedback.attribution.vocabulary | 引用:失败反馈文案的可用词与禁用词清单,覆盖文本与语音。禁用词至少涵盖指向身体能力、体能水平、努力程度与身材的表述。 | 判定失败怎么说。发布前的归因审查以本词表为依据(规范 M3-2)。 |
边界:取值域决定判不出算什么;判据属性决定用户能不能改进;偏置决定错的时候往哪边错;归因词表决定这一切怎么说给用户听。这些字段由设计、工程与内容共同落实,不能用配置声明替代运行时证据。
五、时序:多快算跟手、判定窗口多宽、以什么为时基
前缀:body.timing
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 延迟预算 | latency.budget | 结构:按反馈链路分档的时长预算 + 起止事件 + 测量设备 + 时钟对齐 + 统计分位与超限比例。含采样、传输、推断、平滑及输出。 | 头部视角、身体跟随、离散判定和进度分开测量;不得只看平均值(M4-1)。 |
| 必选 | 超预算降级 | latency.degrade | 按链路映射:离散反馈/状态提示/暂停相关内容/平台支持的安全退出或透视。不得用陈旧姿态冒充跟随;不得冻结头部视角充当降级。 | 须匹配真实平台能力(M4-1、M4-7)。 |
| 必选 | 判定窗口 | judgment.window | 结构:时间窗口(早侧与晚侧分别给出,并声明是否对称;端点是否包含须写明)、动作事件定义(开始/目标时刻/完成)、输入时间戳来源与统一判定时基。 | 节奏或计时判定适用;无该能力可在适用性记录中标明(M4-2)。 |
| 可选 | 音频对齐基准 | audio.timebase | 枚举:音频时钟/与音频有已验证映射的单调时钟;同时声明对齐误差及漂移处理。禁止渲染帧计数。 | 含音乐同步判定时明确;非音乐计时不强制依赖音频时钟(M4-2)。 |
| 可选 | 时序校准 | calibration.offset | 结构:可调偏移范围、正负含义、触发条件、设备配置指纹、失效与重新核验条件。 | 所有节奏或计时判定均明确校准;音乐、显示或传感路径改变时重新核验,不能沿用失效校准(M4-2)。 |
边界:延迟预算管的是"跟不跟手",判定窗口管的是"算不算准",时基管的是"跟谁对齐"。三者独立配置:延迟合格不代表判定窗口稳定,判定窗口稳定不代表音画对齐。
六、反馈:哪些状态走哪条通道、运动中还读得到什么
前缀:body.feedback
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 关键状态通道分配 | state.channels | 映射:计入/有效区域/停止或调整/结束 × 视觉/听觉/触觉。各适用状态至少有可用的非视觉通道;记录感官能力、静音、噪声、佩戴条件及失效替代。 | 非视觉不可用时切换到可持续感知状态的等效内容路径;不能只写“有声音”(M4-3)。 |
| 必选 | 设计观看条件 | viewing.distance | 按呈现方式区分:现实屏幕填物理距离范围、单位及尺寸;头显填虚拟内容位置、角尺寸与视野条件。记录最不利可读条件与验证依据。 | 运动中阅读时适用;不把电视距离直接当头显尺寸依据(M4-4)。 |
| 必选 | 运动中必读集 | readable.set | 必须即时理解的项目集合、非负整数项数上限、同时出现或动作窗口口径、紧急状态优先关系。适用关键项目须被覆盖;超额说明应当延后。 | 集合外信息可存在,但不得抢占关键通道或造成误读(M4-4)。 |
| 可选 | 音频优先级 | audio.priority | 结构:提示分级、混音处理和独立音量控制。安全提示优先且可辨,不被音乐掩盖;音色不是唯一实现。 | 同时有音乐和提示时配置(M4-5)。 |
| 可选 | 连续反馈形态 | continuous.readout | 枚举:无/离散阶段/连续量。保持类与渐进类动作取"无"时须声明理由。 | 拉伸、蓄力、保持类动作的过程反馈。连续量正是这类动作的训练价值所在。 |
| 可选 | 触觉可感知条件 | haptic.range | 结构:器材接触或佩戴条件、强度范围、有效区域和失效检测;覆盖不了的活动条件另配替代通道。 | 触觉范围无需被人为限制为活动区域子集,关键是覆盖关系和失效兜底(M4-3)。 |
| 可选 | 画面运动与沉浸策略 | comfort.options | 结构:可关闭镜头效果、呈现模式、切换与退出入口、状态保留方式、平台边界和追踪中断响应。 | 含额外镜头运动或头显沉浸时必须明确(M4-7)。 |
| 可选 | 光敏性检查策略 | photosensitivity.policy | 结构:测试方法引用、显示条件、合成场景覆盖、验收记录引用、失败时修正或停用行为。禁止以警告或用户开关代替检查。 | 有游戏画面时明确;最终合成结果、节拍和命中特效叠加分别覆盖,不能只检查素材(M4-7)。 |
边界:通道分配决定状态在什么条件下可感知;观看距离与必读集决定视觉通道能承载多少。触觉与音频优先级是补充通道的配置。关于"每类关键状态至少一条非视觉通道",本节承接 M4-3 的完整口径:原内容须有有效的非视觉覆盖;该通道在当前条件下确实不可用时,须实际切换到能让用户持续感知该状态的等效内容路径(改变动作要求、降低视线依赖、改用可持续观察的呈现),而不是仅仅去掉声音了事——经此验证的视觉适配路径不因本节而被拒绝。
七、控制:想停怎么停、想降档怎么降、中断了怎么回来
前缀:body.control
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 中止通道 | abort.channels | 非空集合:每项含输入方式、依赖链路和可用条件。至少一条独立于主动作识别链路;不得仅含精确指向目标。 | 通道独立按实际依赖判断,不能把同一骨骼识别的两个动作当作独立保障(M5-1)。 |
| 必选 | 中止生效预算 | abort.max_latency | 正时长,从有效触发至停止追加身体要求;含动画、过场与回执。控制实体器材时另绑定其安全停机时序。 | 不以软件已暂停冒充器材已安全停止(M5-1)。 |
| 必选 | 降档可达性 | downshift.reachable | 结构:运动中入口或一次中止后的会话内入口、输入条件、操作负担验证、生效点。下一项身体要求前生效,不能安全切换则先停止该负荷。 | 不退出课程、不重做、不要求继续原负荷;操作负担应当接近常用暂停,不与最快中止比较(M5-4)。 |
| 可选 | 中断状态保留 | resume.state.retention | 正时长、起算事件、续期规则、超期说明及仍保留的成果。起算事件须不晚于需要恢复的时刻;从中断起算最直接,采用结束或最后访问时另定义暂停期间的有效期。 | 支持中断恢复时明确;恢复快照与身体记录分别决定保留期(M5-3、M7-3)。 |
| 可选 | 恢复重入 | resume.reentry | 结构:用户准备确认、按中断原因的前置复核、重入动作边界、半次动作处置与完成事件去重。已确认完成不重做,信号恢复不自动开练。 | 支持暂停恢复时必须明确;保留活动记录不等于半个动作算完成(M5-3)。 |
| 必选 | 非体感控制映射 | alternative.inputs | 必要控制 → 可用按钮/键盘/开关/平台辅助输入;含首次启动可达性、非必要动作触发关闭范围、停止路径依赖。 | 无需先完成训练动作即可开始、配置、暂停与退出(M5-6)。 |
边界:中止管"停",降档管"少一点",恢复管"回来"。降档在运动中或一次中止后的当前会话内可达,不要求它快于最快中止;恢复不得要求重做已确认完成部分。
八、场地:要多大地方、边界怎么给、旁边的人怎么处置
前缀:body.space
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 内容空间要求 | area.required | 结构:位置与参考坐标、地面范围、高度、身体与器材扫掠范围、适用动作、辅助器具及地面要求。数值带单位。 | 存在空间要求时明确;不以脚下占地替代完整动作范围(M6-1)。 |
| 必选 | 空间确认方式 | area.confirm.mode | 结构:传感/用户检查/两者、触发策略、检测能力、有效条件、失效触发。允许沿用仍有效的确认;确认主体、时刻与范围另记回执。 | 条件变化只复核受影响部分;没有有效确认依据不显示已确认(M6-1)。 |
| 必选 | 边界能力与行为 | boundary.behavior | 结构:传感/内容/现实边界各自的来源、可检测性、接近与越界响应、不可检测时的固定站位或适配路径。 | 有实时检测才承诺自动提示;不可检测不伪装实时安全,越界不等于判定失败(M6-2)。 |
| 可选 | 地面要求 | floor.requirements | 结构:适用防滑、平整和清理条件,确认方式与不满足时的内容替换;实际检测能力单列。 | 不能凭传感骨架或一次扫描判断所有地面风险(M6-1)。 |
| 可选 | 判定主体仲裁 | subject.arbitration | 结构:支持人数、主动加入候选规则、确认方式、保持条件、丢失行为、显式转移触发、恢复核对。先到顺序仅排序已主动加入者;不允许最近者或最清晰者自动接管。 | 可能出现非玩家时明确;当前主体标识另记为运行事实,不能以人数配置证明主体已确认(M6-4)。 |
边界:空间要求与确认决定"能不能开始";边界行为决定"越界时用户怎么知道";主体仲裁决定"画面里有别人时听谁的"。地面条件是声明,不承诺检测。
九、进程:跨天怎么推进、中断的代价、目标由谁定
前缀:body.progression
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 连续性机制 | streak.mode | 枚举:不使用/使用且提供免运动维持方式。"使用且中断不可恢复"不是合法取值。取"使用"时 streak.recovery 必须有效。 | 本字典中商业目标与用户身体利益冲突最直接的字段。取值域里没有"中断即损失"这一项,是有意的(规范 M7-1)。 |
| 必选 | 统计口径 | stat.basis | 结构:游戏进程/有效身体活动/估算与补记分开,分别列计入状态、来源、分母、判据引用、输入方式变化与历史可比性。 | 按钮辅助可推进游戏,不生成原动作运动量;未观测不进达标率分母(M7-2)。 |
| 可选 | 连续性恢复方式 | streak.recovery | 集合:休息日额度/补记/主动暂停。禁止要求付费或额外运动作为获取条件。 | 免运动维持连续记录的方式。获取条件是本字段的实质——收费的休息日等于没有休息日。 |
| 可选 | 目标选项 | goal.options | 集合:娱乐/保持活动/提升表现/用户自选身体目标/自定义。未选择时不采用体重目标,不由身体测量值自动指派。 | 康复或医疗目标仅在相应专项范围内提供,本字典不授予该能力(M7-6)。 |
| 可选 | 年龄适配策略 | minor.limits | 结构:年龄段、适用内容、负荷与时长策略、依据、平台或家长控制、调整条件。不得只按登录天数解锁。 | 值不要求所有未成年人一律低于成人;与能力起点分开(M7-7)。 |
| 可选 | 初始能力策略 | onboarding.policy | 结构:能力未知时的起点、低负荷试用、用户调节范围、需要进一步评估的条件和硬限制引用。 | 无既往能力信息的新用户必须有明确策略;不能用账号资历冒充体能(M7-7)。 |
| 可选 | 推送与激励框架 | notification.framing | 引用:推送与激励文案的框架约束清单。至少禁止:损失框架表述、倒计时施压、与他人身体的比较、暗示当前身体状态不可接受的表述。 | 跨会话动机机制的文案约束。与 body.judgment.feedback.attribution.vocabulary 是同一类伤害的两个来源,分别配置(规范 M7-5)。 |
边界:连续性机制决定中断的代价;统计口径决定进度是否真实;目标决定这一切服务于谁的意图。连续性和个性化目标可以不启用;只要显示进度,统计口径就必须明确。
十、身体数据:记什么、留多久、给谁看、能不能删
前缀:body.record
| 级别 | 设计决定 | Token 字段 | 类型与合法取值 | 适用条件与作用 |
|---|---|---|---|---|
| 必选 | 数据分类与必要性 | categories | 结构:身体测量、生理指标、运动记录、原始影像/深度/骨架及衍生特征,逐项列功能目的、最小依赖、瞬时处理或留存。无采集留存可为空。 | 各类分别可控;功能必需按实际用途论证,不限于姿态归一化(M6-5、M7-3)。 |
| 必选 | 保留期限 | retention | 按类别分别指定:不留存/有单位期限/至用户删除,并记录用途及到期处理。同一期限可用于不同类别,但须分别决定。 | 区分瞬时缓冲和长期存储;不能用一个默认值掩盖全部数据决策(M7-3)。 |
| 必选 | 删除范围与生效 | deletion.scope | 结构:原始记录、个性化/推荐副本、缓存、处理者副本及备份处置,含生效时限和不可立即删除项的实际限制。 | 不能仅删除展示,也不能承诺控制范围外的全部副本已经删除(M7-3、M7-4)。 |
| 可选 | 采集指示 | capture.indicator | 结构:硬件/系统/界面指示及实际采集状态绑定。采集中不得由配置关闭;物理遮挡是控制,不是采集指示。 | 摄像头或环境感知启用时必须明确(M6-5)。 |
| 可选 | 处理位置 | processing.location | 各类别的本地/外部/混合模式、用途、接收方、传输范围、同意及撤回路径。运行配置不得静默改变本地承诺;模式切换分别说明并获得所需同意,不扩大既有数据用途或追认既往外发。 | 启用采集时明确;原始影像、骨架与衍生特征分别列明(M6-5)。 |
| 可选 | 对外默认可见集 | share.default | 字段及对象集合;身体测量、生理指标和身体影像默认不在其中。含确认方式、撤回入口、产品可控副本处置与第三方不可追回范围说明。 | 提供分享、排行或多人展示时明确(M7-4)。 |
边界:分类与保留期限决定记什么、留多久;删除范围决定用户说了算不算数;采集指示与处理位置决定采集本身是否透明;对外可见集决定别人能看到多少。五者独立配置,任何一项的宽松都不由其他项补偿。
十一、可选项的联动要求
能力可以不启用;启用后,依赖必须完整。下表不新增字段或第三种级别,相关值可由产品规则继承。表内省略共同前缀 body.。
取值层级与解析记录:产品预设 → 内容或课程预设 → 玩家明确偏好 → 本次会话明确选择。设备能力与安全、人群和空间限制是独立约束,先求共同允许范围,不作为可被玩家覆盖的一层。硬限制在任一层都只能被收紧;普通偏好只能被更具体层的明确选择覆盖,不由默认值静默覆盖。每项实际配置记录一行:字段、决定层、值或引用、选择原因、来源与定义快照、适用条件、生效点、验证记录。硬限制的交集为空时,停用相关内容并给出适配路径,不取折中值;引用失效或缺少必需证据时不猜值,该能力记为不可用。
| 能力或承诺 | 必须明确的依赖 | 未满足时 |
|---|---|---|
| 强度自适应 | load.adaptive.mode、load.adaptive.range、可知且可拒绝的上调、手动锁定;生理驱动另需 load.signal.validity。 | 不自动调节;保留手动范围和硬限制,信号失效不据此升档。 |
| 判定自适应与身体评分 | judgment.evidence.requirements、judgment.outcome.domain;自适应时另需 judgment.threshold.adaptive、judgment.threshold.range。 | 不对无有效依据的属性评分;未观测不变成未达标。 |
| 计时或节奏判定 | timing.judgment.window 与 timing.calibration.offset;音乐同步另需 timing.audio.timebase;非音乐的计时判定仍须声明其时间链路(输入时间戳来源、显示或反馈输出路径)的校准或核验方式,以及该校准何时失效。 | 不提供无可靠时基的对应判定;一般计时不强制配音频,但不因此免除时间链路的核验。 |
| 实时多人 | move.multiplayer.adaptation;个人中止时的共同时间轴处置、未完成部分的计入方式与结算口径已事先声明。 | 不提供实时多人;个人的即时中止在任何配置下都不受其他玩家同意或联网回执的限制。 |
| 方向示范 | move.demo.orientation、示范与语音和判据的一致映射。 | 不投放方向含混的示范,不能让用户反复猜左右。 |
| 游戏画面 | feedback.photosensitivity.policy、最终合成输出的检查证据。 | 未检查或发现风险时不开放受影响画面;优先修正或停用效果。 |
| 身体连续跟随或头显 | 相应 timing.latency.budget、timing.latency.degrade;头显另需 feedback.comfort.options。 | 停止陈旧跟随,按平台能力退出或降低沉浸,不冻结头部视角。 |
| 空间受限内容 | space.area.required、space.area.confirm.mode、space.boundary.behavior 及当前有效确认。 | 改用满足已确认空间的适配内容;不得默认原地动作一定安全。 |
| 专用器材 | move.equipment.required 的缺失、断连、电量和标定状态,以及适用停机方案。 | 不开始依赖失效器材的内容;保留进度并等待用户准备。 |
| 暂停恢复 | control.resume.state.retention、control.resume.reentry、可靠成果与去重机制;与是否使用器材无关。 | 不承诺无法兑现的恢复;保留已确认成果,缺失条件先补齐。 |
| 必要控制 | control.alternative.inputs 与 control.abort.channels;至少一条停止路径独立于主动作链路。 | 不启动缺少可用停止和必要控制的内容(M5-1、M5-6)。 |
| 多人同场 | space.subject.arbitration、每人身份与 move.multiplayer.adaptation、个人限制、共同贡献映射与公开字段。 | 不开放未验证的多人组合;单人仍处理旁人进入,不转移判定主体。 |
| 摄像头或环境感知 | record.capture.indicator、record.processing.location、record.categories 与 record.retention、非主体数据处置。 | 停用相应采集;不留存不能替代采集指示和处理位置说明。 |
| 生理数据或能量消耗显示 | 信号有效性或估算方法、依赖项及误差声明、数据分类和来源标识。 | 不显示缺乏依据的当前指标;不把估算或旧值当作实时测量。 |
| 连续性机制 | progression.streak.mode、progression.streak.recovery、progression.notification.framing。 | 不使用缺少免费休息维持方式的连续记录;不改写实际运动量。 |
| 进度、排行或趋势 | progression.stat.basis、判据定义、输入方式与来源;对外展示另需 record.share.default。 | 不混合不可比的身体活动;不把非体感输入记成身体完成。 |
| 年龄适配与新用户 | 适用时解析 progression.minor.limits、profile.minor.defaults、progression.onboarding.policy。 | 能力未知采用经验证的起点,不按天数自动放开;无适龄内容则说明并限制相应访问。 |
| 个性化目标推荐 | progression.goal.options 与可解析的推荐输入;数据目的和留存分别明确。 | 按用户选择提供内容,不从测量值默认推导减重目标。 |
"继承默认"必须能解析到明确的值、来源与定义快照,不能只是一句说明。
配置生效与解析示例
先确认适用能力,再解析引用,归一单位与时钟,求限制交集,最后应用明确偏好。集合按字段声明替换或求交,不默认并集。引用循环、目标不存在、单位不相容、下界大于上界、缺失能力依赖均为解析失败;只阻止受影响路径,并给出可用替代。
运动中收紧负荷或失效依赖先停止受影响的身体要求;普通偏好在下一可执行动作边界生效;上调沿用 M1-4 的知情与拒绝要求。判据变更不重写历史成绩。界面依据实际生效回执展示新值,记录接收与生效时刻,不把“设置已保存”当作动作已经切换。
每项产品记录可采用以下表形。这里只示范选择与证据的关联,不提供运动处方或通用预设。
| 字段 | 决定者与示例值 | 原因和适用条件 | 生效点 | 机制与证据 |
|---|---|---|---|---|
body.load.adaptive.mode | 玩家选择“不自适应” | 本次希望手动控制负荷 | 下一动作前,必要时先暂停 | 无自动上调事件,硬限制仍有效 |
body.move.alternative.coverage | 内容定义中,跳跃路径映射为已评估的坐姿或按键路径 | 用户不选择跳跃 | 进入内容前,或暂停后切换 | 能进入同一剧情;按钮不生成原动作次数 |
body.judgment.threshold.adaptive | 产品预设“不自适应” | 无已验证的动态判据 | 开始判定前 | 实际判据固定,未观测独立统计 |
body.space.subject.arbitration | 产品设为仅确认加入者;丢失后暂停 | 家庭场景可能有旁人经过 | 主体建立前 | 旁人经过不串绑,恢复重新核对主体 |
body.control.resume.reentry | 内容决定从下一可执行动作边界重入 | 半次动作被中断 | 条件有效且本人准备后 | 已完成事件不重复计数,连接恢复不自动开练 |
上表省略的结构成员仍按字典填写;它不是可直接导入的配置文件。可用的配置交付必须附可解析值、定义快照、来源、理由、范围与验证记录。
解析验收样本(纯测试数据,不是推荐阈值):两条已归一化上限分别为 10 和 8,结果为 8;一个允许区间为 [0, 4]、另一个为 [5, 8],交集为空,结果为不可用;相同活动事件回传两次,只累计一次。恢复期限起点为中断时刻、期限为 60 秒且不续期时,59 秒可恢复、60 秒到期,反复打开不延长;具体产品可选其他期限,但必须定义边界。
十二、固定底线:不能通过配置关闭
身体的负荷。按适用内容声明负荷、人群与依据,区分建议门槛和硬限制;硬限制不得通过普通配置放开。自动上调可知可拒绝,手动选择优先但不覆盖安全边界;生理信号失效不据此加量。年龄适配与初始能力分开,不以游戏资历当身体能力证明。(M1、M7-7)
动作与判定。适配路径保留内容访问,实际身体活动分开记录。判据变化须对本人可知且不与付费或运营状态挂钩;普通游戏分数不冒充健康评价。判据须有适用身体条件和有效证据;观测、推断与生成补全不混同。未观测与无判定能力不进入用户动作表现评分的分母,但计入系统的有效观测覆盖与故障统计;安全判据不随意放宽,也不把低质量数据裁为用户失败。归因指向有依据的动作属性或外部条件,连续拒判不无限催促加力。多人各自配置与贡献机会可验证。(M2、M3)
反馈与控制。有游戏画面时执行光敏性检查,减少运动效果不能替代最终合成检查。反馈预算按链路和端到端口径验证,陈旧姿态不冒充实时跟随;头部视角不能冻结降级。关键状态在实际通道条件下可感知,镜头舒适性与负荷分开。必要控制有非体感路径,至少一条中止路径独立于主动作识别;个人的即时中止不受其他玩家同意或联网回执限制,实时多人须事先声明个人停止时的共同时间轴、未完成部分与结算口径,已获得的一般进程与已确认活动保留、缺席部分不伪记完成、不为继续比赛要求本人继续动作;降档在运动中或一次中止后的当前会话内可达,且不因成本比较降低任何中止路径的可达性;恢复保留已确认成果、核验准备状态,不自动重新开练。(M4、M5)
空间与在场者。活动范围包含身体、器材及辅助器具的扫掠空间;传感有效不证明环境安全。实时检测与人工确认分别声明,条件改变后复核;未经确认加入的人不进入主体候选,也不因原主体丢失而自动接管判定。采集状态可感知,不留原始数据也不取消指示。(M6)
进程与身体数据。暂停、降档和休息不受惩罚;参与连续性不伪装实际运动。数据用途、瞬时处理、留存和对外可见性分别决定;删除作用于受控下游副本,无法追回的第三方复制不虚报已删除。身体数据和适配原因不默认公开,不用体型羞辱推动使用。(M7)
以上承接 体感游戏交互设计规范 的适用要求;本字典不替代整套规范,也不构成无障碍、隐私、运动医学、未成年人保护或其他专项合规证明。
配置交付与校验
节奏时基使用音频时钟或经验证映射的单调时钟;渲染帧数不能替代稳定时基。时间映射变更或音频恢复后重新建立同步,旧事件不重复计数。示例不代表运动强度、时长或医学安全门槛。
随附的可执行样例只覆盖 body.timing.audio.timebase,其余字段按本字典逐项校验;未覆盖不等于不适用或已通过。样例是所选字段的格式正反例,不是可直接启用全部能力的产品预设。完整产品交付另外包含适用性、依赖、证据、执行映射及进行中操作的生效边界。
字段名、类型或含义变更时更新引用方与验收样例;仅修改说明且不改变合法行为的,保留已有字段名。调用方读取解析后的有效配置,不由 UI 控件、动画或模型文字反推权限、测量或完成事实。参见对应场景。
参考来源
配套 设计规范 与 Design Token。外部资料用于支持事实与实现参考;项目条款的约束力来自对产品承诺的设计判断,不冒充机构认证要求。
一、阅读范围与证据使用
下表保留来源及其阅读范围登记。已重新打开核对 Xbox 输入、难度、画面运动和光敏性指南、CDC 活动强度页面、Khronos 身体追踪结构的相关正文;其他来源沿用已有部分正文或摘要记录,不代表重新通读。DTCG 官方发布页的格式、类型与扩展相关章节用于核对交换格式边界,不宣称本字典完整格式合规。
- 正文支持实际阅读段落的事实,不能外推到所有设备和用户。
- 正文(部分)只支持注明章节;摘要不用于推导未取得的实现细节。
- 设计推导包括条件风险规则、停止后的迟到事件处置、事件去重、镜像侧别、配置覆盖与测试口径;这些不是来源原有条款。
- 公共活动推荐量不能当作个人安全上限,平台性能数值不能当作通用默认,追踪置信度不能当作动作质量或医学可靠性。
二、游戏、输入与多人参与
| ID | 来源与定位 | 类型/阅读范围 | 支持的主张 | 对应位置与限制 |
|---|---|---|---|---|
| R01 | Isbister & Mueller:Guidelines for the Design of Movement-Based Games and Their Relevance to HCI,2015,§4.3–4.5 | 作者机构论文 PDF/正文(部分) | 十条设计指南涉及传感模糊性、动作反馈、认知负担、疲劳、节奏、表达与社交乐趣 | 原则章、M1-3、M3-6、M4;生成性设计知识,不是安全验收标准 |
| R02 | Xbox Accessibility Guideline 107:Input,Implementation guidelines | 平台指南/正文 | 关键体感输入有数字输入替代,替代操作保留功能 | M2-2、M5-6;不能据此宣称按键具有原动作训练效果 |
| R03 | WCAG 2.2,Understanding SC 2.5.4:Motion Actuation,SC 与 Intent | W3C 解释文档/正文 | 动作触发的替代操作、关闭能力,以及辅助接口和本质性例外 | M5-6;直接范围为 Web,向原生游戏迁移属于设计推导,不是自动合规认证 |
| R04 | 任天堂:Ring Fit Adventure 运动辅助设置,设置步骤 | 厂商支持文档/正文 | 用户可选择把负担较大的运动替换为按钮操作 | M2-2;一手实现证据,不据此推断该产品全部可访问性、成就规则或默认值 |
| R05 | Mason 等:Including the Experiences of Physically Disabled Players in Mainstream Guidelines for Movement-Based Games,CHI 2022 | 机构存储库/摘要 | 轮椅使用者访谈 N=6、在线调查 N=21,关注独立访问、社交困难、充分挑战与综合适配 | M2-2、M2-7;资料登记中读取搜索返回的机构摘要,直接页面打开失败,未声称已取得全文 |
| R06 | Gerling 等:Effects of Balancing for Physical Abilities on Player Performance, Experience and Self-Esteem in Exergames,CHI 2014,作者上传稿,摘要与研究 2 | 原始研究作者稿/正文(部分) | 舞蹈游戏中显著与隐藏的平衡方式,对自尊、关系感和分差产生不同影响;轮椅参与部分样本很小 | M2-7、M3-2、M3-4;不是失败文案归因的直接研究,也不构成隐瞒个人负荷变化的许可。DOI:10.1145/2556288.2556963 |
| R07 | Xbox Accessibility Guideline 108:Game difficulty options,Scoping 与 Implementation | 平台指南/正文(部分) | 难度可以按不同游戏机制调整,应结合实际玩家研究选择配置 | 支持负荷与技巧挑战分开的设计方向;不提供运动负荷阈值 |
R06 对“透明性越多越好”构成重要边界:让本人知道适配方式,并不要求公开播报谁受到帮助。本规范要求的是个人控制与可理解性,同时避免暴露身体限制;不能用这项研究为静默改变负荷背书。
三、身体负荷、追踪与反馈
| ID | 来源与定位 | 类型/阅读范围 | 支持的主张 | 对应位置与限制 |
|---|---|---|---|---|
| R08 | CDC:How to Measure Physical Activity Intensity,Relative/Absolute intensity | 公共卫生机构/正文 | 区分个人相对强度和 MET 绝对强度;提供主观用力程度与谈话测试说明 | M1-1;有氧强度描述不等于关节安全、个体处方或儿童直接适用阈值 |
| R09 | WHO Europe:Physical activity,Physical activity recommendations | 公共卫生机构/正文(相关年龄段) | 分年龄的公共活动推荐并非“儿童都比成人少”;5–17 岁推荐平均每日 60 分钟中高强度活动,按周平均 | M7-7;这是活动推荐量,不是单次游戏时长上限;本规范不把该数值写成 Token 默认 |
| R10 | 任天堂:Ring Fit Adventure Health and Safety Information,PDF 第 1 页英文段 | 厂商说明/正文(部分) | 避免过度用力、不适时停用、注意周围人与物、器材使用条件,以及儿童成人监督 | M1、M2-4、M5-1、M6;支持具体风险与控制要求,不提供发生率、通用禁忌动作清单或本产品安全认证 |
| R11 | Darzi、McCrea、Novak:User Experience With Dynamic Difficulty Adjustment Methods for an Affective Exergame,2021,摘要与实验设计 | 期刊原始研究/正文(部分) | N=50、坐姿 Pong 实验比较五种调整方式;加入生理信息未带来体验量表显著改善 | M1-4;不能写成真实居家运动中“多项研究证明生理自适应无效” |
| R12 | Martin-Niedecken 等:Comparing the Impact of Heart Rate-Based In-Game Adaptations…,2021,摘要与方法 | 期刊原始研究/正文(部分) | 在健康年轻成人中比较实测与公式估算 HRmax 的 ExerCube 适配,两种条件的相关指标未见显著差异 | M1-4;不是有无自适应的比较。不引用未确认的具体心率阈值 |
| R13 | Meta:Movement Body Tracking OpenXR Extension,Overview、定位关节与骨架更新 | 平台接口/正文(部分) | 身体姿态可由头显、手或控制器信号推断;使用前检查活动状态、关节有效性,标定改变可更新骨架 | M2-3、M3-1;不证明任意属性的准确度,也不证明观测条件之外的人群公平性 |
| R14 | Khronos:XrBodyJointLocationsFB,结构定义 | OpenXR 扩展参考/正文 | 接口包含活动状态、置信度、关节位置与骨架变化计数 | M3-1、M5-3;厂商扩展并非所有设备都有,也不意味着置信度就是健康或动作质量概率 |
| R15 | Du 等:Avatars Grow Legs,2023,摘要 | 作者研究/摘要 | 从稀疏上半身输入生成全身运动,下肢信息可由模型合成 | M3-1;支撑“生成完整不等于完整测量”的区分,不据此一概禁止推断用于已验证的游戏判据 |
| R16 | Xbox Accessibility Guideline 117:Visual distractions and motion settings,Implementation guidelines | 平台指南/正文 | 非必要镜头晃动、模糊等效果可避免或提供关闭选项 | M4-7;不承诺消除所有晕动,不替代光敏性专项 |
| R17 | Apple:Immersive experiences,沉浸切换与虚拟手 | 平台指南/正文(部分) | 用户可选择沉浸进入退出;手追踪中断时不保留冻结虚拟手 | M4-1、M4-7;具体透视与边界行为依平台,本规范不采用其活动半径作通用数值 |
信号过期、部分可观测、半次动作中断和重复计数的处置,是把以上能力限制落实到产品状态的设计推导。来源不直接提供本字典全部字段、阈值或状态机。
| ID | 来源与定位 | 类型/阅读范围 | 支持的主张 | 对应位置与限制 |
|---|---|---|---|---|
| R21 | Xbox Accessibility Guideline 118:Photosensitivity,Scoping 与 Implementation | 平台指南/正文 | 游戏应测试光敏性触发因素,消除风险内容优于仅提供警告 | M4-7、feedback.photosensitivity.policy;合成场景覆盖是本项目落实方法,不将页面简化成单一频率阈值 |
四、标准和 Token 的边界
| ID | 来源与定位 | 阅读范围 | 可以得出的结论 | 不能得出的结论 |
|---|---|---|---|---|
| R18 | ISO 9241-960,官方 Abstract | 官方摘要,未购买正文 | 范围涉及手势的选择、创建、可用性与文档;该部分声明不处理系统响应 | 不能从单一标准范围推断整个标准体系都不处理反馈,或整个领域不存在标准 |
| R19 | Design Tokens Format Module,Status、Token、Types、Extensions | 正文(部分) | 稳定社区组报告提供交换格式、基础类型与扩展机制;不是 W3C 推荐标准 | 基础类型不等于身体策略语义;写进扩展也不证明跨工具可执行 |
| R20 | OpenXR 官方介绍 与 R14 | 官方正文/接口定义 | 已有追踪数据和设备互操作的机器可读表达 | 不能说本领域“连识别侧的机器可读表达都没有”;同样不能把 API 当产品体验规范 |
既有资料分别覆盖输入、身体负荷、判定和反馈问题;来源范围不能证明本项目全部规则已获实证支持。
五、重点知识与应用边界
| 知识点 | 对产品的含义 | 不应得出的结论 |
|---|---|---|
| 输入可访问性包括速度、持续时间和复杂度 | 辅助路径还要检查连按、长按、同时按键和首次设置入口(R02) | 重新映射按钮就等于消除了操作障碍 |
| 暂停的共同时间轴有场景限制 | R07 的暂停建议列出单人、本地多人及分屏;联网多人仍须设计个人即时停止与结算 | 个人停止一定能冻结所有远程玩家 |
| 镜头运动和光敏性是不同检查对象 | 减少晃动与最终画面闪烁检查分别进行(R16、R21) | “减少运动”开关或免责声明覆盖全部视觉风险 |
| 有效姿态、推断姿态与生成补全不同 | 每项判据绑定部位、来源、时效和适用证据(R13~R15) | 看见完整虚拟人,就能评价所有关节动作 |
| 相对强度因人而异 | 公共量表与个人可调范围分别声明(R08) | 成人绝对强度是儿童或个人的安全线 |
| 基础 Token 类型不包含领域策略执行 | 行为结构另有类型、引用与跨字段校验(R19) | 写入扩展字段就已经实现身体约束 |
六、仍需由产品补证的主张
- 失败反馈对用户理解、动作调整和身体自我认知的影响;不能只比较短期通过率。
- 按适用人群、设备、服装、遮挡和辅助器具分组的有效观测覆盖、误接纳与误拒绝;不能用总体均值替代。
- 负荷曲线、间歇与风险规则在具体内容中的适用性;坐姿或低冲击标签不自动证明安全。
- 混合能力多人内容是否提供实际贡献机会,个人中止和共同结算是否符合事先说明。
- 身体数据的原始记录、衍生特征、缓存、处理者与备份是否遵守声明用途和删除范围。
- 训练效果、儿童和特殊人群适用性、康复与医疗宣称需有对应范围的直接证据,不能从娱乐体验或参与天数外推。