1

首先,对不起我的英语,我不是美国人。我的问题是如何从空间中移除形状和身体,这与碰撞检测无关。我试图通过触摸事件来做到这一点,特别是我正在尝试清除一个触摸它的球(我在空间中有很多球),但我不知道该怎么做,我一直在寻找互联网和找不到任何关于如何做的帮助,所有这些都与碰撞有关,这不是我需要的。

我阅读了很多次文档,但没有包含任何有用的信息如何做到这一点。只有如何用碰撞删除。我知道如何用碰撞删除:

静态 void postStepRemove (cpSpace *space, cpShape *shape, void *data) {

//Remove the shape and body
cpSpaceRemoveBody(space, shape->body);
cpBodyFree(shape->body);
cpSpaceRemoveShape(space, shape);
cpShapeFree(shape);

}

静态 int 冲突(cpArbiter *arb,cpSpace *space,void *data){

     cpShape *a, *b;

 cpArbiterGetShapes(arb, &a, &b);

    cpSpaceAddPostStepCallback(space, (cpPostStepFunc)postStepRemove, a, nil);
    cpSpaceAddPostStepCallback(space, (cpPostStepFunc)postStepRemove, b, nil);
    return 0;
}
return 1;

}

我将它与碰撞一起使用,但我需要一些没有碰撞的示例。

4

1 回答 1

-1

找到库文档并阅读该死的手册: Chipmunk 物理文档

cpBodyFree并且cpShapeFree似乎是您需要的 API 调用。Cocos2d 在调用它们时可能有一些绑定。如果您需要了解有关这些调用的更多信息,请查找 Cocos2D 文档。

于 2010-07-25T07:18:08.613 回答