Hostováno na:
Stránka projektu
|
|
Představení
Allegro je přenositelná knihovna. Je určená hlavně na psaní her
a multimediální programování. Původně ji započal Shawn Hargreaves jako knihovnu pro
kompilátor DJGPP napsanou ve směsici C a assembleru.
Podle Oxford Companion to Music, Allegro je italsky «rychlé, plné
života, jasné». Z toho byl vytvořen název, který je rekurzivním
akronymem těchto slov: «Allegro Low LEvel
Game ROutines».
Multiplatformní podpora
- Unix (Linux, FreeBSD, Irix, Solaris, Darwin)
- Windows (MSVC, MinGW, Cygwin, Borland)
- BeOS
- QNX
- MacOS X
- Dos (DJGPP, Watcom)
Grafické funkce
- Vektorové kreslení:
- pixely, čáry, pravoúhelníky, kružnice, elipsy, oblouky, Bezierovy křivky
- vyplněné, s nebo bez vzorku
- mnohoúhelníky: ploché, Gouraud, texturované (3D) a průsvitné
- Sprites:
- maskované, zkomprimované a zkompilované sprites
- blitting, rotace, roztahování, zmenšení, alfa míchání, Gouraud šrafování
- vestavěná podpora pro soubory BMP, LBM, PCX a TGA (další typy jsou
podporovány pomocí rozšíření knihovny)
- Barevné palety:
- manipulace s barevnými paletami (čtení, zápis, konverze)
- konverze barevných formátů RGB <-> HSV
- Text:
- podpora pro různá kódování a konverze, výchozí je UTF-8
- bitmapové fonty (maskování, zbarvení, zarovnání)
- Různé:
- kreslení přímo na obrazovku nebo na jakkoli velkou bitmapu v paměti
- hardwarový scrolling a triple buffering (pokud je dostupný), mode-X
split screen
- animační funkce pro formát FLI/FLC
Grafické ovladače
- Unix:
- X Window, DGA, fbcon
- SVGAlib
- VBE/AF
- mode-X
- VGA
- Windows:
- DirectX (v okně nebo fullscreen)
- GDI
- MacOS X:
- Quartz (v okně nebo fullscreen)
- BeOS:
- BWindowScreen
- BDirectWindow
- Dos:
- mód VGA 13h
- mode-X (23 VGA rozlišení plus rozšířený režim 640x400)
- SVGA módy v 8, 15, 16, 24 a 32 bitech na pixel
- lineární VBE 2.0 framebuffer přístup
- hardwarová akcelerace přes VBE/AF API (pokud je podporováno)
- další grafické ovladače prostřednictvím projektu FreeBE/AF
- OpenGL:
- Addon AllegroGL umožňuje
používat s Allegrem OpenGL grafiku.
Funkce pro zvuk
- Midi:
- nativní podpora pro hudební formát MIDI (s 64 simultánními efekty)
- dynamická kontrola/reakce na music note on, note off, main volume, pan,
pitch bend a změny programu
- používání General MIDI patchů
- můžete číst ve wavetable patchích pro MIDI soubory (SF2 a GUS patche)
- Wave:
- nativní podpora formátů WAV a VOC (hraní ve smyčce dopředu, dozadu
nebo obousměrně)
- zvukové proudy
- upravení hlasitosti, pan, pitch, atd. během hraní
Zvukové ovladače
- Unix:
- OSS
- ALSA (0.5/0.9/1.0)
- ESD
- aRts
- JACK
- SGI AL
- Windows:
- DirectSound
- WaveOut
- MIDI systémové ovladače
- MacOS X:
- Core Audio
- Sound Manager
- Core Audio MIDI
- QuickTime MIDI
- Dos:
- Adlib, SB, SB Pro, SB16, AWE32
- MPU-401
- ESS AudioDrive
- Ensoniq Soundscape
- Windows Sound System
Matematické funkce
- aritmetrické a trigonometrické rutiny v pevné desetinné čárce
- předkalkulované trigonometrické tabulky
- 3d manipulace s vektory/maticemi/čtveřicemi (překlady, rotace, měřítka,
projekce)
Různé
- správa myši, klávesnice a joysticku
- časovače s vysokým rozlišením (rozlišení 10, 5 nebo méně ms, závisí
na platformě)
- vertical retrace simulation
- manipulace s konfiguračními soubory
- manipulace s komprimovanými soubory ve formátu LZSS
- manipulace s mnohoobjektovými komprimovanými datasoubory
- nástroj pro tvorbu datasouborů (grabber)
- jednoduché GUI na dialogy a výběr souborů
Vidím Allegro poprvé, co mám dělat?
Především, vítejte! Na základě vašich zkušeností byste se měl rozhodnout,
jestli nebude lepší začít s něčím jiným než Allegrem.
Pokud jste úplným začátečníkem v programování v jazyku C, tak vám
Allegro moc nepomůže. Allegro, jako knihovna pro jazyk C, předpokládá, že
víte, jak napsat program v jazyce C, jak ho zkompilovat a slinkovat,
aby se vytvořil spustitelný program. Toto se bohužel budete muset naučit jako
první. Můžete použít nějaký vyhledávač (např. Google), abyste našli nějaký tutoriál
a dokumentaci o programování v jazyce C nebo si našli
a koupili nějakou knihu s touto tématikou. Jazyk C je velmi známý
a existuje už mnoho let, takže nebudete mít při vyhledávání informací
o tomto jazyku příliš mnoho problémů.
Pokud už víte, jak se píší programy v jazyce C, ale nemáte zkušenosti
s psaním her, tak si vychutnejte a užijte učení se Allegra
a jeho používání. Pokud si teď chcete Allegro stáhnout, tak doporučujeme, abyste si stáhli
stabilní verzi. Allegro obsahuje dobrou dokumentaci a více jak
40 ukázkových programů, z kterých se můžete naučit základní věci, od
kterých pak můžete dále rozvíjet svoje zkušenosti. Můžete si dokonce zahrát
malou demonstrativní hru, ve které je cílem zničit asteroidy. Dokumentaci
zabalenou v balíku s Allegrem můžete také najít online a je také mnoho tutoriálů a dokonce i nějaké
knihy, které si můžete přečíst, abyste se ještě více zlepšili.
Pokud jste zkušený programátor her, můžete rychle získat představu, jak
program používající Allegro vypadá, letmým přelétnutím po API nebo přečtením
si ukázkových programů zabalených v balíku Allegra. Allegro se snaží
udělat vytváření her co nejjednodušší, ale udržuje si flexibilitu, aby se daly
použít i nízkoúrovňové síly, které jsou někdy ve stejný čas potřeba.
Ať už jste začátečníkem nebo ne, měl byste vědět, že je několik cest, jak
komunikovat s dalšími uživateli Allegra. Existuje několik mailing listů, které můžete odebírat.
Většinou jsou tiché a klidné do té doby, než někdo nezačne nějakou
zajímavou diskuzi a každý nepřijde se svojí odpovědí. Je také webové
fórum Allegro.cc s daleko větším
počtem uživatelů (a také s větším poměrem noise-to-signal).
Nestyďte se podělit s ostatními o svoje nápady a ukázat svoje
projekty. Každý rád uvidí hru, která dostává Allegro až na samé hranice.
Ještě lepší je, pokud poskytnete zdrojový kód ostatním, aby se z něho
mohli také něco naučit.
|