DanDanger
31-05-2003, 20:53
Hallo,
ich schreibe gerade mit SDL/OpenGL ein kleines 3D-Proggi, und hab' jetzt folgendes Problem :
In meinem Programm liegen die Model-Files (3DS-Files) im Unterordner "data/models" . Im selben Ordner liegen auch die Bitmap's für die Model-Skins, da die 3DS-Files in "ihrem" Ordner nach den Skin's suchen.
Wenn ich nun das Modell-File in meinem Programm mit
LoadModel("data/models/aModel.3ds") ;
Lade,
findet er das Skin-File nicht, da die Routiene die Skin-Datei im Aktuellen Verzeichniss sucht (aber das ist ja nunmal das Verzeichniss, aus dem ich die Anwendung heraus starte, und nicht "data/models").
Das Problem ist also : Wenn nun das Model versucht, "sein" Skin-File zu laden, wird es nicht gefunden, da das akt. Verzeichniss ja nicht "data/models" ist, sondern das Verzeichniss, aus dem die Anwendung heraus gestartet wird (z.B. "usr/local/bin", etc.)
Wenn ich die Skin-Files in das Verzeichniss Kopiere, in dem auch die Anwendung liegt, klappt alles.
Lange vorrede, kurze Frage :
Wie kann ich innerhalb meiner Anwendung das Aktuelle Verzeichniss wechseln ??
Das ganze sollte ungefähr so aussehen :
1) Vom Hauptverzeichniss der Anwendung nach "data/models" wechseln
2) Alle Models samt Skin-Files laden
3) Wider zurück ins Hauptverzeichniss der Anwendung wechseln
4) Programm normal fortsetzen....
PS: Wenn es so eine Fkt. gibt, ist sie Plattformunabhängig (da das ganze sowohl unter Linux als auch unter Windows laufen soll) ????
Neugierige Grüsse
DanDanger
ich schreibe gerade mit SDL/OpenGL ein kleines 3D-Proggi, und hab' jetzt folgendes Problem :
In meinem Programm liegen die Model-Files (3DS-Files) im Unterordner "data/models" . Im selben Ordner liegen auch die Bitmap's für die Model-Skins, da die 3DS-Files in "ihrem" Ordner nach den Skin's suchen.
Wenn ich nun das Modell-File in meinem Programm mit
LoadModel("data/models/aModel.3ds") ;
Lade,
findet er das Skin-File nicht, da die Routiene die Skin-Datei im Aktuellen Verzeichniss sucht (aber das ist ja nunmal das Verzeichniss, aus dem ich die Anwendung heraus starte, und nicht "data/models").
Das Problem ist also : Wenn nun das Model versucht, "sein" Skin-File zu laden, wird es nicht gefunden, da das akt. Verzeichniss ja nicht "data/models" ist, sondern das Verzeichniss, aus dem die Anwendung heraus gestartet wird (z.B. "usr/local/bin", etc.)
Wenn ich die Skin-Files in das Verzeichniss Kopiere, in dem auch die Anwendung liegt, klappt alles.
Lange vorrede, kurze Frage :
Wie kann ich innerhalb meiner Anwendung das Aktuelle Verzeichniss wechseln ??
Das ganze sollte ungefähr so aussehen :
1) Vom Hauptverzeichniss der Anwendung nach "data/models" wechseln
2) Alle Models samt Skin-Files laden
3) Wider zurück ins Hauptverzeichniss der Anwendung wechseln
4) Programm normal fortsetzen....
PS: Wenn es so eine Fkt. gibt, ist sie Plattformunabhängig (da das ganze sowohl unter Linux als auch unter Windows laufen soll) ????
Neugierige Grüsse
DanDanger