The Allegro library is a free video game software library, with functions for basic 2D graphics, image manipulation, text output, audio output, midi music, input and timers, as well as additional routines for things like fixed-point and floating-point matrix arithmetic, unicode strings, file system access, file manipulation, data files, and (limited, software-only) 3D graphics. As of version 4.0, programs that use the library work on DOS, Microsoft Windows, BeOS, Mac OS X, and various Unix-like systems with (or without) X Window System, abstracting their application programming interfaces into one portable interface.
Allegro is very simple and easy to use yet powerful. In that way it is different from many other graphics libraries such as DirectX or SDL that offer more advanced functionality.
The library is written in the C programming language and designed to be used with C or C++. Complete API documentation is available from the official website. The API reference manual can be automatically translated to many different formats with its makefile system and there are many mirrors of it. One of the mirrors is hosted on *.
The library comes with full source code and is open source, using a simple permissive "giftware" license which allows copying, modification and distribution for any purpose. Along with the source code, it comes with countless examples, so that even someone with hardly any video game programming knowledge can study the examples and come up with a simple video game very quickly.
The community of Allegro users have contributed several library extensions to handle things like scrolling tile maps, import and export of various file formats (e.g. PNG, GIF, JPEG images, MPEG video, Ogg, MP3, IT, S3M, XM music, TTF fonts, and more..).
Allegro can be used in conjunction with OpenGL by using the library AllegroGL which extends Allegro's functionality into OpenGL and therefore the hardware.
The current version of Allegro is 4.2.0 stable. Following this release, the development will gradually shift focus to the so-called new API branch (also known as the 4.3.x series), which will feature a modern and revised API, as well as full hardware acceleration (The 4.2.0 version only can use HW acceleration for certain 2D drawing primitives, and usually only when using Windows/DirectX). Backwards compatibility will be maintained through an extra API layer emulating the old API. Work on the new API branch started in parallel with the 4.1.x series, meaning that a lot of the codebase has already been rewritten. The 4.2.x series will be the last utilising the old code base.
If you need HW accelerated 3D, or 2D acceleration working also for common Linux/OSX setups, it is best to use AllegroGL or OpenLayer, two add-on libraries, to harness OpenGL for accelerated graphics routines and use Allegro for all other gaming needs.
For both, numerous bindings to several other programming languages besides C exist.
Image:Kraptor_screenshot.jpg|Kraptor Image:Ufo2000.jpg|UFO2000 Image:Gusanos.png|Gusanos
C libraries | Computer and video game development | Open source games | Widget toolkits
Allegro-Bibliothek | Allegro (biblioteca de programación) | Allegro (bibliothèque) | Allegro (informatyka) | Allegro
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Allegro library".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world