在LibGdx

时间:2015-07-05 19:12:43

标签: java android libgdx collision-detection

我正在开发一个简单的游戏,我需要检测对象之间的碰撞,我已经知道如何检测2个精灵之间的碰撞,但现在我需要检测精灵之间的碰撞和使用{{1技术。假设我有一个像这样定义的精灵:

ShapeRenderer

和这样的一行:

Texture texture = new Texture(myPath);
TextureRegion textureRegion = new TextureRegion(texture, w, h);

有没有办法检测这两个对象何时发生碰撞?

1 个答案:

答案 0 :(得分:2)

在不知道你是如何检测精灵碰撞的情况下,我建议使用几种不同的选项。

  1. 如果您正在使用box2d进行当前的碰撞检测,并且没有很多线要使用shapeRenderer渲染,您可以考虑创建一个体/夹具来表示线,使其成为传感器和像对待其他机构一样使用联系人监听器。

  2. 或许更简单的方法可能是使用libgdx的Intersector类并在那里寻找可能对您有帮助的方法。例如,

    public static boolean intersectLinePolygon(Vector2 p1,Vector2 p2,Polygon polygon)

  3. 可能适合你,其中p1是你的(x1,y1),p2是你的(x2,y2)和多边形映射到你的textureRegion。