Allegro (bibliothèque)
Un article de Wikipédia, l'encyclopédie libre.
Allegro est une bibliothèque dédiée à la création de jeux vidéos en C/C++. Elle fournit aux programmeurs des routines bas niveau (optimisées pour la rapidité) portables. « Allegro » est un acronyme récursif qui correspond à « Allegro Low LEvel Game ROutines » (routines de bas niveau Allegro pour les jeux).
Sommaire |
[modifier] Caractéristiques d'Allegro
- Simplicité d'utilisation - Documentation très complète incluant de nombreux exemples
- Rapide - Routines optimisées (plusieurs écrites en assembleur)
- Extensible - fournit tout ce qui est nécessaire pour créer un jeu
- Portable - sans changer la moindre ligne de code, vous pouvez compiler pour une autre plate-forme telle que Windows, DOS, Linux, BeOS, Mac, Qnx.
- Open Source et gratuit : la licence d'Allegro relève presque du domaine public, avec une demande non obligatoire de citer le nom de la bibliothèque en cas d'utilisation.
[modifier] Ce que Allegro peut faire
- La gestion des entrées (clavier, souris, manette de jeux)
- La gestion des sprites (affichage, rotation, zoom)
- L'affichage de primitives géométrique (lignes, cercles...)
- Une GUI totalement extensible (pour faire les boutons, des cases à cocher, listes déroulantes...)
- La gestion des musiques midi
- La gestion des effets sonores
- La gestion du temps
- Gestion 3D (calcul de perspective, rotation, affichage des polygones, etc.)
[modifier] Bibliothèques complémentaires.
Il y a plusieurs bibliothèques complémentaires qui peuvent permettre de :
- Faire de la 3D accélérée OpenGL (avec Allegro GL)
- Jouer les musiques mod, xm, s3m, it... (avec jgmod ou dumb)
- Jouer plusieurs formats audio dont Mp3 (avec AlMp3), ogg vorbis (Alogg), etc.
- Détection des collisions au pixel près entre sprites (en d'autres termes, détecter si une image touche l'autre)
- Plusieurs interfaces GUI très configurables (cgui)
[modifier] Voir aussi
- La bibliothèque SDL, une autre bibliothèque multimédia libre.
- La bibliothèque Mesa, une autre bibliothèque de rendu 3D au niveau logiciel.