碰撞检测

 

  在在游戏进行的过程中,碰撞检测是一个很重要的部分,因为,当角色击中敌人时,敌人的生命值就应该减少或死亡,所以,角色是否击中敌人,就要使用一个比有效的方法去判断,否则,就会出现角色击中敌人,但敌人却没有死亡,又或者,没有击中敌人但敌人却出现了死亡,而当这样的情况出现以后,就会让整个游戏变得混乱。

 

  而在碰撞检测的过程我们需要做到以下3点:

 

  (1)为武器或子弹设置“碰撞点”,就是定义一个碰撞点的X与Y坐标,同时,在武器与子弹移动时,碰撞点的X与Y坐标必须一起进行移动的计算。

  (2)为敌人设置碰撞区域,而设置时,主要是设置碰撞区域的X与Y坐标,以及碰撞区域的宽度与高度,同时,当敌人移动时,碰撞区域也要跟随移动后的位置重新设置X与Y坐标。

  (3)当判断出“碰撞点”进入到“碰撞区域”以后,就可以判断碰撞产生,即击中敌人,所以,就可以进行击中敌人以后的处理。

 

 

  当我们了解完这些理论知识以后,就可以进入到游戏中,然后,立即通过动手实践把相关的代码实现出来,最终为游戏添加碰撞检测功能,从而实现子弹击中敌人后,敌人与子弹都会消失的效果。

 

(通过游戏模式学习与训练,需要在电脑上运行)

 

进入游戏学习与训练

 

 

 

 

本章学习后的代码运行效果如下:(可在手机上查看)

手机上通过触摸控制飞机的移动位置

电脑上通过鼠标按住左键或右键同时移动鼠标即可控制飞机的移动位置

 

Please use a browser that supports "canvas"