Log.LogError(Ort+' nicht geladen','(Texturlader)');
end;
Leider lädt er keine einzige Textur, unabhängig vom verwendeten Format.
Jetzt ist die Frage wo mein Fehler ist bzw. was es für alternative und Linux funktionierende Texturloader gibt.
Achso: das b und so ist drin, weil ich einfach schnell einen Texturloaderersatz für den von Jan Horn brauchte und ich meinen Code noch nicht richtig umarbeiten wollte.
Registriert: Sa Jan 01, 2005 17:11 Beiträge: 2068
Programmiersprache: C++
Also das Problem ist einfach, dass er es mir ins Log schreibt, dass das Laden (d.h. die surface ist nil) fehlgeschlagen ist.
Das mit dem Pfad habe ich als erstes probiert in dem ich einfach 'gui.tga' anstatt PChar(Ort) angegeben habe.
Funktioniert leider nicht.
Devel-Pakete sind installiert.
Mit anderen Texturladern hat es unter Windows auch funktioniert. Nur funktionieren diese nicht unter Linux.
Registriert: Sa Mai 04, 2002 19:48 Beiträge: 3830 Wohnort: Tespe (nahe Hamburg)
Also SDL ist eigentlich eine sehr gute Wahl unter Linux. Die Frage was schief läuft. Spontan sehe ich nichts. Gibt es eine Exception oder bleiben die Texturen nur weiß?
_________________ "Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."
Registriert: Sa Jan 01, 2005 17:11 Beiträge: 2068
Programmiersprache: C++
Die Texturen werden nicht geladen.
Das Problem ist aber jetzt gefunden:
Ich benutze TGAs.
Die mag er irgendwie nicht. Habe jetzt eine Datei mit BMP ersetzt und die wird geladen.
Ist zwar doof und muss verbessert werden, aber der Fehler ist nicht mehr der Lader.
Vor allem da ich das Schema nicht finde weshalb er manche Dateien lädt, andere aber nicht.
Du verwendest nicht zufällig TGAs, die mit Photoshop erstellt wurden? Denn Photoshop exportiert TGAs teilweise sehr merkwürdig. In diesem Fall die Bilder dann in Gimp einfach laden und nochmal abspeichern. AFAIK exportiert Gimp TGAs richtig.
_________________ "Für kein Tier wird so viel gearbeitet wie für die Katz'."
Klingt danach, als ob das Programm relative Pfade zum aktuellen Verzeichnis enthält - wenn du es über die Konsole startest, befindest du dich wahrscheinlich im Programmverzeichnis, beim Konqueror ist wahrscheinlich irgend ein anderes Verzeichnis aktiv.
Lösung: erst den Startpfad der Anwendung herausfinden und relative Pfade im Programm über diesen zu absoluten Pfaden zusammenstückeln. Man sollte sich nicht unbedingt darauf verlassen, dass das Startverzeichnis einer Anwendung automatisch auch der aktive Pfad ist, wenn das Programm gestartet wurde (das führt manchmal zu schwer nachvollziehbaren Fehlern, weil es in den meisten Fällen ja funktioniert).
Registriert: Sa Jan 01, 2005 17:11 Beiträge: 2068
Programmiersprache: C++
@Mars:
ja, das war der Grund weshalb es nur über die Konsole funktioniert hat danke.
@all:
Habe jetzt herausgefunden was SDL_Image an meinen Texturen nicht mag:
ein paar Texturen hatten nicht die für OpenGL <2 notwendigen Masse meine tgas und pngs hatten alle Alphakanäle. Offiziell werden sie zwar unterstützt, bei mir aktuell werden sie aber nichtgeladen.
Ein weitere Punkte ist mir noch aufgefallen:
Er liesst tgas falsch ein.
Angehängt ist ein SDL-Beispiel, dass einfach drei texturierte Vierecke anzeigt.
Auf jedem Viereck ist dasselbe Bild, nur mit Gimp unter anderem Dateinamen (jpg, png, tga) gespeichert.
Bei der tga ist Rot und Blau vertauscht.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Registriert: Sa Jan 01, 2005 17:11 Beiträge: 2068
Programmiersprache: C++
Steht leider nicht in der Wiki, jedenfalls nicht hier.
Ich vermute aktuell mal, dass alle meine Probleme jetzt weniger mit SDL_Image zu tun haben, sondern mehr damit wie ich die Surface in eine Texture verwandele.
Sollte mir dazu mal ein paar Texturelader anschauen.
Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.