使用Box2d进行碰撞检测(适用于Android)?

时间:2012-01-21 07:20:53

标签: java android box2d collision

有人能解释一下使用box2d for android进行碰撞检测的方式。我无法理解以什么方式运作BBContactListener。

BBContactListener listener = new BBContactListener();
world = new BBWorld(gravity, doSleep);
world.SetContactListener(listener);

如何使用该侦听器?我应该扩展标准来创建我自己的或如何创建?

1 个答案:

答案 0 :(得分:1)

我没有使用box2d for android,但我认为这个想法是一样的。您必须实现联系处理方法。这是在C ++中实现它的方法。

class ContactListener : public b2ContactListener
{
public:
    ContactListener();
    ~ContactListener();

    void BeginContact(b2Contact *contact) {...}
    void EndContact(b2Contact *contact) {...}
    void PreSolve (b2Contact *contact, const b2Manifold *oldManifold) {...}
    void PostSolve (b2Contact *contact, const b2ContactImpulse *impulse) {...}
};

然后将这个课程传递给`b2World'