Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Architekt

Community-Fossil

Beiträge: 2 481

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

21

22.07.2012, 12:45

Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

22

23.07.2012, 12:41

Danke für den Tipp mit main!

Ich habe WinMain() der normalen main() Funktion vorgezogen weil ich bei der normalen main-Funktion immer einen
error: Einstiegspunkt muss definiert werden erhalten habe (deswegen auch die windows.h)

Dennoch kann ich kein Bild laden ohne den ganzen Pfad mitzugeben :hmm:

Saik0

Treue Seele

Beiträge: 171

Beruf: Anwendungsentwickler

  • Private Nachricht senden

23

23.07.2012, 12:52

Probier es doch mal bitte so wie es Expos in seinem Code beschrieben hat. Ansonsten musst du sicher stellen, dass die Bilder, die du verwenden möchtest im selben Ordner liegen wie deine *.exe Datei. Es müsste auch funktionieren, wenn du die Bilder in ein "images" Ordner steckst und den Pfad "images/bild" übergibst.

24

26.07.2012, 11:45

Bin nun dazu gekommen Expos Vorschlag zu kopieren

Allerdings erzeugt der Aufruf des Bildes über den relativen Pfade eine Zugriffsverletzung beim blitten des
Objekts auf dem Screen ?( und auch mit dem images\\ dingens klappt es nicht :dash:

Need Help :zombie:

25

02.08.2012, 15:32

Upps... Bei Blit() hab ich was falsch gemacht... Hier der korrekte Sourcecode

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <allegro.h>
int main(){

    allegro_init();    install_timer();  //Timer immer VOR dem Sound!    install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL);    install_keyboard();    install_mouse;
      int res;
     set_color_depth(32); //Alles andere bringt unter Vista/7 Probleme
      res = set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);      if(res != 0)       {          res = set_gfx_mode(GFX_AUTODETECT_FULLSCREEN, 640, 480, 0, 0);        }         if(res != 0)       {          allegro_message("Could not set graphic mode!");        }
        //Jetzt haben wir ein 640x480 Fenster mit 32-Bit Farbtiefe

                 BITMAP *bild;
        bild = load_bitmap("pic.bmp", NULL);
   
    
     blit(bild, screen, 0, 0, 0, 0, bild->w, bild->h);    readkey();                                                              //Wartet bis eine Taste gedrückt wird        destroy_bitmap(bild);
    return 0;}END_OF_MAIN();                           //Damit Allegro weiß, dass dein Programm endet!

Werbeanzeige

Ähnliche Themen