Android Box2D碰撞检测:如何测试特定的边界?

时间:2011-08-25 08:37:58

标签: android collision-detection box2d andengine

我正在尝试使用AndEngine和Box2D物理插件制作简单的滑板游戏。我正试图制作一个“研磨”轨道并且需要测试我的播放器的底部是否与研磨轨道的顶部发生碰撞;我知道这样做的常用方法是沿着精灵的每个边缘将碰撞盒的大小调整为1个像素并测试碰撞,但我不知道如何调整任何精灵体的碰撞盒的大小。

我只是使用Andengines碰撞检测,但box2Ds碰撞检测和一般物理停止一些被检测为与AndEngines碰撞检测碰撞的东西,所以我一直在尝试为我的物理世界创建一个新的'ContactListener'并玩弄'beginContact(联系人联系人)'方法,但区分碰撞的事情要简单得多,而且我不确定我在做什么......

另外,我希望我的播放器能够通过轨道(在它前面),但此刻我的播放器与其边缘碰撞并停止。

目前box2D似乎比它的价值更多的努力,我很想把它从我的代码中删除,而只是选择AndEngines碰撞检测并对我自己的简单物理进行破解......

1 个答案:

答案 0 :(得分:1)

您可以将'Userdata'(Type:Object)附加到您创建的Body对象。我会制作一些Userdata类,并像SkateBoardUserdata和GrindRailUserdata一样扩展。