破案了!长期困扰你的手感问题,终于找到了原因!

更新时间2018/8/92075 浏览综合
2018.8.9补充:其实我这个实验还没做完,原本还应该包含匀速划动和变速划动的实验。一开始我们认为全军视角加速度比刺激更大,于是想探究究竟大多少;后来又转变为想探究两鸡的划屏算法,比如视角加速度究竟和划屏速度有关还是和划屏加速度有关、触发视角加速度的阈值又是多少等等;最后无意间发现了触摸延迟的问题,觉得这个问题更严重,于是就先把这个问题提交官方了。
ps.之后我还会更新一些全军早期的故事,以及说一说我对于大家都关注的一些地方的猜想,比如动作、人物模型、枪械、后坐力等等。一直以来都有抹黑全军的节奏被带起来,说说这些背后的故事总能让大家看得透彻一些。
====================================
一、背景介绍
大家好,又是我。
之前我发了个帖子,征询大家对于全军手感的看法。虽然大家的回复不全是关于手感的,但是也有很多人提到了划屏方面的手感问题。
TapTap
TapTap
TapTap
TapTap
对于全军的操作手感,可能很多人都是这样认为的:拉枪拉不过去,好不容易拉过去了,又容易拉过头,无法精确拉枪;压枪的时候,怎么压准星都还是往上窜,就是压不下来
二、实验探究
对于全军手感不好的原因,我们一开始普遍认为是由于全军的视角加速度过大而导致无法精确拉枪。为了验证这个猜想,我设计了几个实验。
实验一、同行程划屏实验。
简单来说,这个实验就是以默认灵敏度,从屏幕中心向右慢速滑动,直到屏幕边缘,然后再以相同/更快的速度划回屏幕中心,对比划屏前和划屏后的罗盘方向(屏幕上方的数字/方向标记),观察方向的变化。
如果有视角加速度,那么慢速划出快速划回的时候,必定不能回到原先所面向的方向,因为快速划回转过的角度,将会比慢速划出更大;且加速度越大,划回后偏转的角度也就越大
在实验中,我以正北为初始方向,做了慢速划出-慢速划回、慢速划出-中速划回、慢速划出、快速划回这三组实验。由于篇幅限制,我只放出部分实验录像。
TapTap
测试的结果出乎我的意料。原先我们普遍认为,全军的手感不好在于其视角加速度过大,导致无法精确拉枪,但是通过划屏实验来看,全军划回时,却能近乎回到正北方向。
而之前我们同样普遍认为,刺激的转动加速度比全军小,所以可以精确拉枪。因此我也对刺激做了划屏实验。
TapTap
实验结果同样令我非常惊讶。两组相近的划屏速度,刺激划回来后,视角偏转更大。这个结果颠覆了以前我们对全军手感不好的原因的认知。实验对比来看,全军的视角加速度比刺激还要小,这显然更有利于肌肉记忆的养成,更有利于精确拉枪。
可是,这次的实验是人工划屏,在速度的控制上难免会存在一定的误差,有可能是因为这些误差引起了实验结果的偏差。为了尽可能地减少这些操作上的误差,我又设计了一个加强版的实验。
实验二、同行程划屏实验(加强版)。
这次的划屏实验,我采用模拟器+按键精灵鼠标脚本的方法,用恒定行程、指定速度的鼠标脚本代替人工划屏,尽可能将人手操作的误差降至最小。
TapTap
(以上为部分鼠标脚本)
测得的实验结果(部分)如下:
TapTap
TapTap
实验结果和实验一相当接近:在匀速状态下,全军能回到正北,而刺激却回过了头。这说明在匀速状态下,全军没有了加速度,而刺激反而还有加速度。加速度过大导致全军手感不好,可以排除了。
三、新的思路
在排除了加速度过大的原因后,我们对于划屏手感不好的原因的推测,一度陷入了僵局。后来,在“P城外交官”的提议下,我们决定去录制一些模拟实战快速拉枪的视频。在模拟实战快速拉枪的时候,我们又一次感受到了那种拉枪要么拉不到、要么拉过了的尴尬手感。但是,通过这次模拟实战,我也有了新的思路,于是我写了一个新的脚本,实现鼠标左右快速匀速拉动的效果,以模拟实战中的快速拉枪。
TapTap
(模拟左右快速拉枪的脚本)
TapTap
在模拟快速拉枪的测试中,通过精确的脚本,我终于发现了问题所在。全军之所以让人感觉到划屏不舒服、手感不舒服,其根本原因在于:全军的划屏有可能存在着滞后,跟不上手。也就是解释了为什么明明全军的视角加速度比刺激还要小,可是实际操作起来却难以快速精确地瞄准。这并不是划屏算法公式的设计问题导致的,而是存在着bug或者程序瑕疵,导致视角转动跟不上手。
TapTap
为了进一步验证全军的划屏是否存在着滞后的问题,我用手机和手指做了快速划屏测试。
TapTap
可以看得出来,当我手指开始划的时候,全军的视角还要过一小会才开始转;而当我手指停下来的时候,全军的视角还会继续转一小会。如果要用一个词语去描述这种状态,全军的划屏仿佛存在着“惯性”:起步慢、停止也慢,跟不上手指的划动
作为对比,这里附上刺激的快速划屏测试。
TapTap
(刺激的划屏,起步很快,停止也很快,因此不会有拖泥带水的感觉)
至此,全军的划屏真相水落石出,造成大家手感不适的主要原因就在于:划屏跟不上手,起步慢停止也慢,仿佛有“惯性”
一开始我们讨论过划屏公式算法、讨论过视角加速度的值、讨论过视角加速度随划屏速度的分布,现在终于把主要矛盾找出来了。但是由于我不是专业人员,所以不清楚究竟为什么会出现划屏不跟手的问题,有可能是存在bug,也有可能是和硬件的对接出现了问题,这些只能交给专业人员去分析测试。在之前我们甚至不知道手感不对到底是哪里不对,至少这次我们找到了解决问题的方向。
甚至有可能陀螺仪的滞后和划屏的滞后是由同样的问题导致的,解决了这个根本问题,陀螺仪和划屏都能得到质的提升。

TapTap
(全军滞后的陀螺仪)
四、补充说明
1、关于划屏手感的另一个猜想
没用的酒奴”提过另外一种可能性:刺激的视角加速度即使在极低的匀速的划屏速度下也仍然存在,而全军的视角加速度在低速时不存在,高速划屏时骤然加大。也就是说,刺激的视角加速度相对稳定,全军的视角加速度变化幅度比较大。这就导致了全军在快速拉枪时由于骤然加大的加速度而容易拉过,往回拉时由于加速度骤然减小而很难拉回来。
这样的可能性也存在,这里先记下来,等滞后的问题解决后如果手感还存在问题,那么可以朝着这个方向去尝试。
2、关于逐帧分析法
其实这种录像逐帧分析法是非常实用的,可以用来对比动作等等。关于动作以前我也录过相关素材,但是当时没有放出来,现在放出来当作彩蛋好了。
TapTap
TapTap
TapTap
3、一些其他的话
(待续)
54
8
53