我正在使用Chipmunk物理,并希望进行碰撞检测以找出2个cpBodies碰撞的时间。我有一些问题;
谢谢!
F。
答案 0 :(得分:0)
您需要添加以下行
shape-> collision_type = kCollisionTypeParticle;
cpSpaceAddCollisionHandler(space_,kCollisionTypeParticle,kCollisionTypeParticle,collisonDetect,NULL,NULL,NULL,self);
kCollisionTypeParticle是枚举,如果有两种不同的粒子,你可以定义它。
typedef enum {
kCollisionTypeParticle,
kCollisionTypeParticleNew
} CollisionType;
这里collisonDetect是我们需要注册的方法:
cpBool collisonDetect(cpArbiter * arb,struct cpSpace * space,void * data) {
* layer =(*)data;
[layer collisonDetect:arb];
return cpTrue;
}
现在,您将在这里处理其余代码
- (无效)collisonDetect:(cpArbiter *)ARB {
NSLog(@“碰撞检测”);
}
答案 1 :(得分:-1)
最后的救世主是: http://www.cocos2d-iphone.org/forum/topic/9425和cpSpaceAddCollisionHandler方法。