blizsi-seznameni-s-vertex-shadery
Hardware Článek Bližší seznámení s vertex shadery

Bližší seznámení s vertex shadery | Kapitola 3

Vrtal David

Vrtal David

16. 4. 2003 00:00 36

Seznam kapitol

1. Stručný úvod 2. Několik praktických ukázek 3. Seznam operací použitelných k vytvoření finální scény pomocí vertex shaderů

Minulý týden jsme vás seznámili s Pixel Shadery. Dnes se podíváme na Vertex shadery, které jsou nástrojem k ovládání objektů a jejich deformací. Dnešní část jsme se snažili udělat trochu více pro laické uživatele. Doufáme, že se vám bude tento článek líbit.

Reklama

Pojem vertex shader jsme si definovali již v kapitole I. Bylo řečeno, že s použitím vertex shaderů se dá dosáhnout úžasných efektů. Podívejte se na tento ilustrační obrázek z Dooma 3. Jsou na něm vidět realistické tváře postav z této hry.

Bližší seznámení s vertex shadery
i Zdroj: PCTuning.cz
Bližší seznámení s vertex shadery
i Zdroj: PCTuning.cz
Bližší seznámení s vertex shadery
i Zdroj: PCTuning.cz
Bližší seznámení s vertex shadery
i Zdroj: PCTuning.cz

   

Ukázka efektů dosažených v Doomu 3 pomocí vertex shaderů

Po shlédnutí obrázků se podíváme na výčet operací, které můžeme se scénou provádět pomocí vertex shaderu. Použitím kombinace těchto operací můžeme dosáhnout efektů předvedených na obrázcích z Dooma 3. Zde je uveden seznam jednotlivých operací:

  1. Příprava scény -jedná se o výpočetní operace spojené s výpočty prováděnými před vygenerováním scény.

  2. Rotace scény - Jedná se o výpočetní operace spojené s jakýmkoliv natáčením scény o nějaký úhel.

  3. Osvětlování scény -zde se jedná o výpočetní operace spojené s osvětlováním celé scény. O tyto operace se stará známý T&L engine. Bere se zde v úvahu rozmístění světelných zdrojů pro generování scény, použitý typ světelných zdrojů a intenzita zdrojů. Použitelné typy jsou například bodové zdroje, zdroje přirozeného světla, zdroje umělého světla atd. Tyto výpočty jsou velmi důležité v moderních 3D hrách. Nejznámějším člověkem z herní branže, který věnuje velkou pozornost správnému osvětlení scén a práci se světlem a stínem, je legendárním John Carmack ze společnosti Id software. Tyto technologie jsou patrny především z jeho připravované pecky Doom III, kterou všichni netrpělivě očekáváme. Většina z nás měla možnost vyzkoušet si prví tři části hry ve verzi, která Id softwaru unikla a která se dostala mezi širokou hráčskou komunitu po celém světě. Již z této krátké ukázky je patrné, že jednou ze základních složek ovlivňujících atmosféru hry je právě hra se světlem a stínem.

  4. Umisťování scény -jedná se o výpočetní operace spojené s výpočty jež nám umožňují přesné umístění a souřadnicové napozicování scény v prostoru. Tyto operace jsou velice složité u dynamicky se měnících scén, kdy matematický model, popisující chování jednotlivých objektů ve scéně a celkové umístění a natočení scény v relativním souřadnicovém systému oproti výchozímu souřadnicovému systému, je velice složitý.

  5. Animování scény -do této kategorie spadají výpočetní operace spojené s výpočty určenými pro rozpohybování a rozanimování staticky navržených scén.
     
    Ukázka drátěného modelu postavy z Dooma 3 před aplikací efektu vytvořeného vertex shaderem
    i Zdroj: PCTuning.cz
    Ukázka drátěného modelu postavy z Dooma 3 před aplikací efektu vytvořeného vertex shaderem

     

    Model po aplikaci efektů vytvořených vertex shaderem
    i Zdroj: PCTuning.cz
    Model po aplikaci efektů vytvořených vertex shaderem


     

  6. Transformace scény -v této kategorii jsou zahrnuty výpočetní operace spojené s jakýmikoliv transformacemi scény prováděnými aplikováním různých pokročilých transformačních technologií.

    Bližší seznámení s vertex shadery
    i Zdroj: PCTuning.cz



      Aplikace wave efektu (vlnový efekt) na model

    Aplikace fish eye efektu (rybí oko) na model
    i Zdroj: PCTuning.cz
    Aplikace fish eye efektu (rybí oko) na model

     

    Aplikace efektu pro first person hry na model
    i Zdroj: PCTuning.cz
    Aplikace efektu pro first person hry na model

     

Kromě operací s již výše zmiňovanými trojúhelníky operují vertex shadery také s polygony a plochami. Pokud by jste chtěli používat trochu fundovanější označení pro proces zpracování trojúhelníků, polygonů a ploch pomocí vertex shaderů, lze pro tento proces použít název vertex processing engine. Tento engine je u novějších grafických karet tvořen většinou jednou nebo více shader pipeline. Každá z těchto pipeline může souběžně provádět jak skalární tak vektorové operace. Skalární operace pracují většinou jen s jednoduchými jednosložkovými vstupy. Oproti tomu vektorové operace pracují se vstupy vícesložkovými. Může se jednat buďto o informace o RGB barevných složkách (red-červená barva, green-zelená barva, blue-modrá barva) nebo o souřadnicích (x,y,z). Tím, že tato jednotka je schopna zpracovávat oba druhy těchto operací se dá dost podstatně zvýšit rychlost zpracování.

Tím bych dnešní část seriálu ukončil. Doufám, že je již tato část seriálu dostatečně pochopitelná a bude k užitku i běžným uživatelům. V další části seriálu se znovu vrátím k pixel shaderům a doplním předchozí článek o vysvětlení základní problematiky.

Předchozí
Další
Reklama
Reklama

Komentáře

Nejsi přihlášený(á)

Pro psaní a hodnocení komentářů se prosím přihlas ke svému účtu nebo si jej vytvoř.

Rychlé přihlášení přes:

Google Seznam
Reklama
Reklama