FPS后坐力解析

射击游戏的弹道一般由三个部分组成,分别是后坐力(Recoil)弹道扩散/散布(Spread/Bloom)准星偏移(Crosshair offset)

准星偏移

先讲准星偏移,我们以CSGO为例:当CSGO的枪在全自动发射的时候,后坐力使准星抖动,而子弹的落点在准星的上方散布。如下图:
准星偏移
而其他游戏譬如apex和cod,主要后坐力则是准心抖动,而子弹是追得准星的。
准星偏移
可以看到落点是始终在准星上的。

弹道扩散/散布

理论上来讲,假如我们把后坐力完全消除了以后,游戏的子弹就会全部射到一个点上。但是实际上,我们可以看到在关闭了后坐力以后,准星确实不会往上跳了,但是它依然会在准星的附近随机的扩散。
弹道扩散
这就是弹道扩散,有时也叫散布,英文一般称之为spray或者bloom。是根据玩家点射速或者是移动状态,游戏会给玩家一个随机的范围,子弹会随机地落在这个范围内的任何一个地方。

散布范围也不是固定的,比如在瓦洛兰特中,当你在移动的时候,这个散布范围会变大,这个时候你的子弹就会随机地落在这个范围的任何一个地方。所以csgo和瓦洛兰特开枪时往往需要玩家进行急停来保证子弹的准确度。在自动开火时,这个范围也会变大,所以在自动开火时,子弹的准确度会比点射时要差一些。

后坐力

关于后坐力,其实比较简单,我们使用CSGO控制台weapon recoil scale = 0这条指令,将后坐力置为零。此时,你的准星就不再上跳了。而这准星的上跳就是所谓的后坐力。
后坐力
所有的硬核cf玩家应该都见过这些,这是CSGO中武器的后坐力轨迹图。
在你全自动开火的时候,枪口以及你的光标会沿着一个固定的轨迹往上进行。这个轨迹在CSGO中是固定的。当然,每个游戏对于后坐力的处理并不相同。在瓦洛兰特中,这个轨迹就是不固定的。

尾声

关于后坐力的全部就是这些,但这之中依然存在许多值得深入学习的地方。比如后坐力,硬核玩家会更喜欢固定后坐力,这样他们可以通过熟练的练习来彻底掌握手中的武器,但反过来,随机弹道也许更能让新人上手,比如瓦洛兰特。如何合理的将这三者搭配,达到你希望的玩家体验和学习,值得不断的去打磨,请谨记:游戏设计无定式