Cocos2d Box2d碰撞展望未来

时间:2014-06-23 00:00:35

标签: box2d cocos2d-x

所以我试图用box2d测试cocos2d-x中的碰撞。在我的游戏循环中,我正在移动精灵而不使用box2d物理。我确实在box2d中设置了一个主体,这样我就可以将矩形设置为正确,但是当它碰撞时,它会与另一个物体重叠。我想让它停在碰撞的地方。我知道它为什么这样做(这是因为它被告知移动8点并且碰撞发生在4)但是我不知道如何让它准确地停止它碰撞的地方。如果我这样做:

float x = a->getPosition().x + (a->getContentSize().width / 2) + (b->getContentSize().width / 2);
b->setPositionX(x);

它可以工作,但你可以看到它在完成移动8点并返回4点后跳跃。我不确定我是在做这个完全错误还是什么,但是我似乎无法让它停止在没有跳跃的情况下碰撞的地方。也只是让你知道更新的样子:

Vec2 pos = _enemy->getPosition();
pos.x -= _scrollSpeed;
_enemy->setPosition(pos);

_scrollSpeed = 8顺便说一句

非常感谢任何帮助。

0 个答案:

没有答案