浅析反恐行动游戏引擎——碰撞检测

  碰撞检测。是物理系统的核心部分,它可以探测游戏中各物体的物理边缘。当两个3D物体撞在一起的时候,这种技术可以防止它们相互穿过。

  选择何种碰撞检测,与碰撞检测的精度、速度、实现的简单程度及系统的适应性有关。碰撞检测在3D游戏中至关重要,好的碰撞检测要求人物在场景中可以平滑移动,遇到一定高度内的台阶可以自动上去,而过高的台阶则把人挡住,遇到斜率较小的斜坡可以上去,斜率过大则把人挡住,在各种前进方向被挡住的情况下都要尽可能地让人物沿合理的方向滑动而不是被迫停下。在满足这些要求的同时还要做到足够精确和稳定,防止人物在特殊情况下穿墙而掉出场景。

  反恐行动碰撞类型:武器与场景,人物与场景,武器与人物3类碰撞。

  记得刚开始我的时候,因为了了以前玩过CS,所以,嘿嘿,看见敌人躲在掩体后,就是一梭子AK子弹打过去,想穿死那些家伙。囧,敌人在掩体后居然完好无损,掩体上只出现了子弹留下的弹痕,颜色有深有浅,最后居然被猥琐的掩体后敌人打成筛子。后面换成火箭,对着敌人掩体轰过去,期望打出个大洞来,囧,连弹痕也没有,掩体上只有爆炸的一个黑呼呼的爆炸圆。武器对掩体的攻击最多只能留下一个颜色深深的痕迹,欣慰的是可以留下不同的痕迹。猜想:间谍暗号,幽灵模式队伍里传闻双方队伍里有007,囧。利用武器对场景碰撞造成的痕迹向己方发情报。(碟中谍看1-3看多了嘿嘿。)

  人物和场景的碰撞大多要求都达到了上述的标准,在场景可以平滑移动,遇到一定高度内的台阶可以自动上去(如反恐行动的楼梯的每个阶梯高度),过高的台阶把人物挡住(如反恐行动里面的高箱子那个高度),遇到斜率较小的斜坡可以上去(如反恐行动游戏里面的楼梯的倾斜度),斜率过大则把人挡住(如反恐行动法老神庙里面拱门内侧的柱子倾斜度)。

  关于人物在特殊情况下穿墙而掉出场景,现在的每个游戏都不可避免,CF里面了了就经常莫名奇妙掉出场景(无底深渊,好黑,吓人。),反恐行动里面出现这种情况的几率很小,因为了了从封测到公测只见过一个人掉进去过。以前内测的时候在被人打死的时候会出现不能复活进行游戏,公测后者中情况了了基本没见过了。

  还有一个大家都知道的现象,反恐行动不能人梯,跳到头上,会一直从对方头上弹下来为止。通过网上资料推测:可能是碰撞的循环算法引起的,即碰撞没有发生,然后更新物体的位置,如果发现发生了碰撞,我们将把物体移回原来的位置不允许它穿越边界。当你挨着墙壁并试图穿过去的时候,视角就开始震动。你正经历的就是将主角移回原位的情况。震动是因为取了较大的时间片引起的。还有在法老神庙断柱那里有个小土堆的角落,往那里走就会出现上述现象。其次是幽灵基地通往A区管道出口的返回入口,据推测这个现象不是碰撞算法的最坏情况出现,而是极可能是哪个场景的带入算法里面的参数有问题导致的。其次,研究所A区管道穿人现象,可能是碰撞检测在处理2个人物,一个管道场景时候出现时,数据符合要求,但是不切实际的穿人情况。

  武器和人物的碰撞很经典,特别是在冷兵器对战的时候,人物受击打范围比人物实体还要大。据了了分析可能是采用AABB(axis-alignedboundingboxes)算法,其对一个需要快速反应的3D射击游戏来说,我们可以牺牲一些精度来换取速度和实现的简单化。所以在实战中离敌人远些攻击,再结合前面了了说的游戏引擎——动画动作篇。根据游戏实际效果,入门冷兵器作战的大门就为各位玩家打开大门了。子弹队人物的碰撞是很有强度的,人物上体中弹,视角瞄准器会晃动,特别是手臂和肩膀。各位新手注意啦。(了了是现在才知道的,很失败。囧)

反恐行动

进入专区>>
  • 游戏类型:网络游戏
  • 开发公司:金山游戏
  • 运营公司:金山游戏
  • 发行平台:PC

你对该游戏感兴趣吗?