Premium

Získejte všechny články
jen za 89 Kč/měsíc

Jazyk Cg od NVIDIE: nová éra v programování grafických efektů

Programovat grafické efekty na úrovni hardwaru není žádný med a vývojáři her jistě mnohokrát zatoužili po jazyku vyšší úrovně, který by umožnil snadnější psaní pixel a vertex shaderů. NVIDIA jim nyní vychází vstříc a zdá se, že ve svém jazyce Cg přináší grafickému světu nový a pevný standard.

Historie se opakuje
Když se objevily první mikroprocesory, neexistovaly pro ně žádné jazyky vyšší úrovně (Pascal, C, Basic apod.). Prvním programovacím prostředkem, na němž se muselo teprve vybudovat všechno ostatní, byl tzv. assembler – jazyk, který má převelice blízko k vlastnímu strojovému kódu daného procesoru (strojovým kódem rozumíme elementární instrukce ve formě čísel, které procesor umí přímo vykonat). Pod každým příkazem vyššího programovacího jazyka se obvykle skrývá velké množství (desítky, stovky, ale i tisíce) jednotlivých strojových instrukcí procesoru. Dnešní nástroje, jejichž pomocí vznikají typické aplikační programy a hry, poskytují vývojářům možnosti na hony vzdálené primitivnosti strojového kódu.

Programovat v assembleru není žádný med a dělá se to v podstatě jen tehdy, když není pro daný procesor žádný vyšší jazyk k dispozici, nebo když je potřeba docílit maximální rychlosti programu. Proto bylo jen otázkou času, kdy se objeví něco komfortnějšího i pro grafické procesory (GPU) s programovatelnými enginy. První vlaštovka právě přilétá, je (nic překvapivého) z dílny agilní NVIDIE, ale bude použitelná na všech grafických čipech kompatibilních s DirectX 8.

Tři tisková prohlášení
Minulý týden přišla NVIDIA se třemi separátními zprávami, které položily solidní základnu pro nástup nové éry programování. V první z nich představila vlastní jazyk Cg – C pro grafiku, jehož účelem je podstatně zjednodušit tvorbu zvláštních efektů na moderních grafických kartách. Syntakticky je, jak už název napovídá, Cg velmi podobné klasickému Céčku – většina datových typů je stejná, stejně se deklarují i proměnné a funkce atd. Výhody vyššího jazyka nad dosud používaným assemblerem jsou zřejmé – kromě jiných můžeme jmenovat rychlejší a efektivnější vývoj a ladění, optimalizaci prováděnou kompilátorem a přenositelnost programu na větší množství hardwarových Cg aneb grafické Céčko od NVIDIEplatforem. Cg vznikalo v úzké spolupráci s Microsoftem – je kompatibilní s jeho jazykem High Level Shading Language (ohlášen na Game Developers Conference 2002 v dubnu tohoto roku), který bude podporován rozhraním DirectX 9.0.

Na následujícím obrázku vidíte grafické efekty, kterých lze docílit pomocí shaderů.

 Zatímco první tisková zpráva se týkala věci abstraktní, tedy specifikace jazyka, druhé oznámení se již týkalo konkrétního produktu: kompilátoru jazyka Cg. Tento kompilátor je ústředním bodem vývojového prostředí NVIDIA Cg Toolkit 1.0, jehož veřejnou betaverzi si lze zdarma stáhnout ze stránek NVIDIE (je k dispozici pro Windows a Linux). Pro neprogramátory: kompilátor je program, který ze zdrojového kódu (typicky textový soubor) vytvoří cílový kód – v případě kompilátoru jazyka Cg (CgC) se jedná o výstup v assembleru pro grafický čip. CgC podporuje tyto významné platformy: Windows (DirectX 8, DirectX 9, OpenGL), Linux (OpenGL), Mac OS X (OpenGL) a Xbox. NVIDIA zřídila speciální stránku http://www.cgshaders.org, která se má stát oblíbeným návštěvním místem všech tvůrců pixelvertex shaderů – měli by zde najít volně použitelná dílka jiných autorů (a případně sami přispět), články na související témata a soutěže o zajímavé ceny.

Ve třetí tiskové zprávě se NVIDIA chlubí, a s největší pravděpodobností oprávněně, širokou podporou, které se jejím výše popsaným iniciativám dostává u vývojářů her a jiných grafických aplikací. Mnoho významných osobností se vyjádřilo o jazyku Cg a jeho kompilátoru od NVIDIE velmi pochvalně; specifikace Cg se vyvíjela již od druhé polovinyCg aneb grafické Céčko od NVIDIE roku 2001, NVIDIA oslovila stovky vývojářů a ti přispěli ke konečné podobě jazyka svými připomínkami a návrhy. Z herních firem, které podporují Cg, můžeme jmenovat například Bethesdu, Bioware, Blizzard, Codemasters, Core Design, Croteam, Electronic Arts, Ensemble Studios, Fox Interactive, Ion Storm, Lionhead, Lithtech, Massive, Maxis, Novalogic, Relic, Sony nebo Valve. Cg se však uplatní i v „seriózních“ grafických aplikacích firem jako je Alias|Wavefront Maya, Discreet 3DS MAX, SOFTIMAGE|XSI nebo NewTek LightWave 3D.

