LibGDX - 检测碰撞的最佳方法

时间:2013-01-15 14:25:30

标签: opengl-es collision-detection game-engine libgdx

我有一架飞机。我使用rectangle来限制这架飞机来检测碰撞并且效果很好。当飞机开始摔倒时,我会旋转飞机的纹理,但rectangle保持不变。我不知道如何旋转它。我需要用飞机的纹理旋转它,因为我的外壳不会碰撞飞机的尾部和舱壁。

enter image description here

如何旋转矩形或者创建多边形以包裹所有飞机?任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:2)

@ jellyfication的答案指向光线投射,但您可以实现的另一种简单方法是分离轴定理。下面的链接将详细说明算法的内容以及如何实现它。他们还有一些交互式演示,因此您可以“了解”算法正在做什么。

祝你好运!

答案 1 :(得分:1)

使用polygon类来绘制边界框。

然后在多边形类中有一个旋转方法。

使用平面旋转并移动多边形。