由物理加速带来的灵敏度变换
手部加速调制是一项面向进阶用户的工具,让你对曲线的表现有更多掌控。究其本质,它让曲线所做的灵敏度变换在你加速手部时与减速手部时表现得不一样。普通的加速曲线只对鼠标的速度作出反应,而不关心它是 如何达到这个速度的。
这种物理加速是一种 瞬态过程 ——缩放只在你手的速度正在
变化时才起作用,动作一旦稳定下来就随之消失。
两张图各自说明了什么
- 加速曲线:图中给出一条示例灵敏度曲线,并配合一次模拟的甩动动作,为便于观察而放慢播放。动作先缓慢加速,随后加快,在 45 英寸/秒 的峰值速度上保持片刻,再以同样的方式减速。
- 手部加速调制的缩放:这里展示的是把物理加速与输入信号收敛到一起的内部函数。它是相对加速而非时间绘制的,因此整个变换的形状可以一眼看全。
参数
- 缩放 & 限制:缩放决定手必须加速到什么程度,才会发生缩放,也就是该函数对你手部物理加速的敏感程度。限制则设定效果的上限,响应会不断逼近它,却永远不会真正到达。
- 缩放时机:选择缩放是在手加速时发生,还是在手减速时发生。
- 速度目标:在曲线读取之前先乘以速度。输出只可能是曲线所定义的灵敏度。
- 灵敏度目标:在曲线读取完成之后再乘以输出。曲线是被整体抬起而不是横向滑动,因此可以短暂达到曲线中根本不存在的灵敏度。
手部加速指示条在两种情况下读数相同,因为所测量的本来就是同一个量——不同的只是这个测量值被 应用到什么上.
一些用法
这些效果正是瞬态调制才能带来的,单靠一条普通的加速曲线无法实现。设置按以下顺序给出: 目标, 缩放的正负、 缩放时机.
- 为快速甩动在鼠标垫上留出更大的余地。 速度、负缩放、作用于加速。在手加速的过程中对速度做除法,会把灵敏度压在曲线单独给出的数值之下,因此同样幅度的一次大力甩动,在屏幕上走过的距离更短。甩动可以更果断,在越过目标之前也多出一段余量。
- 只有在速度快且同时在加速时才提高灵敏度。
速度、正缩放、作用于加速。把曲线向左压缩,会让它上方的平台在更低的手部速度上就能够到,但只在手正强劲提速的那段时间里如此。 预设 10,Modulated Jump正是这样搭起来的:在一条跳变曲线上取缩放 1、限制 4。这样一来,除了极具反应性的 180° 转身之外,其余所有动作都不带加速。
- 只在物理加速时才发生灵敏度变换。 灵敏度、正缩放、作用于加速。由于缩放落在曲线之后,曲线本身可以保持平坦:所有匀速移动都不会被缩放,读作单一的灵敏度;而一次有力的甩动会在瞬态持续期间把它整体抬起。 预设 17,手部加速灵敏度调制做的正是这件事,其缩放为 1、限制为 2.5。
- 在不带来惯常“动作延迟”的前提下使用强平滑。
速度、负缩放、作用于减速。对抖动的鼠标输入做平滑,会在你减速手部时抬高灵敏度,因为平滑是与之前的数值取平均——这就是所谓的“动作延迟”效应。在减速的过程中进一步降低进入曲线的输入,会让灵敏度下降得比单靠动作本身更快。这样就在保住抖动减少这一好处的同时,缓解了缺点。
- 在左右快速跟枪时让灵敏度更稳。 速度、负缩放、作用于加速。每一次变向都是一次显著的加速,因此除法在每一次变向上都会生效,把本来会沿加速曲线一路爬升的灵敏度按在原处。结果相当于给曲线加上了一个动态的“偏移”,它只在急促的物理加速下出现,在匀速移动或更平缓的手部加速下则不会出现。
有两点实践上的提醒。缩放值会受鼠标 DPI 影响:建议在 设备选项卡中填写每只鼠标的 DPI,这样加速才会像本图一样以真实单位度量。其次,真实的鼠标输入噪声太大,无法直接求导,因此驱动会先把速度平滑一遍,再取其变化率——这正是
检测平滑的作用。本页中的动作是生成的而非实测的,因此没有需要平滑的对象,本页也没有这样的控件。