private static void ComputeVertexNormals(VertexPositionNormal[] vertices, IEnumerable<IndexedTriangleWithNormal> triangles) { foreach (var triangle in triangles) { var floats = triangle.Normal.ToArray(); vertices[triangle.A].Normal += new Vector3(floats); vertices[triangle.B].Normal += new Vector3(floats); vertices[triangle.C].Normal += new Vector3(floats); } foreach (var v in vertices) { v.Normal.Normalize(); } }