Cross Product of two vectors.
// Get the normal to a triangle from the three corner points, a, b and c. function GetNormal(a: Vector3, b: Vector3, c: Vector3) { // Find vectors corresponding to two of the sides of the triangle. var side1 = b - a; var side2 = c - a; // Cross the vectors to get a perpendicular vector, then normalize it. return Vector3.Cross(side1, side2).normalized; }
using UnityEngine; using System.Collections; public class Example : MonoBehaviour { Vector3 GetNormal(Vector3 a, Vector3 b, Vector3 c) { Vector3 side1 = b - a; Vector3 side2 = c - a; return Vector3.Cross(side1, side2).normalized; } }
import UnityEngine import System.Collections public class Example(MonoBehaviour): def GetNormal(a as Vector3, b as Vector3, c as Vector3) as Vector3: side1 as Vector3 = (b - a) side2 as Vector3 = (c - a) return Vector3.Cross(side1, side2).normalized