词条 | 鼠标加速 |
释义 | 什么是鼠标加速鼠标加速就是指针的移动速度与鼠标的物理速度的比值随着鼠标物理速度的增加而增大。也就是说鼠标在鼠标垫上同样移动了一厘米的情况下,如果移动的速度更快则屏幕上指针移动的距离越大。 加速度的作用为了用户能通过微调将指针定位到每个像素,同时不会觉得大幅度移动指针时速度过慢,鼠标加速度是必须的。尤其是一些CAD制图工作。 判断是否开启加速度的方法有种简单的方法可以判断是否开启加速度:鼠标一般放在键盘右边,先让鼠标紧靠着键盘右侧,记住当前屏幕上指针或准星所在的位置。以很慢的速度向右移动鼠标一段距离,然后以很快的速度将鼠标回靠到键盘右侧。这时有3中情况: 1、指针在水平方向回到了原来的位置,说明没有加速度,而且你的鼠标性能很好没有丢帧。 2、指针里原来的位置还差一点点,说明没有加速度但你鼠标有丢帧的现象。 3、鼠标超过了原来的位置,而且一般还超过不少(大约1倍),说明有鼠标加速。 Win2000及以前的鼠标加速当鼠标X轴的物理速度大于某个阀值时,对应的指针速度变为2倍原始速度,大于第二个阀值时变为4倍,Y轴同理。windows提供了4种规则,对应的关系如图。默认为2级,1级为关闭鼠标加速。 这个规则是通过注册表 HKEY_CURRENT_USER\\Control Panel\\Mouse下MouseSpeed、MouseThreshold1、MouseThreshold2这三个值的配合实现的: MouseSpeed的值表示指针速度变化的次数, 0为无变化(无加速), 1为在阀值1以上时变化为2倍速, 2为在阀值2以上时变化为4倍速。 MouseThreshold1、MouseThreshold2则分别表示2个阀值。 存在的问题因为X轴和Y轴的速度是分开计算的,就会出现一个轴向上是原始速度而另一轴向上可能已是4倍速这种情况,而这时指针的移动方向会与鼠标实际移动的方向发生严重偏离。所以有了XP之后的新型鼠标加速算法。 WinXP及以后的鼠标加速为了解决上述问题,XP开始,windows将鼠标移动的方向和速度分开,只通过改变向量的大小而不改变向量的方向去应用鼠标加速。而这个速度的变化不再像WIN2000那样一段一段的,不平滑。微软通过大量用户试验,得出了一个平滑的指针速度与实际速度的关系曲线,并将这个曲线的关键点记录在注册表里。 从图上可以看出由5个关键点组成,每次登陆WINDOWS时,会根据这5个点计算出一条平滑的查表函数,并同个这个函数去定义鼠标加速。 这五个点的信息存在注册表HKEY_CURRENT_USER\\Control Panel\\Mouse下SmoothMouseXCurve和SmoothMouseYCurve。X对应X坐标,Y对应Y坐标。 打开SmoothMouseXCurve你会发现有5行,每行通过双位取反得出实际数值的16进制值。这里不再深究,有兴趣的可与本人联系。 MouseSpeed这个值则控制是否使用这个函数(是否开启加速度),MouseThreshold1、MouseThreshold2则在XP及之后的版本中失效,只是因为一些老的应用可能会用到,所以保留了下来。 鼠标加速和CS等FPS游戏的关系CS在WIN2000下时,可以通过使系统强制将鼠标速度固定在2倍加速的状态下,从而相当于屏蔽了鼠标加速。而从XP开始,因为微软使用了全新的鼠标加速算法,CS的强行加速鼠标(forcemaccel)的功能失效了所以游戏中出现了鼠标加速。一些新的游戏可以绕过鼠标加速算法,或者其他方法在游戏中消除鼠标加速,我所知道的:《龙之谷》。有些则和CS一样存在加速,比如《使命召唤4:现代战争》。 鼠标加速在FPS游戏中的优劣有鼠标加速时可以提供更精确的微操定位,一些玩家喜欢鼠标很慢很稳,提前判断敌人出现的位置。这种人适合开启鼠标加速,因为当他大幅度转身时可以提供更大的鼠标速度,行动更灵活。坏处则是进行快速远距离定位(相当于甩枪)时不准确,因为你无法保证每次以同样的速度移动同样的距离。 没有加速的的坏处就是对应的鼠标小范围微调是觉得鼠标太快瞄不准,而当你降低灵敏度之后又发现大范围转身变的很困难。但是通过大量的训练,也就是专业选手,可以在很高的鼠标灵敏度下精确控制准星(对鼠标性能要求较高),而在快速定位时异常精准,身法也很灵活。当年的CS神话人物HeatON就是典型的代表(我也是,嘿嘿)。所以专业选手或想成为枪神的人应该关闭鼠标加速,但是现行的关闭CS加速的方法有问题,有时还不如不关,下面我会说明并提供解决方法。 如何关闭鼠标加速关闭桌面加速度在控制面板中找到鼠标调整,在“指针选项”选项卡里去除“提高指针精度”前的钩,并应用。 关闭CS鼠标加速方法一:先关闭桌面加速度,再在CS的快捷方式里的目标中加入 -noforcemaccel -noforcemspd, 或者只加入 -noforcemparms(此命令的功能包含了前面2个命令的功能) 这两种方法是等效的。鼠标灵敏度刚好相当于WIN2000下一半。 此方法的原理是关闭CS的'强制加速'功能,前面说过此与XP之后的系统不兼容,故关闭此功能后CS中也没有了鼠标加速。 方法二:彻底关闭系统加速度(有精神洁癖的可以用这种方法,但是不推荐) 申明:此方法是2010年9月由玩家YYP率先放出在此,不同于以往的mouse_fix.reg.mouse_fix.reg是很久以前玩家根据个人爱好制作的调整鼠标加速度的补丁,有很多问题,大家别再使用。 将下面的内容复制到记事本,删除每行前的空格,注意每串数字的\\之后有1个回车2个半角空格,个并保存为NoMAccel.reg,双击导入后注销或重启。 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\\Control Panel\\Mouse] "MouseSpeed"="1" "SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,00,00,0a,00,00,00,00,00,00,00,\\14,00,00,00,00,00,00,00,1e,00,00,00,00,00,00,00,28,00,00,00,00,00 "SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,00,00,64,00,00,00,00,00,00,00,\\c8,00,00,00,00,00,00,00,2c,01,00,00,00,00,00,00,90,01,00,00,00,00 不加命令直接进入游戏即可。这种方法适用于XP及之后的操作系统,但是CS中鼠标灵敏度需要自己重新根据手感调整。(注:此方法可能根据不同的分辨率灵敏度会不同,未经试验证实。所以用此方法的话请固定使用一种分辨率) 若想恢复系统默认值,以同样的方法导入下面内容 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\\Control Panel\\Mouse] "SmoothMouseXCurve"=hex:00,00,00,00,00,00,00,00,15,6e,00,00,00,00,00,00,00,40,\\ 01,00,00,00,00,00,29,dc,03,00,00,00,00,00,00,00,28,00,00,00,00,00 "SmoothMouseYCurve"=hex:00,00,00,00,00,00,00,00,b8,5e,01,00,00,00,00,00,cd,4c,\\ 05,00,00,00,00,00,cd,4c,18,00,00,00,00,00,00,00,38,02,00,00,00,00 鼠标参数中的最大加速度(15G、20G...)首先说明,这个概念与上述的鼠标加速度完全无关。 大家都知道物体处于加速运动的情况下时相当于内部各处收到一个惯性力,加速度绝对值越大惯性力也越大。 鼠标也是一样,在使用时速度总是变化的,所以加速度有大有小,内部零件受到的惯性力也有大有小。比如15G的最大加速度意思就是鼠标能在15G的加速度以下正常工作。 其实这个值间接代表了鼠标的工艺和质量。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。