Allegro bibliotheek
Allegro | |
---|---|
![]() | |
Basis data | |
Jaar van uitgave | 1990 |
Huidige versie | 5.2.5 (25 februari 2019) |
besturingssysteem | Windows, Linux, macOS |
programmeertaal | C. |
Licentie | zlib-licentie |
alleg.sf.net |
Allegro is een gratis bibliotheek geschreven in C voor het programmeren van computerspellen in C , C++ en andere talen. De licentie van Allegro ( zlib-licentie ) beperkt op geen enkele manier het gebruik, de wijziging of de distributie van de bibliotheek.
Een groot voordeel is de draagbaarheid van Allegro. Programma's kunnen meestal zonder wijzigingen worden gecompileerd en uitgevoerd onder verschillende besturingssystemen . De huidige stabiele versie 5.0 ondersteunt zowel Windows , Unix ( Linux , FreeBSD , Irix, Solaris , Darwin ) als macOS en iOS .
De basisdiensten van Allegro omvatten functies en datastructuren voor tweedimensionale afbeeldingen, geluidsuitvoer, gebruikersinvoer en de timing van programma's. De bibliotheek biedt ook ondersteuning voor wiskundige berekeningen, eenvoudige 3D- computergraphics , gecomprimeerde gegevens , bestandssystemen en een eenvoudige grafische gebruikersinterface .
Beginnersvriendelijkheid
Allegro vervult vergelijkbare taken als de Simple DirectMedia Layer , maar abstraheert iets verder van de hardware- basics en biedt meer functionaliteit " out of the box ", waardoor er minder extra bibliotheken nodig zijn. Allegro wordt ook geleverd met uitgebreide en begrijpelijke documentatie en veel voorbeeldprogramma's. Om deze redenen is Allegro relatief gemakkelijk toegankelijk voor beginners.
Geschiedenis en erfenissen
Allegro's roots gaan terug naar de Atari ST in het begin van de jaren '90 . Het was vooral bekend als een bibliotheek voor DJGPP , de DOS-versie van de GNU Compiler Collection . Als gevolg hiervan heeft het nog steeds veel routines voor DOS-ondersteuning. De ondersteuning voor high-performance hardware , bijvoorbeeld om snel kleuren te mengen, en met name de aansluiting op OpenGL zijn in het pure Allegro niet zo volwassen als in SDL . De FBlend- en AllegroGL- extensies compenseren dit nadeel echter.
Enkele andere problemen van de huidige API zijn historisch gegroeid: sommige van de gebruikte termen zijn ongebruikelijk of verouderd. Veel gelijkwaardige of vergelijkbare functies kunnen worden samengevat. Bij sommige routines die worden aangeboden, rijst de vraag of deze nog up-to-date zijn voor moderne systemen of dat externe aanbiedingen deze taken beter zouden kunnen oplossen. Dit geldt b.v. B. voor de vaste-komma-rekenkunde en de software 3D-routines. De gebruikersinterface van Allegro is voornamelijk geïntroduceerd voor de vele tools die daarbij horen. Er zijn verschillende krachtige extensies beschikbaar om uw eigen programma's aantrekkelijker te maken.
Veel van de genoemde nadelen zouden in een nieuwe versie 5 verholpen moeten zijn. Door tijdgebrek is de ontwikkeling na een korte actieve fase in 2001 relatief traag verlopen.
Allegro 5 krijgt een volledig herziene API, grafische code die is afgestemd op de nieuwste hardware en een op gebeurtenissen gebaseerd invoer- en timersysteem. Gelijktijdig met de ontwikkeling van versie 5 in de huidige ontwikkelingstak 4.9, zijn er ook plannen om aan versie 4.4 te werken na de release van de stabiele versie 4.2.2, die gebaseerd is op de oude code, maar die enkele toevoegingen zou moeten integreren -ons zoals AllegroGL. [1]
Terwijl de software eerder werd gepubliceerd als "Giftware", zal deze vanaf versie 5 worden gepubliceerd onder de zlib-licentie .
Zie ook
literatuur
- Lennart Steinke: Game programmering. bhv, 2003 ISBN 3826680758
- Jonathan Harbor: Game Programming All in One, tweede editie. Muska & Lipman / Premier-Trade 2004, ISBN 1-592-00383-4 (Engels)
web links
- Officiële website
- Allegro-uitbreidingen, veel games geschreven in Allegro en actieve forums
- Allegro Wiki
- Allegro-tutorial (Duits)
- FBlend
zwellen
- ↑ officiële routekaart op de Allegro Wiki-pagina