/// <summary> /// Agrega El/Los materiales, cambia el tipo de VertexElement /// </summary> /// <param name="objMaterialLoader">Clase ObjMaterialLader</param> /// <returns>MeshBuilder</returns> public MeshBuilder AddMaterials(ObjMaterialsLoader objMaterialLoader) { //create material // TODO MaterialsArray = new List <TgcObjMaterialAux>(); objMaterialLoader.ListObjMaterialMesh.ForEach(objMaterialMesh => { MaterialsArray.Add(CreateTextureAndMaterial(objMaterialMesh, objMaterialLoader.CurrentDirectory)); } ); //set nueva mesh strategy ChargueBufferStrategy = new ChargueBufferDiffuseMapStrategy(); // TODO ver que pasa caundo viene ligthmap return(this); }
public void GetListOfMaterials(string[] lines, string path) { //se obtiene puramente todas las lineas que son de material var linesFiltered = FilterByKeyword(lines, MTLLIB); //nos fijamos si tiene material if (linesFiltered.Length == 0) { return; } //agregamos la ruta de la carpeta donde se encuentran los materiales ObjMaterialsLoader.SetDirectoryPathMaterial(path); // foreach (var line in linesFiltered) { SetMtllib(line); } //Se hace parse de los materiales ObjMaterialsLoader.LoadMaterialsFromFiles(path, ListMtllib); //TODO ver si devuelve una lista de materiales o le pasamos el objmesh como parametro // MeshBuilder.AddMaterials(ObjMaterialsLoader); }