[C++, Allegro] Po odpaleniu *exe wyświetla się błąd
Ostatnio zmodyfikowano 2014-02-16 13:57
Fofokus Temat założony przez niniejszego użytkownika |
» 2014-02-16 11:39:07 #include <allegro.h> int main() { allegro_init(); install_keyboard(); set_color_depth( 16 ); set_gfx_mode( GFX_AUTODETECT, 640, 480, 0, 0 ); clear_to_color( screen, makecol( 128, 128, 128 ) ); BITMAP * bufor = NULL; BITMAP * ludek = NULL; int speed = 10; bufor = create_bitmap( 640, 480 ); ludek = load_bmp( "Ludek.bmp", default_palette ); int ludek_x = 100, ludek_y = 100; while( !key[ KEY_ESC ] ) { if( key[ KEY_LEFT ] ) ludek_x--; if( key[ KEY_RIGHT ] ) ludek_x++; if( key[ KEY_UP ] ) ludek_y--; if( key[ KEY_DOWN ] ) ludek_y++; if( key[ KEY_A ] ) ludek_x = ludek_x + 100; if( key[ KEY_B ] ) { ludek_x = 0; ludek_y = 400; } if( key[ KEY_Z ] ) { ludek = load_bmp( "Ludek.bmp", default_palette ); speed = 10; } if( key[ KEY_X ] ) { ludek = load_bmp( "Buzka.bmp", default_palette ); speed = 1; } clear_to_color( bufor, makecol( 150, 150, 150 ) ); rest( speed ); masked_blit( ludek, bufor, 0, 0, ludek_x, ludek_y, ludek->w, ludek->h ); blit( bufor, screen, 0, 0, 0, 0, 640, 480 ); } destroy_bitmap( ludek ); destroy_bitmap( bufor ); allegro_exit(); return 0; } END_OF_MAIN();
|
|
SeaMonster131 |
» 2014-02-16 13:14:16 Ludek.bmp, Buzka.bmp znajdują się obok pliku *.exe (w tym samym folderze)? Tak jak mówił @pekfos, dodaj obsługę błędów. Po drugie nie wczytuj obrazków w pętli, bo spowalnia to działanie programu i zwiększa wykorzystanie pamięci. |
|
Fofokus Temat założony przez niniejszego użytkownika |
» 2014-02-16 13:57:47 Ajajajaj. Pliki bmp znajdowały się w folderze, w którym znajdował się folder, w którym dopiero był *.exe. Myślałem, że to wystarczy. Mój błąd. Dzięki wielkie za pomoc, już działa. |
|
1 « 2 » |