Pygame三角碰撞检测

时间:2016-02-26 21:38:31

标签: python pygame collision

我正试图在Pygame中为我的游戏进行三角碰撞检测。 我通过

成功地对所有矩形进行了碰撞检测
rect.collidelist(rectlist)

但是现在我已经实现了Poligons(或更精确的三角形),我不能做任何好的碰撞。三角形的碰撞是正方形,所以我现在不知道该做什么..

1 个答案:

答案 0 :(得分:3)

通常,2D冲突在大多数游戏开发框架中实现为正方形。它们被称为“碰撞盒”或“碰撞盒”。您可以安装PyGame扩展程序(如Pylygon)来处理多边形碰撞,或者有一个更简单的解决方案:

在三角形对象上使用多个碰撞框,几个小方块可以将碰撞检测与实际视觉轮廓非常接近地映射。当然这不是“像素完美”,但它通常效果很好,当然如果你需要非常准确的碰撞,这种方式也不适合它。

这是一张图片来说明我的意思:

Triangle (Black) Collision boxes (red)