Allegro (pronunciado alegro) es una biblioteca libre y de código abierto para la programación de videojuegos desarrollada en lenguaje C. Allegro es un acrónimo de «Atari Low Level Game Routines» (rutinas de bajo nivel para videojuegos).
La biblioteca cuenta con funciones para gráficos, manipulación de imágenes, texto, sonidos, dispositivos de entrada (teclado, ratón y mandos de juego) y temporizadores, así como rutinas para aritmética de punto fijo y acceso al sistema de archivos. Hasta agosto de 2011, hay 2 versiones de Allegro que cuentan con soporte oficial por parte de los desarrolladores, la versión clásica (Allegro 4) y la nueva versión (Allegro 5). La versión más reciente de Allegro 4 incluye soporte para el manejo de archivos de datos y una implementación por software de funciones para gráficos en 3D. La versión 5 de Allegro cuenta con una nueva API y cambia la implementación por software de las rutinas gráficas por una implementación basada en OpenGL o Direct3D.
Aunque Allegro ofrece una API en lenguaje C, actualmente existen envolventes y bibliotecas adicionales que permiten utilizarlo en otros lenguajes como C++, Java, C#, Visual Basic.NET, Python, D, Lua, Pascal, Perl, Ruby, Go, Scheme, Common Lisp, Ocaml, Forth y Mercury.
-¿Cuales son las instrucciones que tiene la librería allegro?
#include <allegro.h>int main() { // inicializa el entorno del allegro allegro_init(); install_keyboard(); // se establece la resolucion grafica // modo ventana, 320x240 set_color_depth(32); set_gfx_mode(GFX_AUTODETECT_WINDOWED, 320, 240, 0, 0); // se crea buffer para contener todo lo que se muestra en nuestra ventana // por eso se crea con la misma dimension que la resolucion BITMAP *buffer = create_bitmap(320, 240); // borra la imagen, rellenandola con un color clear_to_color(buffer, 0x999999); // muestra un texto, en una posicion x= 160, y=25, con unos colores // 0xFFFFFF = blanco 0x999999 = gris textout_centre_ex(buffer, font, "Mi Primera Ventana", 160, 25, 0xFFFFFF, 0x999999); // Vuelca el contenido de nuestra imagen sobre la pantalla para mostrarlo blit(buffer, screen, 0, 0, 0, 0, 320, 240); // para realizar una pausa, espera a que se pulse una tecla readkey(); // antes de salir se debe liberar la memoria ocupada por la imagen // elimina la imagen creada destroy_bitmap(buffer); return 0;}
#include <allegro5/allegro.h>
#include <allegro5/allegro_primitives.h>
ALLEGRO_DISPLAY *display = NULL;
ALLEGRO_EVENT_QUEUE *events = NULL;
int main()
{
al_init();
al_install_keyboard();
al_set_new_display_option(ALLEGRO_SINGLE_BUFFER, 1, ALLEGRO_REQUIRE);
al_set_new_display_flags(ALLEGRO_WINDOWED);
display = al_create_display(640, 480);
al_init_primitives_addon();
events = al_create_event_queue();
al_register_event_source(events, al_get_keyboard_event_source());
al_clear_to_color(al_map_rgb(0, 128, 128));
while (al_is_event_queue_empty(events))
{
al_draw_filled_circle(rand() % 640, rand() % 480, rand() % 64, al_map_rgb(rand() % 256, 0, 0));
al_flip_display();
}
}

No hay comentarios:
Publicar un comentario