我在box2D中有一个世界,我使用2个边缘体来表示墙(我有2个因为2个对象之间可以有不同的角度)。
我的问题是,每当圆形物体沿着第一条边缘移动时,当它到达第二条边缘时,它会检测到碰撞并从墙壁上反弹。即使两条边之间没有角度。
此外,如果我的圆形物体碰到两条边之间的连接点(有角度或没有角度),它会反弹到一个未确定的方向。
如何修复或阻止这种行为?
角度近似
答案 0 :(得分:2)
对于共线边缘,我会添加一些预处理,将两个共线边结合成一个以消除这些问题。
对于第二种情况。我想到的唯一一个是检测多个边缘的碰撞(有一些公差,肯定不是精确值),然后计算感兴趣边缘的平分线 - 基于此,圆形物体撞击边缘的角度计算新的角。