Advertisement
SilverTES

Simple Allegro 5 program

Oct 12th, 2016
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.28 KB | None | 0 0
  1. #include <cstdio>
  2. #include <allegro5/allegro.h>
  3. #include <allegro5/allegro_primitives.h>
  4.  
  5. int main(int argc, char **argv)
  6. {
  7.     int screenW(640);
  8.     int screenH(480);
  9.     bool quit(false);
  10.  
  11.     ALLEGRO_DISPLAY *display = NULL;
  12.     ALLEGRO_KEYBOARD_STATE keyState;
  13.     ALLEGRO_BITMAP* buffer = NULL;
  14.  
  15.     if(!al_init()) { fprintf(stderr, "failed to initialize allegro!\n"); return -1; }
  16.  
  17.     display = al_create_display(screenW, screenH);
  18.     if(!display) { fprintf(stderr, "failed to create display!\n"); return -1; }
  19.  
  20.     buffer = al_create_bitmap(screenW, screenH);
  21.     if(!buffer) { fprintf(stderr, "failed to create buffer!\n"); return -1; }
  22.  
  23.     al_init_primitives_addon();
  24.     al_install_keyboard();
  25.  
  26.     while (!quit)
  27.     {
  28.         al_get_keyboard_state(&keyState);
  29.         if (al_key_down(&keyState, ALLEGRO_KEY_ESCAPE)) quit = true;
  30.  
  31.         al_set_target_bitmap(buffer);
  32.         al_clear_to_color(al_map_rgb(0,50,60));
  33.         al_draw_rectangle(0.5,0.5,640,480, al_map_rgb(250,250,0),0);
  34.         al_draw_rectangle(10.5,10.5,630,470, al_map_rgb(250,250,0),0);
  35.  
  36.         al_set_target_backbuffer(display);
  37.         al_draw_bitmap(buffer,0,0,0);
  38.         al_flip_display();
  39.     }
  40.  
  41.     al_destroy_bitmap(buffer);
  42.     al_destroy_display(display);
  43.     return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement