繁体   English   中英

矩形之间的碰撞检测2D

[英]Collision detection 2D between rectangles

我正在为我的游戏编写一个碰撞检测引擎,但是我遇到了一些问题。

确实,由于我有几个固定的矩形和一个移动的矩形(玩家),所以我需要知道固定的矩形的哪一侧首先被玩家碰撞,才能正确替换他。

固定矩形不在网格中,因此可以将其放置在地图上的任何位置,并且可以具有不同的大小。 它们没有旋转。

玩家类存储它的方向向量。

任何想法?

风筝

名称为“轴对齐边界框”碰撞检测。

现在您知道了名称,剩下的可以用Google了。

简而言之:
您将相互比较边界矩形的Y和X分量以检查是否存在碰撞。 如果玩家的最高(Y)小于敌人的最低,则您不再需要检查,因为他们不可能发生碰撞。 如果玩家的右侧(X)小于敌人的左侧,那么他们将无法碰撞。 这将有助于在类中定义要检查的每个对象的顶部,右侧,底部,左侧。 这将使您也知道哪一侧被击中。 这应该足以让您思考和尝试。
玩得开心!

感谢你们俩的帮助。

我听说过AABB,但乍一看似乎不符合我的需求(因为我不太了解)。

但是在将所有内容写下来后,我发现的解决方案似乎与AABB完全相同!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM