Esempio n. 1
0
        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));
        }
Esempio n. 2
0
        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);
        }