[Newbiefrage] Welcher Pfad zu Bildern in meinem Projekt?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • [Newbiefrage] Welcher Pfad zu Bildern in meinem Projekt?

    Hi,

    ich versuch mir seid ein paar Tagen mit den NeHe Tutorials, Xcode und ein paar Seiten mit Referenzen C++, SDL und OpenGL beizubringen. Bisher funktioniert das ganze auch recht gut. Aber jetzt habe ich doch ein Problem.

    Ich habe in meinem Xcode Projekt auch eine .TGA hinzugefügt. Wie genau lautet jetzt eigentlich der Pfad um darauf zuzugreifen? Bisher verwende ich ../../bild.tga dafür. Aber damit greift mein kleines Programm ja nur aus dem Build Ordner von Xcode in den Projekt Ordner zwei Ebenen höher zu. Sobald ich mein Programm z.B. auf den Schreibtisch kopiere findet er die Bilder natürlich nicht mehr. Ich habe mir mal den Paketinhalt anzeigen lassen. Das Bild befindet sich jedenfalls in der .app unter Contents/Resources/bild.tga. Aber wie greife ich darauf zu? Habs schon mit Contents/Resources/bild.tga probiert oder nur Resources/bild.tga, und auch einfach nur bild.tga. Kein Erfolg bis hierhin, aber irgendwie muss ich da doch dran kommen oder nicht?

    Hoffe war für meinen ersten Beitrag hier verständlich genug geschrieben... ;)

    Gruß Daniel
  • Danke für die schnelle Antwort. :)

    Direkt noch mal ne Frage hinterher... :) Ich hab ja wie ich schreibe noch nicht wirklich Ahnung von der Materie, ist das ganze denn Systemübergreifend? Wenn ich bei Google NSBundle eingebe kommen erstmal jede Menge Apple Ergebnisse. An sich soll mein Code aber später Systemübergreifend funktionieren. Zumindest ist er bisher darauf ausgelegt. Daher auch OpenGL und SDL... :)

    Aber wie ich den Thread im Link verstanden habe muss ich quasi meine App in den Pfad mit einbauen. Klappt sogar, habe jetzt von Hand erstmal MeinProgramm.app/Contents/Resources/bild.tga geschrieben und siehe da: Funktioniert! :)

    Hoffe meine Frage nach dem Systemübergreifend ist jetzt nicht dümmer wie ich mir das selbst schon denke... ;)

    Gruß Daniel
  • insanity schrieb:

    Danke für die schnelle Antwort. :)

    Direkt noch mal ne Frage hinterher... :) Ich hab ja wie ich schreibe noch nicht wirklich Ahnung von der Materie, ist das ganze denn Systemübergreifend? Wenn ich bei Google NSBundle eingebe kommen erstmal jede Menge Apple Ergebnisse. An sich soll mein Code aber später Systemübergreifend funktionieren. Zumindest ist er bisher darauf ausgelegt. Daher auch OpenGL und SDL... :)

    Aber wie ich den Thread im Link verstanden habe muss ich quasi meine App in den Pfad mit einbauen. Klappt sogar, habe jetzt von Hand erstmal MeinProgramm.app/Contents/Resources/bild.tga geschrieben und siehe da: Funktioniert! :)

    Hoffe meine Frage nach dem Systemübergreifend ist jetzt nicht dümmer wie ich mir das selbst schon denke... ;)

    Gruß Daniel

    Systemweit verstehe ich nicht. Deine App soll auf die Ressource zugreifen oder? Wenn auch andere Anwendungen drauf zugreifen sollen, wie ist da Dein Konzept und wieso liegt dann die Datei in Deiner App und nicht im Web oder so?
  • Ok, ich glaub ich hab mich hier ein wenig blöde ausgedrückt und obendrein glaube auch noch einen Denkfehler... :D

    Mein kleines Programm erstelle ich ja momentan in Xcode und es läuft momentan auch nur auf meinem iMac. Aber an sich möchte ich ja mit möglichst wenig Aufwand das ganze auch als eine Windows Anwendung zum laufen bekommen. Momentan habe ich zum üben und lernen zwar eh nur einen kleinen Würfel der sich im Kreis dreht und das Bild von dem ich Sprach stellt einfach die Textur da. Aber mir geht's halt drum das der größte Teil meines geschriebenen Codes, wenn nicht sogar alles, Systemübergreifend (Mac, Win, Linux?) kompatibel ist. Daher habe ich mich zum lernen auch für SDL und OpenGL entschieden. Wie ich bereits in einigen Foren rausbekommen habe ist es ja leider nicht möglich gleich das Projekt in Xcode auch als Windows Anwendung zu kompilieren. Aber ich würde halt meine Dateien gerne ohne großen Aufwand unter Windows kompilieren können.

    Daher meine Frage ob NSBundle Systemübergreifend ist. Ich hab doch keine Ahnung... *gg* :) Wenn das jetzt etwas rein Apple spezielles ist müsste ich mir unter Windows dann ja wieder was anderes suchen. Wie macht das denn Blizzard wenn die ihre Spiele Mac und Win lauffähig haben und nur eine andere Ausführbare Datei haben? ;)
  • insanity schrieb:

    Ok, ich glaub ich hab mich hier ein wenig blöde ausgedrückt und obendrein glaube auch noch einen Denkfehler... :D

    Mein kleines Programm erstelle ich ja momentan in Xcode und es läuft momentan auch nur auf meinem iMac. Aber an sich möchte ich ja mit möglichst wenig Aufwand das ganze auch als eine Windows Anwendung zum laufen bekommen. Momentan habe ich zum üben und lernen zwar eh nur einen kleinen Würfel der sich im Kreis dreht und das Bild von dem ich Sprach stellt einfach die Textur da. Aber mir geht's halt drum das der größte Teil meines geschriebenen Codes, wenn nicht sogar alles, Systemübergreifend (Mac, Win, Linux?) kompatibel ist. Daher habe ich mich zum lernen auch für SDL und OpenGL entschieden. Wie ich bereits in einigen Foren rausbekommen habe ist es ja leider nicht möglich gleich das Projekt in Xcode auch als Windows Anwendung zu kompilieren. Aber ich würde halt meine Dateien gerne ohne großen Aufwand unter Windows kompilieren können.

    Daher meine Frage ob NSBundle Systemübergreifend ist. Ich hab doch keine Ahnung... *gg* :) Wenn das jetzt etwas rein Apple spezielles ist müsste ich mir unter Windows dann ja wieder was anderes suchen. Wie macht das denn Blizzard wenn die ihre Spiele Mac und Win lauffähig haben und nur eine andere Ausführbare Datei haben? ;)

    Ich würde mal sagen nein!