gpt4 book ai didi

algorithm - 实现 2D 多体碰撞解决方案

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:08:04 25 4
gpt4 key购买 nike

我正在尝试制作一个没有脉冲、力等物理元素的 2D 碰撞检测和解决引擎。这很好地说明了我需要什么,有两个多边形碰撞:

2D Polygon Collision Detection

我了解了分离轴定理的工作原理以及如何使用它来检测两个多边形的交点并解决它。但是,我在实现多体碰撞解决方案时遇到了问题。下面是这种情况的一个例子:

enter image description here


矩形体 A 以速度 V 向上运动并与两个静止三角形相交。

我可以使用哪种算法来解决此类碰撞并找到我需要应用于 body 以防止穿透的位移量和方向?

最佳答案

如果我们添加以下限制,我们可以简化问题:物体只能沿着它的速度矢量移动。那么,至少有两个选择。

  1. 如果您有判断两个物体是否发生碰撞的算法,您可以对运动量运行二进制搜索(从 0.0*v1.0*v) 之后仍然没有与任何物体发生碰撞。然后,将 body (在您的示例中为红色矩形)仅移动该数量。

  2. 如果您有更好的算法可以告诉您两个物体沿向量 v 的最大移动量,之后仍然没有碰撞,只需取该值的最小值在所有物体中(在您的示例中是两个三角形)。

关于algorithm - 实现 2D 多体碰撞解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22779420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com