cocos2d-3.x中同时删除两个互相碰撞体的body,删除不了,哪位大神知道是什么原因?
我删除body的方法是用body的载体对象来删除
碰撞物体A->removeFromPhysicsWorld();
碰撞物体B->removeFromPhysicsWorld();
A,B都是加到同一个scene下
A和B发生了碰撞,body都是挂到A和B上的。假如我单独删除A,或者B是可以删除的。同时都删除就一个也删除不了了。请教原因
你是用引擎封装的物理引擎还是BOX2D?
如果是BOX2D,则删除刚体不能在碰撞检测函数里进行。因为刚体还在迭代,删除会出错,要正确地删除,应该在定义一个容器,
在碰撞检测函数里将检测到的要删除的刚体放进这个容器,然后碰撞检测之后再删除容器里的刚体。
不是在碰撞检测函数里面,我是在其他地方做的删除