FPS枪械手感设计
FPS枪械手感设计
前言
毋庸置疑,枪械是FPS游戏中玩家和游戏之间最主要的战斗交流,而枪械手感则对它起到至关重要的影响,正如同大家一说到格斗游戏就会提起打击感一样。枪械手感是如何设计的呢?本文结合作者的实际项目经验和总结,分享一些最基本的要点,希望能够抛砖引玉,看到更多专业枪械设计者的分享。
散射
散射又称为弹道偏移或准心扩散,设计目的是模拟枪械未开镜状态下连续射击时的精准率下降。在FPS游戏中仔细观察我们可以发现,射击时十字准心会向四周扩散开,停止射击时十字准心会收缩直至初始位置,而散射的范围就在十字准心的空心区域圆内随机。准心扩散越大,散射随机范围就越大,子弹的落点就越不可控;准心扩散小到极限时则为十字准心的交点,此时无散射,指哪打哪。
图中准心中间的红圈位置即为散射范围
通常会通过配置枪械的初始散射角度(初始准心大小)、射击时散射角度(射击时准心扩散)、散射回归速度或时间(准心收缩至初始状态的速度或时间)、最大散射范围(准心扩散的范围上限)这四个维度,去调控枪械散射的手感。调到怎样的感觉才是好的呢?那就考验枪械策划对枪的了解程度了。可以参考现实的枪械资料和优秀FPS游戏里的枪械设计,可以在各类游戏枪械说明的网站查找到参考资料。
除了射击时,在一些其他情况下也有可能引起准心的扩散。比方说当移动、转身或跳跃时,此时如果射击,散射程度也会加大。还有好多游戏,下蹲时准心会稍微收缩,此时如果射击,散射程度会减少。这类设计的目的是模拟移动和转身时瞄准难度的提高,保证蹲点射击的意义,另外还需要结合游戏整体设计而定。
游戏里,散射相关的属性一般称为精准性,精准性越高,则散射程度越低。
后坐力
枪械发射子弹时,弹壳受到火药气体的压力,从而推动枪机后坐,撞击到和枪托相连的机框,从而产生后坐力。这种反作用力会使得持枪不稳,从而引起枪口的偏移,多数为向上偏或斜向上偏。在游戏中,通过整个FOV(包括FOV中心的准心、右下角持枪)的偏移配合持枪动画来模拟这种效果。
枪械后坐力示意动画
通过配置垂直方向的偏移基础值、随机值、最大值,水平方向的基础值、随机值、最大值这几个维度,来调整枪械后坐力的方向和大小。此外,还需要配置后坐力返回速度,以模拟手臂拉住枪的效果。具体一把枪的后坐力如何确定,还需要参考现实的枪械和优秀FPS游戏里的枪械设计,可以在各类游戏枪械说明的网站查找到参考资料。
表现枪械后坐力时,枪械动作需要做相应的配合。每次开枪时,受到反向的作用力会使得整把枪向后顶,此外枪口可以十分轻微的上抬。动作越猛烈,给予视觉上后坐力的感觉就越强烈。需要注意的是,枪口开火特效和子弹出膛的时机应该是在受力之后,约在整个射击动作的第2、3帧。开火后,受力完毕,枪械回复初始位置。
除了射击时,在一些其他情况下也有可能引起持枪不稳枪口偏移的情况,比方说在受击的时候。这个设计目的是模拟受击时的受力效果,但是为了避免过于影响玩家的瞄准,偏移的幅度不会调得太大。遇到一些概率较低的大受击时,可以用很轻微的震屏效果来表现。此外,在不开火状态时,有时候会配置一个轻微的FOV及准心偏移浮动,以模拟人物持枪呼吸的感觉。尤其在狙击枪开镜状态下,这个呼吸时的浮动效果就会明显很多,甚至对远距离的瞄准造成很大的影响。
游戏里,后坐力相关的属性一般称为稳定性,稳定性越高,则后坐力越小。
开火间隔
按住开火按钮不放,两发子弹之间的最低时间间隔即为开火间隔。开火间隔的设计目的是做出不同枪械的射击体验差异。
枪械连续射击示意动画
开火间隔的配置方式比较简单,直接配置一个需要的时间即可,但是为了使得整个连续射击过程更加流畅,开火间隔和枪械动作的设计需要十分紧密的配合。首先,连续射击时由于连续受到后坐力的作用,动作制作时不可能枪每次后座后都完全回到初始位置。这样会显得整个动作过程很木讷很不流畅,所以进入连续射击循环时,可以把开火前的两帧和最后的两三帧掐掉不播。再者,连续射击时动作的帧数要和开火间隔时长完全匹配。由于开火间隔一般都较短,而射击动作时长通常都比开火间隔要长,所以除了以上说的减帧的方式之外,还可以给动作在连击时做些稍微的加速。
游戏里,开火间隔相关的属性一般称为射速,射速越高,则开火间隔越低。
重量
枪械重量也是一个很重要的手感,火力大并且载弹多的机枪需要设计得偏重,比方说CS里的M249(快捷键B51)。这样才能保证轻便枪械的优势,比方说CS里的沙鹰和MP5。可以通过调整移速和转身速度来做出游戏中枪械的重量差异。大家在玩CS用狙击枪时,跑路就切刀或手枪等轻便武器,也正是这个道理。
如果只需要根据手持的枪械判定重量,那么直接给每把枪配置个移动速度和转身速度即可。如果游戏中除了枪械还涉及其他物品或背包枪械的重量,那么则要给不同的枪械配置重量,然后根据重量换算移动速度和转身速度。不同重量的枪械,在设计动作时也要做出差别。重量大的枪械动作上需要体现出笨重的感觉,而轻便的枪械则要敏捷灵活一些。
游戏里,重量相关的属性一般称为便携性,重量越低,便携性越高。
载弹量及备弹量
载弹量即单个弹夹的容量,打空后则必须填充子弹才可继续射击。备弹量则为可供填充的备用子弹量,用完则无法为枪械填充子弹。这两个属性理解和实现起来都相对简单,然而却十分关键,决定了不同枪械的战斗节奏和策略差异。载弹量大的枪械可以选择用来做火力压制和掩护,而载弹量小的枪械例如手枪则不具备这一优势。
配置枪械的载弹量和备弹量时,不仅要达到设计目的,还需要参考真实的枪械类型。因为不论是枪迷抑或是FPS玩家,都对枪械有很高的认知。如果一把正常大小的手枪的弹夹容量是30颗子弹,那就很可能不太合适了。
换弹速度
不同类型的枪械,换弹速度也需要有区别。一般来说,狙击枪、重机枪的换弹速度肯定低于手枪的换弹速度。此外,当双方火力对峙时,换弹速度也是一个重要因素,尤其是双方都在没有掩体掩护下的单挑时。
换弹速度本身很容易调配,也是参照真实的枪械和其他FPS游戏。但是换弹动作由于需要和换弹消耗时间严格匹配,所以在制作动作前要对动作时间有个比较精准的要求。此外,动作设计上也要有笨重缓慢和敏捷迅速的区别。微调时,同样也是可以通过调整动作播放速度的百分比来达到目的。
射程
射程也是做出枪差异化的重要维度,当敌人位于一定距离之外时,枪的输出会衰减。距离越远,衰减越大,直至达到最小值。曲线类型可以参考下图。
横坐标是距离,纵坐标是伤害
不同类型的枪械,射程伤害曲线就很不一样。比方说同是突击步枪的MP5和AK47,虽然MP5稳定轻便射速快,但是中远距离对点时伤害衰减较大;而AK47,虽然不稳且射速慢,但是中远距离点射时,伤害衰减却很少。
穿墙能力
部分枪械可以具备一定的穿墙能力,穿墙伤害按百分比衰减,一些游戏也有概率穿墙的设计。设计目的是对掩体有一定的压制,以达到一些战术上的配合或是枪械选择的策略。但是不论如何,具备穿墙能力的枪械只能出现极少量,穿墙伤害和概率也不宜过高,不然严重削弱掩体的作用,会降低FPS游戏的策略,破坏整个战斗体验。穿墙能力的配置方式也比较简单,配置穿墙伤害衰减和穿墙概率即可。
结语
本文介绍了FPS游戏中常见的枪械手感属性和它们的基本设计方法。如果有疏漏和理解或说明不当的地方,还请大神们补充和指出。十分希望能看到更多关于FPS枪械设计的分享。