Allegro is a portable library mainly aimed at video game and multimedia programming.

Allegro is a portable library mainly aimed at video game and multimedia programming, originally started by Shawn Hargreaves for the DJGPP compiler in a mixture of C and assembler.

Allegro is a game programming library for C/C++ developers distributed freely, supporting the following platforms: Unix (Linux, FreeBSD, etc.), Windows, MacOS X and Haiku/BeOS. Older versions also support DOS and QNX.

It provides many functions for graphics, sounds, player input (keyboard, mouse and joystick) and timers. It also provides fixed and floating point mathematical functions, 3d functions, file management functions, compressed datafile and a GUI. Read more details on the introductory page.

According to the Oxford Companion to Music, Allegro is the Italian for «quick, lively, bright». It is also a recursive acronym which stands for «Allegro Low LEvel Game ROutines».

Graphic functions.

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


Graphic drivers.

* Unix:
o X Window, DGA, fbcon
o SVGAlib
* Windows:
o DirectX (windowed or full-screen)
o GDI
* MacOS X:
o Quartz (windowed or full-screen)
* Haiku/BeOS:
o BWindowScreen
o BDirectWindow
* OpenGL:
o The AllegroGL addon allows to use OpenGL graphics with Allegro.

The older 4.2 branch also supports:

* Unix:
o VBE/AF
o mode-X
o VGA
* DOS:
o VGA 13h mode
o mode-X (23 VGA resolution plus unchained 640x400 extended mode)
o SVGA modes in 8, 15, 16, 24 and 32 bits per pixel
o linear VBE 2.0 framebuffer access
o hardware acceleration through VBE/AF API if supported
o additional graphic drivers through FreeBE/AF project

Sound functions.

* Midi:
o native MIDI music format support (with 64 simultaneous effects)
o dynamic control/response to music note on, note off, main volume, pan, pitch bend, and program change
o uses General MIDI patches
o you can read in wavetable patches for MIDI files (SF2 and GUS patches)
* Wave:
o native support of WAV and VOC file formats (playing looped forward, backwards or bidirectional)
o streaming audio
o modify volume, pan, pitch, etc during play
WordLinx - Low Cost Traffic
Sound drivers.

* Unix:
o OSS
o ALSA
o JACK
o SGI AL
* Windows:
o DirectSound
o WaveOut
o MIDI system drivers
* MacOS X:
o Core Audio
o Sound Manager
o Core Audio MIDI
o QuickTime MIDI

The older 4.2 branch also supports:

* Unix:
o ESD
o aRts
* DOS:
o Adlib, SB, SB Pro, SB16, AWE32
o MPU-401
o ESS AudioDrive
o Ensoniq Soundscape
o Windows Sound System

Math functions

* fixed point arithmetic and trigonometric routines
* precalculated trigonometric tables
* vector/matrix/quaternions 3d manipulation (translation, rotation, scaling, projection)

Misc.

* mouse, keyboard and joystick management
* high resolution interrupt timers (resolution of 10, 5 or less ms depending on platform)
* vertical retrace simulation
* manipulate configuration files
* manipulate compressed files in LZSS format
* manipulate multi-object resource-like compressed datafiles
* tool for creating datafiles (grabber)
* simple GUI for dialogs and file selector


Screenshots.








If you liked this article, subscribe to the feed by clickingthe image below to keep informed about new contents of the blog:


Share on Google Plus

About Giampaolo Rossi.

Fond of computer and video games. Stay informed of the latest news on games for Linux and Android. The future of gaming is in Linux. All you need to know about How to play Windows games on Linux.
    Blogger Comment
    Facebook Comment

0 commenti:

Post a Comment

Random Posts

  • Privacy and cookies declaration in accordance with the GDPR Regulation and the European Directive.
    24.05.2018 - 2 Comments
    The following information is for the benefit of readers who may choose to browse the pages of the site, take precautions to consult the contents or leave it. The provisions of the privacy authoritythat follow…
  • Pepi Bath is a role-play game where children learn about hygiene in a fun way.
    17.09.2014 - 0 Comments
    Pepi Bath is a role-play game where children learn about hygiene in a fun way. The app has two parts as different situations in which this cute character Pepi – a boy or a girl to choose – appears: at the sink…
  • Circus Linux! is a clone of the Atari 2600 game "Circus Atari”.
    12.08.2012 - Comments Disabled
    Circus Linux! is a clone of the Atari 2600 game "Circus Atari," produced by Atari, Inc. (which is itself a clone of an earlier arcade game named, simply "Circus"). The object is to move a teeter-totter back…
  • Terraria Guide action-adventure sandbox video game: Starting Out.
    20.04.2017 - 4 Comments
    Welcome to Terraria! Whether you are a new player, or perhaps a returning player who can’t remember if it’s Blinkroot or Moonglow that goes in that Night Owl Potion, hopefully, this guide can be of some help…
  • Tremulous is a first-person shooter with elements of real time strategy.
    18.01.2014 - 0 Comments
    Tremulous is a first-person shooter with elements of real time strategy. Each team must construct and defend a base, consisting of structures which aid the players in some way. The most important structure is…
  • Ambassador of Pain (Aop) is a curses based arcade game for Linux.
    30.04.2013 - Comments Disabled
    Ambassador of Pain (Aop) is a curses based arcade game for Linux/UNIX with only 64 lines of sourcecode. Download. To download the source code click here: aop-0.6.tar.gz Additionally you may want to browse…
  • 10 Best Linux Games for 2013.
    25.02.2014 - Comments Disabled
    As we know, Linux has been liked by users but not by game lovers. But from some time developers are working over the task to create interesting games for Linux. And today, we’ve an astounding collection of…
  • Apricots project is a 2D plane dogfighting game.
    30.06.2013 - 0 Comments
    Apricots for Linux is a game where you fly a little plane around the screen and shoot things and drop bombs on enemy targets, and it's meant to be quick and fun. You fly a little plane around and shoot…
  • OpenRA Guide: Chapter III: Player Personality and different ways of playing.
    11.03.2021 - 2 Comments
    This article is dedicated to the different types of players that can be found in OpenRA.There are many OpenRA players from all over the globe. The interesting thing is, they all have different ways of…
  • Hollow Knight is a 2D Metroidvania action-adventure game,a fictional ancient kingdom.
    30.07.2019 - 0 Comments
    Hollow Knight is a 2D Metroidvania action-adventure game, which takes place in Hallownest, a fictional ancient kingdom. The player controls an insect-like, silent, and nameless knight while exploring the…