如何确定轴对齐边界框碰撞中的碰撞法线?

时间:2011-05-29 17:30:50

标签: collision-detection intersection bounding-box aabb

我有一个3D移动盒和一个固定盒子。我可以检测到碰撞,但现在我想将移动的盒子作为碰撞响应滑动到静止盒子上。为此,我需要与移动盒子碰撞的脸部法线。有谁知道我怎么想这个?碰撞测试似乎没有给我这些信息。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

面的法线等于与面相邻的所有边的两个连接边的矢量之间的叉积。

设a,b和c为面部4个点中3个的位置矢量:

//edge a<->b
Vector3f ab = b-a;

//edge b<->c
Vector3f bc = c-b;

//normal of the face
Vector3f normal = Vector3.cross_product(ab,bc);

如果你不知道两个三维向量之间的叉积是什么,你可以看一下:http://en.wikipedia.org/wiki/Cross_product