我完全不了解chipmunk,只是用了几天,所以我猜这应该是非常明显的事情,但我找不到任何文档。在chipmunk中是否有任何回调或方法可以告诉您两个给定形状已经碰撞?
如果没有,那么最好的方法是简单地在精灵上使用cgrectcontains吗?
-奥斯卡
我完全不了解chipmunk,只是用了几天,所以我猜这应该是非常明显的事情,但我找不到任何文档。在chipmunk中是否有任何回调或方法可以告诉您两个给定形状已经碰撞?
如果没有,那么最好的方法是简单地在精灵上使用cgrectcontains吗?
-奥斯卡
这有帮助吗:
http://code.google.com/p/chipmunk-physics/wiki/CollisionDetection
// Reference line
// Does not collide with other objects, we just want to draw it.
shape = cpSegmentShapeNew(staticBody, cpv(-320,0), cpv(320,0), 0.0f);
shape->collision_type = 1;
cpSpaceAddStaticShape(space, shape);
// Add a collision pair function to filter collisions
cpSpaceAddCollisionPairFunc(space, 0, 1, NULL, NULL);
最后,使用Google代码搜索:
http://www.google.com/codesearch?q=lang:c+chipmunk+collision&hl=en&btnG=Search+Code
您可以通过Ipthnc的链接访问它,但这是您可能正在寻找的文档 - 它详细介绍了碰撞回调系统:
http://chipmunk-physics.net/release/ChipmunkLatest-Docs/#CollisionCallbacks