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

有人可以解释使用box2d为android进行碰撞检测的方式.我无法理解以什么方式工作BBContactListener.

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

如何使用该听众?我应该延长标准来创造我自己的或如何?

解决方法:

我没有使用box2d用于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’

上一篇:c# – 具有厚壁的2D迷宫中的碰撞检测


下一篇:Linux快速入门01-基础概念