N1.05.3unmaskable motion-to-photon latency设计研究

该延迟不可用动效掩盖

别名: 延迟无法用动画掩盖 · 世界不可缓动 · latency not animatable

概念解释

转头时墙在后面拖,加一层whoosh、淡入、运动模糊、摄像机缓动,墙还是在拖。运动到光子延迟不能用动效掩盖:世界被当成静止参照,任何「让世界跟着动画走」的处理,都是把误差表演出来,而不是把误差藏起来。界面按钮可以淡入,房间的几何不行。把滞后包装成转场,人看到的仍是参照在滑,只是滑得更花。

动效能改的是内容自己的运动,改不了头和光子之间那一段已经发生的时间。

机制

桌面动效成立,是因为屏幕是一个被承认的对象:缓动、淡出是对象的行为,边框和房间仍稳定。头显里被延迟的是整幅视网膜上的环境。给环境加缓动,等于宣布环境在动——这与「环境应静止」直接相反。运动模糊把拖影画进像素,滞后的空间误差还在,现在再叠加一条涂抹,检测可能更难用语言描述,前庭–视觉冲突并不因此对上。

摄像机动画(落地、受伤晃动、过场推进)是内容运动,会与头动叠加。内容运动可以设计;头动滞后是系统没兑现的姿态。用内容运动去「盖」系统滞后,两套运动在视网膜上相加,误差更大,不是抵消。只有把光子赶上头,滑才停。动效没有这条通路。

怎么研究

在同一档超阈延迟上交叉「有掩盖动效 / 无动效」:转场淡入、全屏模糊、短促摄像机晃、UI whoosh。任务仍是转头看世界是否贴住。

自变量:延迟毫秒数、动效种类与时长。 因变量:世界滑动的检出率、不适评分、口语里把原因归给「特效」还是「延迟」的比例。

预期是动效不降低检出,往往还提高不适——因为它把本该静止的参照弄成了主动运动。若某类动效看起来「好一些」,要检查它是不是让人减少了头动(从而少采样延迟),而不是真的掩盖了滞后。少转头不是掩盖,是探针被关掉。

边界

内容自己的入场动画(菜单从手边展开、传送落地的短暗)不在这条禁令里,前提是它们不拿来补偿头动滞后,并且播放期间世界其余部分仍贴着头。故意的摄像机运动(过山车、爆炸冲击)是致不适的另一类刺激,不能拿来当延迟的遮羞布,也不应与延迟同时验收。压暗周边、缩小视场可以降低光流,那是在改晕动通路,不是在掩盖 MTP;延迟仍在,只是少了一部分视觉证据。对动效极不敏感、又几乎不转头的观看,动效和延迟都可以「看不出来」,这种观看不能用来给「我们用转场解决了延迟」签字。

怎么落地

  • 禁止用摄像机缓动、全屏模糊、转场淡入去「修」转头拖影。拖影的修复是把延迟压回阈下,没有第二条路。
  • 内容动画与头动脱钩:过场播的时候,世界姿态仍按头走;不要在过场里把世界锁进一条预先拍好的轨迹还假装人可以转头。
  • 评审时把「看起来更炫」和「转头时世界是否钉住」分成两个问题。第一个通过、第二个失败,动效就是在掩盖失败。
  • 验证:打开所有入场和转场动效,做快速点头。世界仍在追头,把动效全部关掉再点一次头。两次一样滑,动效没有掩盖任何东西——关掉它们,去改延迟。若关掉之后人转头更多、滑暴露得更清楚,说明动效只是让人少转头,同样不是掩盖。

延伸

  • 同组N1.05.1 头动与画面更新之间的延迟需极低 · N1.05.2 超阈延迟直接引发不适
  • 相邻N1.11 渲染延迟与运动到光子时间 · N1.12 刷新率与残像
  • 站内检索unmaskable motion-to-photon latency · world stability · camera animation vs latency

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/N1.05.3