Tutorial allegro

Solo disponible en BuenasTareas
  • Páginas : 19 (4556 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de noviembre de 2011
Leer documento completo
Vista previa del texto
TUTORIAL ALLEGRO
Escrito en francés por: Emeric Poupon Traducción libre por: Ernesto Castelán Chávez

Introducción
Para comenzar, debo precisar que es necesario un correcto conocimiento de C/C++ y que Allegro debe ya estar correctamente instalado. Durante todo el tutorial, los prototipos de las funciones propias de Allegro serán mostradas en negritas. /* Los comentarios se mostrarán en unazul verdoso muy característico */ Los tipos de variables en marrón (int, float, …) incluyendo los tipos de variables específicos de Allegro (BITMAP, DATAFILE, …) Las estructuras de control en azul (if, else, while, {}, …) Los números en rojo (0, 1, 324, 4, …) Los comandos del preprocesador en verde (#define, #include) “Las cadenas de caracteres en gris” -

1. ¿Para que sirve Allegro?
Vayamosdirecto al grano: ¿Qué es Allegro? Es una librería que dispone de todo lo necesario para programar un juego de video. En otras palabras, Allegro nos brinda una solución para gestionar gráficos, sonido, el teclado, el ratón, los temporizadores… en fin, ¡todo lo que necesite! Originalmente Allegro fue creada por Shawn Hargreaves, para Atari ST, luego pasó rápidamente a DOS. Las primeras versiones de lalibrería datan de principios de 1996: ¡no nació ayer! Rápidamente, los programadores de Allegro orientaron su programación hacia una librería multiplataforma. Ahora se puede usar Allegro para DOS (DJGPP, Watcom), Windows (MSVC, Mingw32, Cygwin, Borland), Linux (consola), Unix (X), BeOS, QNX, MacOS (MPW). Ya lo ha de haber comprendido, la gran fuerza de Allegro reside en el hecho de que essoportada por un gran número de Sistemas Operativos (SO). Concretamente, puede compilar sus programas bajo cualquier compilador (de los mencionados arriba) sin cambiar una sola línea de código. De alguna manera, Allegro seleccionará, solito, los controladores correctos según el SO. Por ejemplo un programa bajo Windows utiliza la aceleración DirectDraw, mientras que bajo Linux puede disfrutar de loscontroladores X11. De la misma manera para DirectSound y DirectInput para Windows. En contraparte, lo 3D no es el fuerte de esta librería: ninguna aceleración material será dada: nada de

Direct3D. Sin embargo OpenGL es muy bien soportado, gracias a un pequeño parche de Allegro (AllegroGL). Mencionamos también que es una librería gratuita y libre, y por tanto el código fuente esta disponible.

2.Allegro: Ejemplo de aplicación
Un juego que utilice Allegro puede ser una aplicación de Windows, en ese caso, DirectX 7.0 (mínimo) será necesario para el funcionamiento del juego. Allegro puede estar en un DLL (alleg42.dll) o puede, también, estar estático, en cuyo caso el código de Allegro utilizado se encontrará en el ejecutable (es el caso para DOS). Les aseguro que en los otros SO tambiénpodrán escoger una compilación estática dinámica, así que no se preocupen. Para ver un ejemplo, tienen a su disposición el demo oficial (en la carpeta allegro/demo) que reagrupa en un solo programa algunas características muy interesantes de la librería. No olvide “linkear” le librería correctamente, o si no, obtendrá un mar de errores. (Consulte los archivos de ayuda en cada compilador). Tampocoolvide que tiene a su disposición toda una gama de ejemplos muy prácticos. Es, de hecho, gracias a ellos que aprendi a servirme “correctamente” de Allegro. Todas las descripciones de las funciones estan disponibles en el archivo de ayuda generado en la instalación de Allegro (/docs/html/allegro.html). Están muy bien explicadas y es muy útil para descubrir todas las funciones de Allegro. En fin, sirealmente quiere descubrir todo el potencial de esta librería, puede ir al depósito oficial de los juegos Allegro: www.allegro.cc

3. Las bases de Allegro: un primer programa
Comencemos un pequeño programa básico que nos servirá de ejemplo. Para comenzar hay que incluir el archivo de cabecera de la librería, cuyo nombre es “allegro.h”. ¡Cuidado! Por el momento no hay necesidad de incluir WinMain...
tracking img