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