大家好,我们在开发一个赛车游戏。 
现在碰撞响应方面有些技术问题需要向高手们请教。
为了做碰撞检测,我们在赛道的两边是由N条折线(每段都是线段)构成的。然后检测赛车的多边形(是个矩形,但是会随着车头旋转的)是否和这些线段是否有相交,相交后开始做碰撞响应。
当赛车和一条线段碰撞的时候,则赛车沿着线段法向的速度为0,只剩下切线方向的速度,表现为赛车沿着墙壁前进。
我们遇到的问题是,当赛车在2条线段的交点处时,经常穿越和发生死循环, 请问有没有比较好的算法来解决这个问题啊,谢谢!

解决方案 »

  1.   


    1。汽车同时撞上左右两条相交的线段
    2。当撞上左线段时,车头向右,速度与左线段平行
    3。同时撞上右线段时,车头向左,速度与右线段平行变成了一个向正方向(因为车头往左转的同时又要向右转,造成了车头方向基本没变化)
    而速度同理,也是正方向这样,就又形成了汽车冲向这两个线段的交点,死循环是不是这样形成的?穿越不知道是什么原因这种同时撞两条线段情况是不是可以判定为撞车熄火停车?