有没有办法删除与精灵关联的 b2body ?精灵应该出现在屏幕上,但没有物理。
我正在使用 cocos2d Box2d。
有没有办法删除与精灵关联的 b2body ?精灵应该出现在屏幕上,但没有物理。
我正在使用 cocos2d Box2d。
我们将精灵作为 b2body 的用户数据。因此,如果您想删除具有特定精灵作为用户数据的主体,那么您必须遍历世界上目前存在的所有主体,然后与它们一一比较,如果找到,则删除相应的主体。假设您要删除与 CCSprite* temp 对应的正文;
for(b2Body *b = _world->GetBodyList(); b; b=b->GetNext()) {
if (b->GetUserData() != NULL) {
CCSprite *sprite = (CCSprite *)b->GetUserData();
if (sprite==temp) {
world->destroyBody(b);
break;
}
}