C5.11.1Predictive inking extrapolates unreported path设计研究

预测渲染根据当前笔迹速度和方向外推尚未真正落笔的路径

别名: 墨迹外推 · predictive inking · 预测段 · look-ahead ink

概念解释

预测渲染在最新一次真实报点之外,再沿当前速度和方向画出一小段墨,把那一段当作“笔尖此刻应该已经走到、但采样还没到”的路径。它填的是感知上的缝,不是把未来的真轨迹算出来。真实点稍后到达,这段外推要被替换。外推怎么做,和急转时看起来像不像毛刺,是上下游关系:这里只谈外推本身。

机制

预测器吃最近若干点的位置和时间,估速度,有时再估切向加速度,沿切线(或短弧)走出 Δt 对应的长度,Δt 取端到端延迟的估计。画出去的是临时几何:半透明、或与真墨同色但标记为预测层。模型几乎总是局部线性或常曲率,因为只有几十毫秒的历史,写不出字形结构。速度越大,同一 Δt 走出的预测段越长,直线上缝补得越满。方向来自差分,采样一稀或一抖,切线就转,预测段会左右甩。因此外推前通常有轻度平滑,平滑又给真拐点加滞后——预测器内部就已经在跟手与稳定之间拉锯。没有速度估计(刚落下的第一点)时不应外推,否则会朝随机方向喷出一小段。预测层必须能被下一帧整段丢掉,不能写进最终笔画缓冲区,否则回滚无从做起。

怎么研究

在已知注入延迟下,对比无预测、线性外推、带加速度的外推。用高速摄像看预测段是否贴着笔尖,以及第一笔接触时有没有乱喷。

自变量:速度模型(零阶保持 / 线性 / 常曲率)、历史窗口、是否平滑。 因变量:直线上笔尖到墨前端的剩余缝、预测段方向与真速度的夹角、落笔瞬间的误喷长度。

把预测段和真墨用颜色分开,便于量,而不是混成一条线再猜哪一段是假的。

边界

第一点、急停后的零速度、以及报点间隙突然拉大(调度卡顿)时,速度估计失效,应关掉或收短外推。圆形小动作(点、小圈)的切线转得太快,线性外推会画出刺。把预测段画进撤销栈会让撤销撤销到一段从未发生的运动。

怎么落地

  • 只在速度估计稳定时外推,落笔后的前几毫秒不要预测。
  • 预测几何放在可丢弃层,不要写入最终墨。
  • 用与真墨可区分的调试色验收,确认预测段沿切线而不是沿随机抖动。
  • 验证:匀速直线上预测段应贴在笔尖下,长度与设定 Δt×速度相符;刚接触的第一帧不应冒出一段飞线。把历史窗口拉得太长,方向应开始滞后于真转弯——那是下一步窗口权衡,不是外推公式写错。

延伸

  • 同组C5.11.2 外推路径在预测生效后需要用真实数据回退修正,产生轻微回抽 · C5.11.3 预测窗口越长,跟手感越强,但转弯处的修正误差也越大 · C5.11.4 预测渲染只能缓解感知延迟,无法消除真实的端到端处理延迟
  • 相邻C5.08 书写延迟 · C2.10 触摸延迟与跟手性
  • 站内检索predictive inking · extrapolation · look-ahead stroke

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/C5.11.1