public static Vector3 ProjectVectorOnPlane(Vector3 planeNormal, Vector3 vector) { return vector - (Vector3.Dot(vector, planeNormal) * planeNormal); }