Allegro frage!
-
Kann man das Allegro Programm von der Schnelligkeit her optimieren,ohne es gleich im Fullscreenmodus laufen lassen zu müssen?...
#include <allegro.h> int set_graphic_mode() { set_color_depth(16); if (set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0) >= 0) { return 1; } return 0; } int main(int argc, char **argv) { allegro_init(); install_keyboard(); if (!set_graphic_mode()) { allegro_message("Unable to set graphic mode!"); exit(0); } BITMAP *doublebuffer = create_bitmap(SCREEN_W, SCREEN_H); BITMAP *logo = load_bitmap("allegro.tga", NULL); int x = 0; int y = 0; int dx = 1; int dy = 1; while (!keypressed()) { // Linker und rechter Rand if (x + dx < 0) { dx *= -1; } else if (x + logo->w >= SCREEN_W) { dx *= -1; } // Oberer und unterer Rand if (y + dy < 0) { dy *= -1; } else if (y + logo->h >= SCREEN_H) { dy *= -1; } x+= dx; y+= dy; acquire_bitmap(doublebuffer); clear(doublebuffer); blit( logo, doublebuffer, 0, 0, x, y, logo->w, logo->h); release_bitmap(doublebuffer); blit(doublebuffer, screen, 0, 0, 0, 0, doublebuffer->w, doublebuffer->h); } } END_OF_MAIN();