===== 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.
#include
#include
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
#include
**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.
[[allegro:Intro|Précédent]] << [[allegro:start#articles|Sommaire]] >> [[allegro:events|Suivant]]