2012-01-19 52 views
0

在我的cocos2d box2d应用程序中,我有两个物体,第一个具有矩形形状的一个夹具,另一个具有复杂的形状。当这些身体相互接触时,我必须计算一些东西。问题是当它们碰撞时,接触监听器处理与第一个主体接触的多个夹具(因为它们可能同时发生碰撞)。我需要每次只处理一个夹具接触,有没有办法达到这种行为?Box2d复杂形状的接触

回答

2

使用box2d主体的userData属性。处理碰撞时,将布尔值设置为true并将其分配给用户数据,然后在调用world->update之前,循环遍历所有物体并清除此布尔值。