Java 检测对象与box2d碰撞的干净方法

Java 检测对象与box2d碰撞的干净方法,java,box2d,libgdx,Java,Box2d,Libgdx,我最近一直在研究box2d(在java中使用libgdx),并一直在尝试创建我自己的自定义反弹效果(我在第一次反弹后增加了恢复) 作为测试,我只需检查对象的位置并等待第一次反弹 但现在我想实际实现它,遇到了一个问题:如何在box2d中检测两个特定对象的碰撞 我发现这个教程: -但我非常不愿意使用该代码。必须有一种更简单、更干净的方法来检测两个对象之间的碰撞(无需设置用户数据并使用giantif()conditions…)检查所有碰撞) 有人能帮我吗?(假设我不只是抱有希望,实际上还有更好的方法)

我最近一直在研究box2d(在java中使用libgdx),并一直在尝试创建我自己的自定义反弹效果(我在第一次反弹后增加了
恢复

作为测试,我只需检查对象的位置并等待第一次反弹

但现在我想实际实现它,遇到了一个问题:如何在box2d中检测两个特定对象的碰撞

我发现这个教程: -但我非常不愿意使用该代码。必须有一种更简单、更干净的方法来检测两个对象之间的碰撞(无需设置用户数据并使用giant
if()
conditions…)检查所有碰撞)


有人能帮我吗?(假设我不只是抱有希望,实际上还有更好的方法)

子类
b2ContactListener
类来处理冲突和重新实现冲突回调。那么就:

MyContactListener *listener = new MyContactListener();
myB2World->SetContactListener(listener);

请注意,有些解决方案没有捷径,但你可以找到正确的解决方案,可能有100种方法可以检测碰撞,你知道,不是吗?例如,这类似于box2d碰撞检测程序的解决方案


@ USER772006:它是C++。在java中,您必须删除*并将->更改为。是的,我将添加b2ContactListener不存在(可能不再存在),类是:ContactListener