cocos creator 内置了简单的碰撞检测系统,会根据当前节点下添加的碰撞组件进行碰撞检测。它可以应用在很多场景,比如可以用来判断子弹是否碰撞到敌人。

碰撞组件

矩形碰撞组件:

圆形碰撞组件:

多边形碰撞组件:

属性 作用
Editing 选中之后,可以在场景编辑器中对碰撞组件进行编辑
Tag 如果节点下挂有多个碰撞组件时,可以根据标签来区分各个碰撞组件
Offset 组件相对于所挂节点的偏移
Size 矩形碰撞组件的大小
Radius 圆形碰撞组件的半径
Points 多边形碰撞组件各个顶点的坐标

碰撞系统接口

cc.director.getCollisionManager().enabled = true; //开启碰撞检测,默认为关闭
cc.director.getCollisionManager().enabledDebugDraw = true; //开启碰撞检测范围的绘制
cc.director.getCollisionManager().enabledDrawBoundingBox = true; //开启碰撞组件的包围盒绘制

碰撞系统回调

当碰撞系统检测到有碰撞产生时,将会以回调的方式通知使用者,如果产生碰撞的碰撞组件依附的节点下挂的脚本中有实现以下函数,则会自动调用以下函数,
碰撞产生时调用:

onCollisionEnter: function(other,self){//self代表当前节点的的碰撞组件,other代表和self产生碰撞的其他碰撞组件var world = self.word; //碰撞组件在世界坐标系下的相关值都放在world这个属性里面cc.log(world);
}

碰撞产生后,未结束前,每次碰撞计算后调用:

onCollisionStay: function(other,self){}

碰撞结束后调用:

onCollisionExit: function(other,self){}

world中的属性
矩形碰撞组件:

圆形碰撞组件:

多边形碰撞组件:

属性 解释
world.aabb 代表碰撞组件的aabb框,即碰撞产生时,碰撞组件的矩形框,是一个Rect
world.preAabb 代表碰撞前上一帧的aabb框
world.matrix 代表碰撞框的世界矩阵
world.position 代表碰撞时碰撞框的位置坐标(圆形碰撞组件特有)
world.radius 代表碰撞时碰撞框的半径(圆形碰撞组件特有)
world.points 代表碰撞时碰撞框的所有顶点坐标(矩形和多边形碰撞组件特有)

cocos creator 碰撞检测系统collider相关推荐

  1. 飞机大战-Cocos Creator 碰撞系统实践

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

  2. cocos creator 碰撞检测

    1.普通的碰撞检测 a.给精灵添加boxCollision b.代码里面开启碰撞管理 cc.director.getCollisionManager().enabled = true;//开启碰撞功能 ...

  3. 虚拟现实技术——Cocos Creator 动画系统动作笔记

    本文记录了大学期间使用Cocos实现2D的虚拟现实的课程作业,记录与之先关的一些动作. 动作 cc.ActionInterval 和cc.ActionInstant;var action = cc.m ...

  4. Cocos Creator Ui系统

    为什么80%的码农都做不了架构师?>>>    游戏场景:开发时组织游戏内容的中心:其中渲染根节点Canvas,包括属性 Design Resolution(设计分辨率) fit w ...

  5. Cocos Creator学习目录

    目录 安装和启动 文件结构 编辑器基础 基本概念 (场景树 节点 坐标 组件 ) Cocos Creator 脚本简介 Cocos Creator调试 节点 cc.Node 组件开发cc.Compon ...

  6. cocos creator基础-碰撞检测系统

    1: 掌握碰撞检测的基本步骤; 2: 掌握开启碰撞检测和响应碰撞; 3: 完成道具拾取案例,理解group与groupIndex; 1: creator有碰撞检测系统 +物理碰撞系统,这个是两个独立的 ...

  7. cocos creator实例--CocosCreator实现的 解救人质 游戏,学会碰撞检测

    游戏开发中,碰撞检测无处不在,今天就通过一个简单的小游戏教你学会如何在 Cocos Creator 中进行碰撞检测.配合官方文档学习效果更加(官方文档传送门:https://docs.cocos.co ...

  8. cocos creator 3.x 2d物理碰撞检测(不使用物理刚体)

    cocos creator 3.x 2d物理碰撞检测(不使用物理刚体) 前言 我含着热泪而来,因为获取不到2d物体的碰撞检测弄了半天.之前一直学2.x,后面学了3.x版本,发现对于新手来说,蛮多需要去 ...

  9. cocos creator 四叉树碰撞系统Demo

    先挂上demo链接,目前测试的是2000个节点的碰撞 Cocos Creator | QuadTree (myqcloud.com) 检测的节点越多,优化效果越明显. 优化的原理大致就是将屏幕划分成一 ...

最新文章

  1. 鸟哥的linux私房菜内容,《鸟哥的linux私房菜》学习笔记 权限
  2. python中文编码-python中文编码与json中文输出问题详解
  3. Android Activity中加入View后进行后台截屏截图
  4. 1332: 生日日数
  5. python正确打开方式_Python log 的正确打开方式
  6. Android—修改button属性
  7. C语言线性表怎么输入字符串,用c语言创建一个线性表输入元素求直接后继
  8. [Java] 蓝桥杯ALGO-78 算法训练 确定元音字母位置
  9. 大数据(二)Elasticsearch 分布式搜索引擎(存索引、索引搜索)
  10. win10远程计算机证书错误,win10系统下出现Wi-Fi证书错误的四种解决方案
  11. PMBus中的PAGE
  12. CSS中文字体如宋体/微软雅黑的英文名称写法
  13. 中国版Kindle Paperwhite使用评测
  14. 非线性方程求解 matlab,MATLAB应用 求解非线性方程
  15. 计算机统计大数据库,统计数据库
  16. CAD梦想画图中如何设置图层
  17. TD-SCDMA牵动3G牌照发放 重塑中国电信生态
  18. 关键字CORRESPONDING的用法
  19. OTU的定义与解读----了解笔记
  20. JavaScript下的setTimeout(fn,0)的作用,涨知识了

热门文章

  1. 解决KeyError-format
  2. CODEVS 1690 开关灯
  3. 回忆,更多的只是回忆!
  4. 售前工程师工作内幕揭秘:基础认知
  5. 1046 划拳 (15 分)
  6. web前端开发新技术,css全称怎么读
  7. angular 延迟时间
  8. 莫比乌斯函数的由来及推导
  9. Round Robin WRR DRR MiDRR WFQ
  10. 联想小新air13触摸屏失灵