Allegro library

Allegro library

Infobox_Software
name = Allegro


caption = Logo
developer = Allegro developers
latest_release_version = 4.3.10 stable (4.9.5 unstable)
latest_release_date = January 20, 2008 stable (October 1, 2008 unstable)
operating_system = Cross-platform
genre = Multimedia and Games SDK
license = Giftware
website = [http://www.liballeg.org liballeg.org]

Allegro is a free and open source software library for video game development. [cite book
last = Harbour
first = Jonathan
authorlink =
title = Game Programming All in One, Second Edition
publisher = Course Technology PTR
series =
year = 2004
doi =
isbn = 1592003834
] [cite book
last = Steinke
first = Lennart
authorlink =
title = Spielprogrammierung
publisher = BHV Verlag
series =
year = 2003
doi =
isbn = 3826680758
] [cite book
last = P. J. Deitel
first = P. J.
authorlink =
title = C How to Program
publisher = Prentice Hall
series = How to Program
year = 2006
doi =
isbn = 0-13-240416-8
]

The functionality of the library includes support for basic 2D graphics, image manipulation, text output, audio output, midi music, input and timers, as well as additional routines for 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 (APIs) into one portable interface. There is also an independent port of Allegro on AmigaOS.

The library is written in the C programming language and designed to be used with C or C++. It comes with extensive documentation and many examples.

Addons

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). There also are bindings for several programming languages available, like Python, Perl, Scheme, C#, D and others.

Allegro can be used in conjunction with OpenGL by using the library AllegroGL which extends Allegro's functionality into OpenGL and therefore the hardware.

History

Initially standing for "Atari Low-Level Game Routines", [ [http://www.allegro.cc/forums/thread/573313/574083#target Forum posting by Shawn Hargreaves] ] Allegro was originally created by Shawn Hargreaves for the Atari ST in the early 1990s. However, Shawn abandoned the Atari version as he realized the platform was dying, and reimplemented his work for the Borland C++ and DJGPP compilers in 1995. Support for Borland C++ was dropped in version 2.0, and DJGPP was the only supported compiler. As DJGPP was a DOS compiler, all games which used Allegro therefore used DOS. Around 1998, Allegro branched out into several versions. A port to Microsoft Windows, WinAllegro, was created, and also during this time, a Unix port of Allegro, XwinAllegro, was created. These various ports were brought together during the Allegro 3.9 WIP versions, with Allegro 4.0 being the first stable version of Allegro to support multiple platforms. The current version of Allegro supports Unix (Linux, FreeBSD, Irix, Solaris, Darwin), Windows (MSVC, MinGW, Cygwin, Borland C++), BeOS, QNX, Mac OS X, and DOS (DJGPP, Watcom). Shawn Hargreaves is no longer involved with Allegro.

The current version of Allegro is 4.3.10 stable. Following this release, the development roadmap calls for a shift to the so-called "new" API branch (also known as the 4.4.x series), This is similar to 4.2, except that it is bundled with some common addon libraries that can be built along with Allegro. 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.

For hardware accelerated 3D and 2D acceleration on Linux, Mac OS X and DOS, AllegroGL and OpenLayer are available. They are two add-on libraries that use OpenGL for accelerated graphics routines and use Allegro for all other gaming needs. Note that, combined with Glide and MesaFX (using 3dfx hardware), AllegroGL is one of the few available opensource solutions for hardware accelerated 3D under DOS. [ [http://www.geocities.com/dborca/opengl/mesa.html Mesa 3-D graphics library] ]

Graphic functions

* Vector drawing:
** pixels, lines, rectangles, circles, ellipses, arcs, Bezier splines
** shape fill, with or without pattern
** polygons: flat, Gouraud, textured (3D) and translucent
* Sprites:
** masked, compressed and compiled sprites
** blitting, rotation, stretching, reduction, alpha blending, Gouraud shading
** native support for BMP, LBM, PCX and TGA files (others supported with library extensions)
* Color palettes:
** color palette manipulation (reading, writing, conversion)
** conversion of color formats RGB <-> HSV
* Text:
** support for different encodings and conversion, default is UTF-8
** bitmap fonts (masking, colouring, alignment)
* Misc:
** draw directly on the screen or on any-size memory bitmaps
** hardware scrolling and triple buffering (where available), mode-X split screen
** animation functions for FLI/FLC format [ [http://alleg.sourceforge.net/readme.html Allegro Introduction] ]

Games using Allegro

Video games using the Allegro library include:
* "Gusanos"
* "Icy Tower"
* "M.U.G.E.N"
* "Liquid War"

ee also

*SDL (Simple DirectMedia Layer)
*DirectX
*OpenGL
*ClanLib
*OpenML
*XNA
*Troll2D

References

External links

* [http://www.liballeg.org/ Allegro website]
* [http://www.allegro.cc/ allegro.cc]
* [http://wiki.allegro.cc/ Allegro Wiki]
* [http://www.talula.demon.co.uk/ Shawn Hargreaves's Homepage]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Allegro — may mean: * The musical tempo meaning quick and lively or, literally, cheerful . See also List of musical terminology. * Allegro library, a computer game programming library * Allegro (typeface), a typeface designed in 1936 * Allegro Consultants …   Wikipedia

  • Allegro-C — allegro ist eine Software für Bibliothekskataloge, ein bibliothekarisches Datenbanksystem, das seit Juli 1980 von der Universitätsbibliothek Braunschweig entwickelt wird. allegro ist ein autonomes, plattformunabhängiges (MS DOS, UNIX, Solaris,… …   Deutsch Wikipedia

  • Allegro Common Lisp — Тип интегрированная среда разработки Разработчик Franz Inc. Операционная система кроссплатформенное ПО Последняя версия 9.0 (сентябрь 2012) Лицензия Franz Software License Agreement [1] …   Википедия

  • Allegro (Bibliothekssoftware) — Bibliothekssoftware Basisdaten …   Deutsch Wikipedia

  • Allegro-Bibliothek — Allegro Aktuelle Version 5.0.5 (6. November 2011) Programmier­sprache C Lizenz zlib Lizenz …   Deutsch Wikipedia

  • Allegro Hotel Paris (Paris) — Allegro Hotel Paris country: France, city: Paris (Bercy Gare de Lyon) Allegro Hotel Paris Location Situated in Paris, Allegro Hotel is placed close to the Palais Omnisport of Bercy, Bastille Opera House and the Francois Mitterrand National… …   International hotels

  • Allegro barbaro — L Allegro barbaro pour piano BB 63 (Sz. 49), composée en 1911, est l une des pièces pour piano seul de Béla Bartók. L œuvre typique de son style utilise des éléments folkloriques et combine des gammes roumaine et hongroise; la musique paysanne… …   Wikipédia en Français

  • Library catalog — A library catalog (or library catalogue) is a register of all bibliographic items found in a library or group of libraries, such as a network of libraries at several locations. A bibliographic item can be any information entity (e.g., books,… …   Wikipedia

  • Simple and Fast Multimedia Library — Infobox Software name = SFML logo = description = Simple and Fast Multimedia Library developer = Laurent GOMILA latest release version = 1.3 latest release date = 22 June 2008 programming language = C++ operating system = Mac OS X, Windows, Linux …   Wikipedia

  • L'Allegro, il Penseroso ed il Moderato — L’Allegro, il Penseroso ed il Moderato (HWV 55) ist ein Oratorium in drei Teilen von Georg Friedrich Händel. Inhaltsverzeichnis 1 Entstehung 2 Libretto 3 Literatur 4 Weblinks // …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”