《坦克世界》中有着一套独有的炮弹飞行轨迹计算系统,其中涉及到精度、弹速以及隐藏的炮弹重力加速度等几个参数。除此之外还有一些玩家相信但是官方并未承认过的炮弹散布差别问题。近日游戏玩家间也产生了关于炮弹散布等问题的热烈讨论。一些吧友提供了详实的游戏内部测试数据。他们的测试并不能证明在相同瞄准环大小的条件下,炮弹在环内的分布在不同车间存在显著差异。另有研究试图弄清炮弹飞行速度对于炮弹散布的影响,不过由于缺乏明确的理论基础,作者也承认拿不出太有说服力的结论。
此研究通过程序建模的方法,试图建立一个能够还原出游戏内部炮弹轨迹的模型。利用此模型对于炮弹飞行速度这一参数的影响进行研究。
假设炮口与炮弹落点位于同一水平面上,其间的距离为d。图中的四边形即为炮弹落点所在的垂直面。
在已知炮弹飞行速度以及炮弹飞行水平距离的情况下,可以利用中学物理知识计算出炮管的仰角,也就是炮弹初速度的方向。实际上满足条件的角度可以有两个解,一个高抛物线,一个矮抛物线。默认选择矮抛物线。仰角在图中用θ表示。
下面考虑火炮精度问题。在游戏中每门火炮都拥有自己的精度数据。其精度用百米精度来表示,指炮弹飞过100米远时在横向最大的偏移。在我们的模型中,火炮精度用以炮弹初速方向为轴的一个圆锥表示。圆锥母线与轴的夹角利用百米精度的数据算出。
接下来,从圆锥上选一系列母线,分别当做炮弹的初速度方向对其飞行轨迹进行计算,炮弹在终点平面上的落点用圆点描出,从这一系列点围成的形状即可获知炮弹在终点的分布情况。实际上这一计算是在仿照游戏中火炮落点的计算。
以上便是本模型的计算方法。本程序使用python编写,作图使用了matplotlib工具包。
程序中使用的火炮数据为天蝎的数据。其百米精度为0.29。AP的飞行速度为920 m/s,APCR的飞行速度为1150 m/s,炮弹重力加速度为10 m/s2。火炮距离落点距离为400米。结果与讨论
1.终点散布情况
上面两张图是天蝎分别使用AP和APCR射击四百米外的目标时的落点图。首先我们可以看到落点的形状是完美的圆形,并不存在偏下方的炮弹会更多的现象。第二,两个圆的大小完全一致,也就是炮弹飞行速度对于主炮的精度也没有影响。
为了更直观的感受瞄准环的大小,我们把老鼠作为背景以供参考。
2.弹道形状
以上两张图为天蝎分别使用AP和APCR射击400米外目标的弹道。请注意图片的横纵坐标严重不成比例,实际上的弹道要平直得多。红线标注的位置即为落点平面。可以看到,两种炮弹的飞行轨迹存在微小的区别。AP弹由于弹速较慢,飞行轨迹的弧度较大,而APCR则较为平直。
我们以112为目标来看一下在炮弹终点周围的炮弹飞行轨迹。请注意这两张图的横纵坐标符合真实比例。我们将准心对准112的首下。我们看到,尽管两种炮弹的弹速存在一定差别,但是在炮弹落点附近很难看出弹道存在明显不同。无论是AP还是APCR都以几乎平行地面方向入射的角度击中112。另外请注意,此图中的绿色炮线仅为均匀分布在圆锥表面的炮线,并不代表炮弹散布的密度分布,并不要误解。
总结:
通过本研究,我们可以了解到:
1.无论炮弹飞行速度如何,击打在垂直平面上的炮弹散布始终为圆形,不存在向下的偏移。
2.炮弹飞行速度会对飞行轨迹产生影响,但是在终点附近这种影响并不大。
需要指出的是,本研究的结论仅在准心位于目标上时有效。在目标进行高速移动时,射击目标需要进行预瞄,有时需要将准心放在目标的前方。这种情况下系统将把鼠标指向的位置(地面)等作为目标并计算距离以及火炮仰角。这种情况下炮弹飞行速度将很大地影响射击体验。弹速快的话一方面可以减少提前量,另一方面减少火炮实际瞄准位置距离目标过远的情况。
本研究难免存在一些不足,欢迎讨论。