Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个球在一个立方体内移动,我检测到它何时离开立方体(带有一个边界球和一个边界框)。现在我想检测球从哪一侧出去。然后我可以将球重定向到正确的方向。我怎样才能用球的“世界”矩阵做到这一点?
我应该自己跟踪球的坐标,还是应该从世界矩阵中推断出它们?
我会从碰撞重新开始。你有六个平面(每个平面是一个 [point,normal unit vector] 对)和一个球体(一个 [point,radius] 对)。
检查每个平面的点。为此,请从该点减去平面的单位矢量,按球体半径按比例放大。(点 -= PlaneUnitVector * 半径)
现在,通过一些矢量数学,您可以看到它在平面的哪一侧。
然后,您将使用平面的单位矢量进行反弹计算。
您将遇到的下一个问题是您一次穿越多个飞机的情况。