龙空技术网

cocos creator3步教你学会creator 物理引擎

游戏开发达人 145

前言:

此刻姐妹们对“cocosjs物理引擎”可能比较关心,咱们都想要学习一些“cocosjs物理引擎”的相关内容。那么小编也在网络上网罗了一些有关“cocosjs物理引擎””的相关知识,希望同学们能喜欢,朋友们快快来学习一下吧!

今天我们来一起来说说Creator物理引擎的使用, 三步教你学会物理引擎。

第一步: 开启物理引擎

(1):编写一个js组件脚本,在onload函数里面实现如下代码

properties: {

is_debug: false, // 是否显示调试信息;

// 重力加速度是一个向量, 有方向的,2D, Vec重力加速度的大小;

gravity: cc.p(0, -320), // 系统默认的

},

onLoad() {

cc.director.getPhysicsManager().enabled = true; // 开启了物理引擎

if (this.is_debug) { // 开启调试信息

var Bits = cc.PhysicsManager.DrawBits;

cc.director.getPhysicsManager().debugDrawFlags = Bits.e_jointBit | Bits.e_shapeBit;

}

else { // 关闭调试信息

cc.director.getPhysicsManager().debugDrawFlags = 0;

}

// 重力加速度的配置

cc.director.getPhysicsManager().gravity = this.gravity;

},

注意,一定要把代码写入onLoad函数里面,开启物理引擎,配置调试区域,设置物体重力, 不能在start里面;

第二步:配置游戏世界的物体类型:

根据游戏的情况配置好游戏的物体类型,和碰撞矩阵,如图:

第三步: 配置物理物体:

(1) 添加一个刚体组件到节上,如图:

(2) 给节点上添加物理形状:如图;

第四步:碰撞检测:

那个节点需要检测碰撞,就在这个节点上挂一个脚本,在这个脚本上实现三个函数:

onBeginContact(contact, self, other): 碰撞开始

onEndContact(contact, self, othe): 碰撞结束

… …

contact: 获取碰撞信息对象, self发生碰撞的自己的碰撞器组件实例 , other发生碰撞的别人的碰撞器组件实例,

通过碰撞器组件实例,可以获得节点,碰撞的节点 other.node等。

大家学会物理引擎的基本使用了么?

标签: #cocosjs物理引擎