通过吃鸡了解游戏的战斗系统(二):枪械的物理设计

发表于2018-11-07
评论0 4.7k浏览

关于射击类游戏通用的设计——枪械的物理设计。


一、物理引擎


一般来说,TPS类游戏可以归属在3D游戏之内。为了更好的呈现游戏世界的真实性,提供更好的游戏代入感。TPS类型的游戏都会使用物理引擎来进行游戏的制作。


什么是物理引擎呢?


物理引擎通过为刚性物体赋予真实的物理属性的方式来计算运动、旋转和碰撞反映。为每个游戏使用物理引擎并不是完全必要的—简单的“牛顿”物理(比如加速和减速)也可以在一定程度上通过编程或编写脚本来实现。然而,当游戏需要比较复杂的物体碰撞、滚动、滑动或者弹跳的时候(比如赛车类游戏或者保龄球游戏),通过编程的方法就比较困难了。


除了大面碰撞或一些常见的物理效果外,射击类游戏,还有很多需要深入计算的物理现象,比如后坐力、子弹弹道等等这些物理计算如果借助物理引擎,单纯的靠代码编辑无疑是很难的。



目前常用的物理引擎有:


  • 寒霜

  • Unity 3D

  • 虚幻 4

  • CryeEgine3


二、射击游戏中的物理特性


射击游戏中牵扯到大量的物理特性。如果以科学的态度来说这事儿,那可以写好几本物理书。所以我们这里只按照作为游戏化方式处理过后易于上手、又保留一定真实性的做法,来分析其中涉及到的物理特性。


2.1 后坐力


枪械发射时子弹壳同样受到火药气体的压力,从而推动枪机后坐,后坐的枪机撞击和枪托相连的机框,从而产生后坐力,因此理论上口径越大,撞击越猛,后坐越强,但是枪在设计时有缓冲机构,可以延长撞击时间从而减低后坐力,同时,高效的枪口制退器同样可以减小后坐力(原理类似火箭向后喷气),所以,后坐力的大小和口径有关,但枪械本身的结构设计影响更大。


在连续发射子弹的状态下,因为枪的威力,产生了一定的反作用力,这种作用力会使持枪不稳,造成射击精度不够。


我用几张图来说明不同枪械的后坐力:



自动步枪


下图是猎枪或者说是霰弹枪的后坐力慢镜头:


霰弹枪


下图是我武警特战人员,用手枪速射的效果。



根据上面几张图,可以看到不同的枪械,拥有不同的后坐力。


而在游戏中,要保留这种特性,但是又不能太过于真实让用户难以操作。所以会进行一定的弱化。


那么在游戏中,会弱化到什么程度呢?可以参考下图手枪的后坐力优化效果。


绝地求生


在连续射击时,枪械的后坐力才会有明显的体现,这时会出现控制不住的情况,感觉枪口不听话,很难打中人。


而这时,射击类游戏中的技巧“压枪”就出现了。


什么是压枪?


压枪的意思是当枪支连射后坐力变大时,使用拖动鼠标地方法控制好弹道尽量打在一个目标上。


每个射击游戏枪械的后坐力是完全不同的,需要在游戏时多多练习和习惯。一般压枪需要先习惯点射的子弹散布,再熟悉连射的子弹散布,根据这些数据,我们针对性的去压枪。


通过练习,可以做到将散布不均匀的弹道控制在一个密集的区域内,更好的对敌人造成有效的伤害。


在绝地求生中,某一武器在连续射击时,子弹分布如下图所示:


压枪之前,连续射击弹道分布成了一条直线:



压强之后,控制在了一个区域内:



而枪械的后坐力跟枪管长度、枪身质量、子弹出膛速度、子弹质量、口径、枪托形状等等一系列参数有关,我们就不展开讨论了。


在研发类似的游戏时,大多通过多次的模拟调整,通过正态分布的办法,来设计弹道散布的范围。


2.2 子弹弹道


子弹弹道分为内弹道与外弹道。我们这里只简单说明外弹道。


外弹道主要是讨论弹头飞出枪口后,影响其飞行的各种因素。


任何在地球上的物体,都会受到地心引力的影响。弹头一出枪口, 加速就停止了。引力会将弹头往地面拉。 所以任何弹头的飞行路线都是弧形的。如果枪管与地面平行, 弹头永远不会和枪管延长线的任何一点交会。所以, 枪管都是微微朝上的


下图是一张G3步枪的弹道图,大家可以直观的理解弹道的含义。


G3自动步枪


  • 红线:视线

  • 黑线:子弹轨迹


因此,在设计枪械的弹道时,可以参考如下的计算公式,来计算弹丸的弹道曲线(不考虑空气阻力)


s=ut+1/2at2


其中:


s=distance (距离)

u=initial velocity(弹丸初速)也写成 Muzzle velocity

a=acceleration(加速度)

t=time passed(时间)


如上图可以看出,在子弹射出后,距离越远,其子弹下坠的幅度越大,所以要打中远距离的目标就需要抬高枪口,增加射击角度,用以命中目标,这就是“归零点”。


射击方式


在大部分游戏中,很少有做的与现实相似的情况,大部分弹道屈居于平直,让玩家更好操作。而做的趋近于真实的游戏,更多的是面相军迷等专业的爱好者。比如《狙击精英》系列。


总结


射击游戏中核心的系统设计就讲解完了。主要是科普一些制作的原理与技巧。其实当一名游戏设计师并没有那么简单。

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引