Základ byl položen
NVIDIA učinila další významný krok, aby upevnila pozici světového grafického lídra – a toto není (jen) reklamní slogan, ale evidentní fakt. Grafické procesory dozrály do stadia, kdy si již zaslouží programovací prostředek vyšší úrovně, a NVIDIA nezaváhala a dodala ho. Zavádí tak v jazyku Cg standard, který se jistě prosadí, a jeho specifikaci si NVIDIA podrží pevně ve svých rukách. Ostatní výrobci grafických čipů se tak buď budou muset smířit s tím, že jejich produkty jsou ve většině případů programovány „konkurenčním jazykem“, nebo se pokusí vytvořit nějaký gPascal či něco podobného. Nemusí však mít strach, že by kompilátor Cg generoval pro jejich čipy nějak nevýhodný kód – a pokud by jim to tak náhodou připadalo, nic jim nebrání vytvořit vlastní překladač Cg, který bude perfektně optimalizovat právě na míru jejich hardwaru.

  • Nejčtenější

Herečce Slávce Budínové by bylo 100 let. Zemřela opuštěná, bez zájmu veřejnosti

v diskusi je 27 příspěvků

21. dubna 2024

Před 100 lety, 21. dubna 1924, se v Ostravě narodila známá česká herečka Slávka Budínová.

Znovuzrození japonských letadlových lodí. Ve výzbroji budou mít F-35B

v diskusi je 51 příspěvků

19. dubna 2024

Japonsko má ve své ústavě zakázáno vlastnit ofenzivní zbraně, jako jsou letadlové lodě. Doba...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Zázrak! NASA po pěti měsících obdržela od sondy Voyager smysluplnou zprávu

v diskusi je 98 příspěvků

23. dubna 2024  13:37

Když se v únoru letošního roku stále nedařilo navázat smysluplnou komunikaci s jedním z...

Uvidíme v budoucnu na obloze druhý Měsíc? Příčinou může být neobvyklá hvězda

v diskusi je 13 příspěvků

17. dubna 2024

Velmi neobvyklá hvězda éta Carinae v 19. století náhle zjasnila a stala se druhou nejjasnější...

{NADPIS reklamního článku dlouhý přes dva řádky}

{POPISEK reklamního článku, také dlouhý přes dva a možná dokonce až tři řádky, končící na tři tečky...}

Unikátní exkurze. Nahlédněte do francouzské jaderné ponorky před vyplutím

v diskusi je 16 příspěvků

20. dubna 2024

Není obvyklé, aby reportéři mohli nahlédnout do jaderné ponorky v aktivní službě. Agentura AP nyní...

Zázrak! NASA po pěti měsících obdržela od sondy Voyager smysluplnou zprávu

v diskusi je 98 příspěvků

23. dubna 2024  13:37

Když se v únoru letošního roku stále nedařilo navázat smysluplnou komunikaci s jedním z...

Týrají nabíječky a elektroauta, aby pak netrpěl řidič

v diskusi je 24 příspěvků

23. dubna 2024

Prozkoumali jsme speciální laboratoř, kde E.ON v extrémních podmínkách testuje nabíjecí stanice pro...

Proč umělá inteligence lže a proč kvůli ní zhloupneme. Počítačový expert vypráví

v diskusi je 17 příspěvků

22. dubna 2024

Premium Zatímco průmyslová revoluce zaváděla masivní využití strojů, které nahradily lidské svaly, nyní...

Jediný vrtulník, který létal na jiné planetě, se loučí poslední zprávou

v diskusi je 9 příspěvků

22. dubna 2024  17:31

Tři roky poté, co se vůbec poprvé na jiné planetě sluneční soustavy roztočily rotory létajícího...

Manželé Babišovi se rozcházejí, přejí si zachovat rodinnou harmonii

Podnikatel, předseda ANO a bývalý premiér Andrej Babiš (69) s manželkou Monikou (49) v pátek oznámili, že se...

Sexy Sandra Nováková pózovala pro Playboy. Focení schválil manžel

Herečka Sandra Nováková už několikrát při natáčení dokázala, že s odhalováním nemá problém. V minulosti přitom tvrdila,...

Charlotte spí na Hlaváku mezi feťáky, dluží spoustě lidí, říká matka Štikové

Charlotte Štiková (27) před rokem oznámila, že zhubla šedesát kilo. Na aktuálních fotkách, které sdílela na Instagramu...

Herečka Hunter Schaferová potvrdila románek se španělskou zpěvačkou

Americká herečka Hunter Schaferová potvrdila domněnky mnoha jejích fanoušků. A to sice, že před pěti lety opravdu...

Největší mýty o zubní hygieně, kvůli kterým si můžete zničit chrup

Možná si myslíte, že se v péči o zuby orientujete dost dobře, přesto v této oblasti stále ještě existuje spousta...