public ShapeBuilder(Model model) { this.model = model; if (index_dictionary.ContainsKey(model)) { this.vertices = vertex_dictionary[model]; this.indices = index_dictionary[model]; } else { this.indices = new List <Triangle>(); this.vertices = new List <Vector3>(); MeshReader.ExtractTrianglesFrom(model, vertices, indices, Matrix.Identity); index_dictionary.Add(model, indices); vertex_dictionary.Add(model, vertices); } }