如何使用Pixmap Libgdx进行碰撞

时间:2017-04-06 13:10:36

标签: java android libgdx collision pixmap

我正在制作一个游戏,其中黑色的块在白色背景中掉落。我的头像,红色是躲避黑色块,但如果它击中黑色块,游戏就结束了。有人可以帮我开始吗?我只想让头像检查块位置的像素是黑色还是白色。感谢。

1 个答案:

答案 0 :(得分:2)

您可以使用getPixel()方法从Pixmap读取像素值:

https://libgdx.badlogicgames.com/nightlies/docs/api/com/badlogic/gdx/graphics/Pixmap.html#getPixel-int-int-

因此,如果您可以对需要检测的对象进行一些近似,那么可以使用它。即如果你的对象是(几乎)方形或圆形或类似的东西,那么你可以设置代表它的4个点。然后你可以检查这4个点,如果它们中的任何一个处于碰撞状态,那么你的对象也处于碰撞状态。

但是如果你需要“像素精度”并且你的精灵是200x200像素,那么你需要检查200x200 = 40 000像素,这当然是不可能的,所以你应该去寻找其他选择。