private Vector3 GetNormal(CollisionTri tri) { Vector3 a = new Vector3(tri.x1, tri.y1, tri.z1); Vector3 b = new Vector3(tri.x2, tri.y2, tri.z2); Vector3 c = new Vector3(tri.x3, tri.y3, tri.z3); return(GetNormal(a, b, c)); }
private static void GetTriangleData(short[] verts) { CollisionTri T = new CollisionTri(); T.v1 = ReadVertex(verts[0]); T.v2 = ReadVertex(verts[1]); T.v3 = ReadVertex(verts[2]); vecf32 AB = Subtract(T.v2, T.v1); vecf32 BC = Subtract(T.v3, T.v2); T.u_n = Normalise(CrossProduct(AB, BC)); T.d = PlaneDist(T.u_n, T.v1); }