CS之ex_interp参数中文最详解释
很多人都不知道在1.5中,修改ex_interp是违规的。也有很多玩家甚至不知道ex_interp是什么东西我用这篇文章尽量地把这个问题简明扼要的解释出来,不让玩家们太难理解这些信息。
那么什么是ex_interp呢
ex_interp的工作原理就好像这样。
首先,Interp的含义为interpolation(译者注:插入帧,下同)。
也就是说基本上,它往你的主机/网络之间插入数据包,这个东西的引入令使用连接状况比较差的用户们仍然能够进行游戏。
插入帧发生的原理如下:
我们比如说有10个帧(显示帧或者说数据包)显示在你的屏幕上。如果你的ex_interp设置在0.1的话,就只有4帧是实际出现的帧,而其他的帧为运算得出的帧(译者注:guessed,这里意译为运算帧,其含义为猜测,由计算机模拟运算得出。下同)。
因此,它就象这样(RF=实际帧,GF=运算帧)RF GF GF RF GF GF RF GF GF RF etc.其作用就是来填补破烂的连接状况,这样你才能从屏幕中看到平滑而漂亮的画面据我的了解,在旧一些的版本的Netcode网络代码中(以前的1.3),LPB(低ping的混蛋)会有好的状况,因为他几乎能收到所有的帧,可以看到他因为能有好的连接而有好的帧负载,然而HPB(高ping的混蛋)会得到少一些的帧,屏幕会看起来一顿一顿的,打游戏也不那么容易。
所以,如果你想把你的ex_interp设定为一个更低的值,比如说0.01。这样你会把10个帧中的8个改变为真实帧。RF RF GF RF RF GF RF RF GF 这样的形容不是很贴切,总体上也不是很精确,不过至少能基本解释是怎么发生的。
不过到底ex_interp是不是一个违规参数呢?
ex_interp在cs1.6里面不是违规和作弊参数。
你不再可能把ex_interp设定为违规的参数了(下面解释),原因是由于代码上的一些小bug,在1.5和之前版本中是一个违规参数,你可以把它设定成很低的值,甚至你的服务器连接是不允许的(假设服务器默认它为0.1,即使你有明显地企图也能修改!),这样会使hitbox产生不正确的表现,造就有利于一些修改
ex_interp的configger。
在1.6中,这将被修正,因此当你尝试把ex_interp改成0.01时,你会得到一个信息,你的设置会设定为16ms或者15ms(你把net_graph设成3的时候可以看见)。这是因为你的cl_updaterate对ex_interp 0.01来说设定得太低。
不过设置为0.01是最好的,因为Half-Life/CS会将它尽可能自动设定适合你的updaterate(也是发生在对于最好的设定的情况下)试把cl_updaterate设定为60,然后把ex_interp设为0.01,你会得到一个错误,表现为16ms。那么现在把cl_updaterate设为100,然后把ex_interp设为0.01。
这是允许的,而不会给出一个错误的信息。
我的建议是把你的cl_updaterate,cl_cmdrate和rate尽量地与你的的连接相符,即你的连接方式能够处理得了(比如cl_updaterate 101,cl_cmdrate 101和rate 20000就不会有任何的choke或者loss,译者注:仅在lan比较适用)。
一旦你达到了你的连接的最佳方式,不论你的cl_updaterate如何,将把你的ex_interp设为0.01,cs然后就会按照你的cl_updaterate的值而设定ex_interp而不管你把它(ex_interp)自行设定为多低。运算等式是这样的(对你的updaterate而言进行ex_interp的限制)最低的ex_interp值=1/cl_updaterate.(译者注:cl_updaterate是主变量,所以应该放在等式的右边。)
另外一点,如果你想你的cs更象“街头混战”一样的话,用另外的话说平滑而无顿挫感,那么我建议你将ex_interp设定为0.1。
不过如果你想你增加你的准确度的话(子弹打在你所实际瞄准的位置),那么就把ex_interp设定到最低值。
不过貌似许多op都很不愿意呵。。。。 1.5就0.1
1.6随意了,不过比赛貌似都是规定0.01 本帖最后由 大鸵鸟 于 2010-7-6 08:14 编辑
不是你看不懂,是有才小朋友自己也没搞懂,纯粹转帖。 主要意思我理解就是网络优化 不是你看不懂,是有才小朋友自己也没搞懂,纯粹转帖。 主要意思我理解就是网络优化
大鸵鸟 发表于 2010-7-6 08:11 https://www.slit.cn/images/common/back.gif
谁说的?我看了N遍了 回复 5# 我很有才
那你就用通俗的话给各位叔叔解释一下吧
页:
[1]