外设天下 - 电脑外设发烧友聚集地

123下一页
我的人缘0

[求助] Xp下的鼠标加速是无法完全去除.但可以用accelfix.exe这个软件可以减轻加速度的状况

23 15312
楼主
跳转到指定楼层
Xp下的鼠标加速是无法完全去除.但可以用accelfix.exe这个软件可以减轻加速度的状况

罗技鼠标,选鼠标驱动控制,不用OS控制,不可以去加速吗?
0
已赞
微信分享 收藏
回复

使用道具 举报

我的人缘0
2
发表于 2011-9-28 20:23 只看该作者
进来这,我发现我又一次的白了
回复 支持 反对

使用道具 举报

我的人缘0
3
发表于 2011-9-28 20:39 只看该作者
2# ┍Smile?奶茶

你很白么?
回复 支持 反对

使用道具 举报

我的人缘0
4
发表于 2011-9-28 20:40 只看该作者
回复 支持 反对

使用道具 举报

我的人缘0
5
发表于 2011-9-28 20:48 只看该作者
测试
本帖最后由 xmiangui 于 2011-9-28 23:08 编辑
罗技鼠标,选鼠标驱动控制,不用OS控制,不可以去加速吗?
bc111 发表于 2011-9-28 19:43

一点关系都没有,SetPoint实施的原理是把SetPoint处理过以后的数据写回鼠标位移堆栈(就是 原始鼠标输入数据,或者叫Raw Input模式读的数据)……


Xp下的鼠标加速是无法完全去除.但可以用accelfix.exe这个软件可以减轻加速度的状况
bc111 发表于 2011-9-28 19:43

这个补丁的原理是修改系统内核的二进制文件,使系统鼠标函数跳过指针平滑的部分。但因为直接修改系统二进制文件,大多数杀软都会报毒(如此高危的操作一般都会触发启发式报毒)。

回复 支持 反对

使用道具 举报

我的人缘0
6
发表于 2011-9-28 20:52 只看该作者
本帖最后由 xmiangui 于 2011-9-28 23:06 编辑
http://fight.pcgames.com.cn/cs/jiqiao/1109/2313334.html
看看这个吧
wql31416 发表于 2011-9-28 20:40

PCG的这篇文章1-5页可以看一下,翻译的是MarkC的原文,基本可以解释清楚MarkC生成器生成出来的注册表文件去鼠标加速度的原理。

后面一些内容貌似引用的是论坛文章,一般写的不是很详细,一些内容是小编根据自己的理解补全的,难免有部分错误,但小编也没注明哪些是自己补的。

比如说第6页的Goldsource引擎源代码,引用的源代码没错。不知道是不是看了我在论坛里的回帖,但是那篇回帖我只贴了代码,没做解释(当时想鄙视下PCG论坛有人“发现”的新CS启动参数,所以故意不解释,可能是小编顺藤摸瓜看到了这篇帖子)。总之,不管小编从哪里看得代码,反正结果就是小编没能看懂,下面贴的还是当年某“电竞豪门”对这三个参数的解释,其实根本不是这么回事……

这里补上这三个参数的解释:
CS初始化鼠标时,会在游戏中覆盖Windows的鼠标加速度设置(MouseSpeed、MouseThreshold1、MouseThreshold2,置为1、0、0),导致游戏中有加速度。但是需要修改的不是这三个键值,因为会被重置掉,改的其实是加速度的分段函数表(SmoothMouseXCurve和SmoothMouseYCurve)。

这三个启动参数就是控制不重置哪些加速度参数:
-noforcemaccel:不重置MouseThreshold1和MouseThreshold2
-noforcemspd:不重置MouseSpeed
-noforcemparms:不重置加速度全部三个参数
回复 支持 反对

使用道具 举报

我的人缘0
7
发表于 2011-9-28 20:57 只看该作者
进来学习一下!
回复 支持 反对

使用道具 举报

我的人缘0
8
发表于 2011-9-28 21:10 只看该作者
本帖最后由 xmiangui 于 2011-9-28 21:54 编辑

1# bc111

单纯对于CS来说,其实你根本不需要任何mouse fix类的注册表或者修改程序。你只要保证:
1、没勾“提高指针精确度”
2、cs的启动参数里有“-noforcemparms”(或者有“-noforcemspd”)
3、没有驱动程序修改鼠标位移堆栈里的数据(比如SetPoint的SetPoint实施,并且还在设置里开了加速度)
就是没有加速度了,为什么?

因为只要保证MouseSpeed为0,Windows的鼠标指针平滑(加速度)是不启用的。而CS在初始化鼠标时,会将MouseSpeed重置为1,但是如果有启动参数“-noforcemparms”或“-noforcemspd”,则不会重置MouseSpeed。
所以结果就是没有加速度。

但是会重置加速度参数的游戏不止CS一个,而且也不一定都提供了不重置的参数,所以保险一点去掉加速度的方式就是:
1、修改指针平滑表(保存注册表里),使这个分段函数一直是直的。这个就是MarkC生成器生成的注册表文件的作用,且该生成器也适用于Win7。
2、修改操作系统内核,跳过指针平滑函数(让加速度永远不生效)。这个就是楼主的fix小程序。但是我不建议直接修改内核文件……并且我不知道在Win7增强了内核保护功能后这东西还能不能适用于Win7。
回复 支持 反对

使用道具 举报

我的人缘0
9
发表于 2011-9-28 21:24 只看该作者
表示各种不懂
回复 支持 反对

使用道具 举报

我的人缘0
10
发表于 2011-9-28 21:35 只看该作者
测试
xmiangui兄弟,我想请问一下为什么不建议修改系统内核?
回复 支持 反对

使用道具 举报

123下一页
高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则