我怎样才能从一组顶点得到一个平面的法向量?

我正在研究一个HLSL / C ++小型项目来检查我的graphics工作,我不确定我是如何从顶点多边形获取面向量的。 我似乎无法find公式。

职位是P1,P2,P3

我们把它们称为类VertexPoint,例如P1.x,P1.y,P1.z?

通过计算两个向量V1 = P2-P1和V2 = P3-P1,可以很容易地find法线,然后find叉积N = V1×V2。 然后你规范N.取决于顶点的顺序(顺时针或逆时针),你会得到一个正常的正面或背面。

你还需要确保三点不alignment,如果他们是你必须select另一个点。