Allegro (softwarová knihovna) - Allegro (software library) - Wikipedia
Části tohoto článku (ty, které se týkají Allegro 4, jehož podpora je ve prospěch Allegro 5 zastaralá) musí být aktualizováno.Březen 2014) ( |
Logo Allegro | |
Původní autoři | Shawn Hargreaves |
---|---|
Vývojáři | Vývojáři Allegro |
První vydání | počátkem roku 1990 |
Stabilní uvolnění | 5.2.6 / 9. února 2020 |
Úložiště | |
Napsáno | C |
Operační systém | Okna, Linux, Operační Systém Mac, et al. |
Typ | Multimédia a Hry SDK |
Licence | Allegro 4: Pivní zboží[1] Allegro 5: zlib |
webová stránka | liballeg |
Allegro je softwarová knihovna pro video hra rozvoj.[2][3][4] Mezi funkce knihovny patří podpora základní 2D grafiky, manipulace s obrázky, textový výstup, zvukový výstup, MIDI hudba, vstup a časovače, stejně jako další rutiny pro pevnou a plovoucí desetinnou čárku matice aritmetický, Unicode řetězce, přístup k systému souborů, manipulace se soubory, datové soubory a 3D grafika. Knihovna je zapsána v Programovací jazyk C. a jsou navrženy pro použití s C, C ++ nebo Cíl-C, s vazby dostupné pro Krajta, Lua, Systém, D, Jít a další jazyky.[5] Allegro přichází s rozsáhlou dokumentací a mnoha příklady.
Allegro podporuje Okna, Operační Systém Mac, Unixové systémy, Android, a iOS, abstrahovat jejich aplikační programovací rozhraní (API) do jednoho přenosného rozhraní. Předchozí verze až 4.4 podporované Windows, macOS, DOS, BeOS a různé unixové systémy s (nebo bez) Systém X Window. K dispozici je také nezávislý přístav Allegro AmigaOS 4 a MorphOS.
Vydáno na základě podmínek licence zlib, Allegro je bezplatný open source software.
Dějiny
Zpočátku stál za Nízkoúrovňové herní rutiny Atari,[6] Allegro původně vytvořil Shawn Hargreaves pro Atari ST na počátku 90. let. Hargreaves však opustil verzi Atari, když si uvědomil, že platforma umírá, a znovu implementoval svou práci pro Borland C ++ a DJGPP překladačů v roce 1995. Podpora pro Borland C ++ byla ve verzi 2.0 zrušena a DJGPP byl jediným podporovaným překladačem. Jako DJGPP byl DOS překladač, všechny hry, které používaly Allegro, proto používaly DOS. Kolem roku 1998 se Allegro rozdělil do několika verzí. Přístav do Okna Byl vytvořen WinAllegro a také během této doby byl vytvořen unixový přístav Allegro, XwinAllegro. Tyto různé porty byly spojeny během verzí Allegro 3.9 WIP, přičemž Allegro 4.0 je první stabilní verzí Allegro, která podporuje více platforem.
Allegro 5
Současný vývoj je zaměřen na větev Allegro 5, kompletní redesign jak API, tak velké části interního provozu knihovny. Bylo vyvinuto úsilí, aby bylo rozhraní API konzistentnější a bezpečné pro více vláken. Ve výchozím nastavení je knihovna v případě potřeby hardwarově akcelerována pomocí backendů vykreslování OpenGL nebo DirectX. Mnoho doplňků, které existovaly jako samostatné projekty pro Allegro 4, nyní bezproblémově propojuje rozhraní s vlastním Allegro a je součástí výchozí instalace. Allegro 5 je událost řízena.
Funkce
Allegro poskytuje následující grafické funkce:
- Vektorové kreslení:
- pixely, čáry, obdélníky, trojúhelníky, kruhy, elipsy, oblouky, Bézierovy křivky
- tvarová výplň, se vzorem nebo bez
- mnohoúhelníky: ploché, Gouraud, texturované (3D) a průsvitné
- Skřítci:
- Barevné palety:
- Text:
- podpora různých kódování a převodu, výchozí je UTF-8
- bitmapová písma (maskování, vybarvení, zarovnání)
- Různé:
- kreslit přímo na obrazovku nebo na bitmapy libovolné velikosti paměti
- posouvání hardwaru a trojité ukládání do vyrovnávací paměti (je-li k dispozici), režim X rozdělená obrazovka
- animační funkce pro FLIC formát[7]
Doplňky
Komunita uživatelů Allegro přispěla několika rozšířeními knihovny, aby zvládly věci, jako je posouvání mapových dlaždic a import a export různých formátů souborů (např. PNG, GIF, JPEG snímky, MPEG video, Ogg, MP3, TO, S3M, Hudba XM, TTF písma, a více).
Allegro 4.x a níže lze použít ve spojení s OpenGL pomocí knihovny AllegroGL který rozšiřuje funkčnost Allegro do OpenGL a tedy i hardware. Allegro 5 nativně podporuje OpenGL.
Viz také
- Grafické rozhraní Borland (BGI)
- ClanLib
- DirectX
- Seznam herních enginů
- Microsoft XNA
- OpenAL
- OpenGL
- OpenML
- Raylib
- SciTech SNAP
- SDL
- SFML
- UniVBE
Reference
- ^ Vývojový tým Allegro. „Licence na dárkové zboží“. Citováno 2013-11-16.
- ^ Harbour, Jonathan (2004). Programování her vše v jednom, druhé vydání. Technologie kurzu PTR. ISBN 1-59200-383-4.
- ^ Steinke, Lennart (2003). Spielprogrammierung. BHV Verlag. ISBN 3-8266-8075-8.
- ^ Deitel, P. J. (2006). C Jak programovat. Jak programovat. Prentice Hall. ISBN 0-13-240416-8.
- ^ Seznam jazykových vazeb Allegro
- ^ Příspěvek na fóru od Shawn Hargreaves
- ^ Úvod do Allegro