public static void Export(BF2SkinnedMesh mesh, string filename, int geoMatIdx) { StringBuilder sb = new StringBuilder(); Helper.BF2MeshSKMGeometryMaterial lod0 = mesh.geomat[geoMatIdx]; int vertexcounter = 1; for (int i = 0; i < lod0.numMaterials; i++) { Helper.BF2MeshSKMMaterial mat = lod0.materials[i]; List <RenderObject.VertexTextured> list = new List <RenderObject.VertexTextured>(); int m = mesh.geometry.vertices.Count / (int)mesh.geometry.numVertices; for (int j = 0; j < mat.numIndicies; j++) { int pos = (mesh.geometry.indices[(int)mat.indiciesStartIndex + j] + (int)mat.vertexStartIndex) * m; list.Add(mesh.GetVertex(pos)); } if (mat.numIndicies != 0) { WriteObject(sb, list, "Material" + i, vertexcounter); vertexcounter += list.Count(); } } File.WriteAllText(filename, sb.ToString()); }