ich hab für meinen kleinen Raytracer jetzt noch einen Datei-Loader geschrieben. Der besteht aus einer Hauptklasse Loader und dann für jeden Dateityp nochmals aus einer abgeleiteten Klasse z.B. LoaderOBJ.
Ich habe jetzt in meiner Hauptklasse folgende LoadFile-Methode:
Code: Alles auswählen
void Loader::LoadFile(string filename,vector<Objekt> &objekte,MaterialManager &matman) {
vector<string> split;
strsplit(filename,'.',split);
Loader *fileloader=NULL;
if(streq(split[split.size()-1],"ac")) {
fileloader=new LoaderAC();
}
else if(streq(split[split.size()-1],"obj")) {
fileloader=new LoaderOBJ();
}
if(fileloader==NULL)
throw new Exception(NULL,__FILE__,__LINE__,"Fehler beim Laden des Modells","Dateiformat wird nicht unterstützt!");
fileloader->LoadFile(filename,objekte,matman);
delete fileloader;
}
Code: Alles auswählen
void Loader::LoadFile(string filename,vector<Objekt> &objekte,MaterialManager &matman) {
Loader *fileloader=NULL;
fileloader=new LoaderOBJ();
if(fileloader==NULL)
throw new Exception(NULL,__FILE__,__LINE__,"Fehler beim Laden des Modells","Dateiformat wird nicht unterstützt!");
delete fileloader;
}
Könnt ihr mir dabei bitte helfen?
Vielen Dank
hundvdf