在我的Cocos2d-JS
游戏中,我有两个节点(三角形),我想检测它们之间的碰撞,即当一个移动到另一个时?
我在API中找不到任何帮助。我该怎么办?
var top = new cc.DrawNode();
var points=[cc.p(0,0), cc.p(5,0),cc.p(2.5,5)];
top.drawPoly(points, cc.color(255,0,0,255), 3, cc.color(255,255,255,255));
top.x =size.width/2;
top.y =size.height;
top.rotation=180;
top.anchorX=0.5;
top.anchorY=1;
var left = new cc.DrawNode();
var points=[cc.p(0,0), cc.p(0,5),cc.p(5,2.5)];
left.drawPoly(points, cc.color(0,0,0,255), 3, cc.color(255,255,255,255));
left.x =0;
left.y =size.height/2;
left.anchorX=0;
left.anchorY=0.5;
现在,当顶部向左移动时,我想检测碰撞?
答案 0 :(得分:1)
这里有3个选择:
一个。创建自定义多边形碰撞检测代码
湾使用cc.rectIntersectsRect(top, left)
通过边界框将三角形视为正方形
C。使用Chimpmunk或Box2D为您处理碰撞检测
this forum thread中讨论了所有3种备选方案。