Cocos Creator 碰撞系统实践

 

本文概要

本文主要是讲解Cocos Creator碰撞系统的简单实践,并且结合一个简单小项目-飞机大战,来一起熟悉碰撞系统的使用。demo效果如下图。

 

Cocos Creator 碰撞系统实践

 

关于Cocos Creator 碰撞基本介绍,可以移步到官方网站去查阅。

https://docs.cocos.com/creator/manual/zh/physics/collision/

 

 

项目简介

 

 

Cocos Creator 碰撞系统实践

游戏中有一个场景GameScene,然后主界面单独做一个预制体MainPanel。MainPanel中主要节点的用途,上图中已经标注。游戏内的资源是网上随便找的,能用就行。Cocos Creator 碰撞系统实践

 

 

Cocos Creator 碰撞系统实践

在这个项目中,哪里用到了碰撞呢?子弹与敌机,我方战机与敌机之间是会发生碰撞的。子弹与敌机碰撞,都死翘翘;敌机和我方战机也死翘翘,游戏结束。那么我们需要新建组Group。新建三个组,一个enemy(敌机用到),一个hero(我方战机用到),bullet(子弹用到)。然后编辑碰撞对,在上图中,横竖交叉的地方,打钩就是表明,可以发生碰撞。没有交叉则不会产生碰撞。可以看出,本项目中,enemy和hero可以产生碰撞,enemy和bullet可以产生碰撞。

 

 

Cocos Creator 碰撞系统实践

在游戏中,子弹、敌人、我方战机(简称为英雄)会用到比较频繁,我们单独做成预制体,并且绑定对应的功能脚本。并且为他们添加碰撞组件。添加碰撞组件的步骤是点击添加组件,选择碰撞组件,选择Box Collider(矩形)/Circle Coliider(圆形)/Polygon Collider(多边形)。然后编辑Size大小和相对于节点的位置Offset

 

 

Cocos Creator 碰撞系统实践

Cocos Creator 碰撞系统实践

很关键的一点就是要在属性面板中,要选择对应的group。前往别忘记了这点。对应的节点要选择对应的组。enemy 预制体Prefab选择enemy分组,bullet预制体选择bullet分组,hero预制体选择hero分组。

 

Cocos Creator 碰撞系统实践

在添加碰撞组件的节点对应的脚本中,监听碰撞结果回调,去处理后面的逻辑。这里就不上代码了。

 

Cocos Creator 碰撞系统实践

 

 

我是小周,一名移动开发程序员。每天学习一点点,从小白到大牛,并非遥不可及。加油!

 

如有错误,还请指出,一起学习,一起进步!感谢你的关注!

做起来简单,码字不易。希望能得到你的点赞~