Curso programación de videojuegos con SDL – Allegro, otra librería para el desarrollo de videojuegos

Curso programación de videojuegos con SDL – Allegro, otra librería para el desarrollo de videojuegos

Como en (casi) todos los demás aspectos del software libre, existen más alternativas para este mismo propósito. La más famosa de todas es Allegro y tras SDL es la más potente. Algunos consideran OpenGL como una alternativa, sin embargo creo que no debería considerarse así  puesto que se puede integrar perfectamente dentro de un proyecto en SDL o en Allegro para dotar de gráficos tridimensionales al juego.

Hablando de Allegro podemos decir que a grandes rasgos se trata de un conjunto de librerías con el mismo propósito que SDL. Ofrece una funcionalidad realmente parecida. Sin embargo hay aspectos en que se diferencian:

  • Orígen: Allegro fue implementada originalmente para MS-DOS y aunque en la actualidad es multiplataforma, al igual que SDL, existen todavía en su código “restos” de la primera implementación que pueden provocar problemas.
  • Orientado a: SDL está diseñada para crear programas multimedia, Allegro exclusivamente juegos.
  • Facilidad de uso: Allegro es más fácil y es más comprensible para los principiantes (en gran parte por el hecho de que este sólo diseñada para crear videojuegos), sin embargo, SDL ofrece más posibilidades y a la larga puede llegar a ser más fácil de usar gracias a los componentes de los que hemos hablado antes.
  • Nivel de abstracción: A pesar de que no se puede hablar de niveles de abstracción de manera formal si es cierto que las funciones de Allegro son de más alto nivel que las de SDL. Este es uno de los aspectos por los que Allegro de primeras puede ser más fácil de usar.
  • Posibilidades: Dado que SDL tiene funciones de más bajo nivel y su abanico de posibilidades no se reducen sólo a la programación de videojuegos, es por lo tanto más potente en cuanto a la cantidad de creaciones que podemos desarrollar.
  • Cantidad de documentación: En este aspecto SDL gana a Allegro holgadamente. La cantidad de información tanto en papel como en línea, disponible de SDL en forma de manuales, artículos o libros; es sin duda mucho mayor que para Allegro. Sólo haciendo una búsqueda en el Google y viendo la cantidad de resultados que arroja para cada uno, es suficiente para hacernos una idea del ámbito al que llega cada uno.

Finalmente comentar que existe otra opción llamada ClanLib que es menos conocida y menos usada que las dos anteriores. De ella sólo decir que tiene mejor compatibilidad con sistemas Mac OS X.

¿Por qué SDL y no Allegro?

Tras comentar las diferencias entre SDL y Allegro muchos se preguntarán por qué he elegido la primera en lugar de la segunda. La verdad es que dentro de la comunidad de desarrolladores libres la API más popular es sin duda SDL, aunque también hay que reconocerle una importante presencia a Allegro. La verdad es que la decisión puede estar reñida, pero dado que SDL ofrece un mayor número de posibilidades y dado que que la documentación es mucho mayor para la misma, he preferido usar para este artículo SDL. Los que conozcáis ambas sabréis también que la dinámica es más o menos la misma, sólo hacen falta ideas y muchas ganas para desarrollar un gran juego.