Outils pour utilisateurs

Outils du site


allegro:display

Allegro — Displays

Dans cet article nous détaillerons un exemple simple sur la création d'un display et la définition de paramètres pour ce display.

Exemple basique

Ce code montre comment créer un display, nettoyer le display et attend 10 secondes.

main.c
#include <stdio.h>
#include <allegro5/allegro.h>
 
int main(int argc, char **argv)
{
   ALLEGRO_DISPLAY *display = NULL;
 
   if(!al_init()) {
      fprintf(stderr, "failed to initialize allegro!\n");
      return -1;
   }
 
   display = al_create_display(640, 480);
   if(!display) {
      fprintf(stderr, "failed to create display!\n");
      return -1;
   }
 
   al_clear_to_color(al_map_rgb(0,0,0));
 
   al_flip_display();
 
   al_rest(10.0);
 
   al_destroy_display(display);
 
   return 0;
}

Détails

#include <stdio.h>
#include <allegro5/allegro.h>

stdio.h est nécessaire pour la fonction fprintf et allegro5/allegro.h est nécessaire pour utiliser allegro !

int main(int argc, char **argv)
{

Une fonction main standard avec le nombre et le tableau de ses paramètres.

if(!al_init()) {
      fprintf(stderr, "failed to initialize allegro!\n");
      return -1;
}

Ici on initialise la lib allegro. En cas d'échec cette fonction renvoit false et un message est affiché sur stderr.

display = al_create_display(640, 480);

al_create_display crée un display avec la taille spécifiée. En cas d'échec cette fonction renvoi NULL.

al_clear_to_color(al_map_rgb(0,0,0));

al_map_rgb attend 3 paramètres, les valeurs pour les composantes rouge, verte et bleu de la couleur voulue, elle renvoi une structure ALLEGRO_COLOR. al_clear_to_color efface le display celui que l'on vient juste de créer avec la couleur donnée.

al_flip_display();

Par défaut Allegro crée deux buffers image – celui affiché sur l'écran, et celui sur lequel on dessine. Une fois que vous avez fini de dessiner sur le buffer, vous êtes prêt à afficher le résultat sur l'écran.
al_flip_display est appelé pour imprimer l'image du buffer de dessin à l'écran. l'échec de l'appel à cette fonction affichera une fenêtre blanche.

al_rest(10.0);

Ici on demande au programme d'attendre pendant 10 secondes. al_rest attend en paramètre des secondes, néanmoins selon l'environnement cette fonction aura une précision jusqu'à une dizaine de milliseconde.

al_destroy_display(display);

Cette fonction détruit notre display et libère la mémoire, elle doit être appelée quand vous vous apprêtez à fermer le programme.

C'est la fin de notre introduction aux displays avec Allegro 5.

Précédent « Sommaire » Suivant

allegro/display.txt · Dernière modification: 2012/08/08 03:47 par mrhide