Premium

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

Jak vzniká 3D obraz (1. část)

  12:00aktualizováno  3. února 2:08
S nástupem grafických akcelerátorů třetího rozměru do běžných PC se prudce zvýšil zájem hráčů o v této oblasti používané technologie. Zdaleka ne každý však má jasno v tom, co se skrývá za dnes frekventovanými pojmy jako „3D pipeline“, „rendering“ atp. Série článků, jejíž je tento prvním dílem, si klade za cíl vám přiblížit postup vytváření 3D obrazu a objasnit některé termíny s tímto procesem spojené.

Firmy vyrábějící grafické čipy a karty mají zájem na tom, aby zákaznická veřejnost do jisté míry věděla, o co uvnitř jejich produktů jde. Důvod je prozaický: bez těchto znalostí mohou ve svých reklamách donekonečna inzerovat nové vlastnosti svých karet, ale málokdo si pod nimi něco konkrétnějšího představí. Hlubší znalost věci by jim však mohla také vadit – zákazník je pak někdy schopen odhalit, že za halasně propagovanou záležitostí je pouze nafouklá bublina.

Tak či onak, pokud se chceme v oblasti zobrazování trojrozměrných scén trochu orientovat, musíme zabrousit do oblasti prostorové geometrie, barev, (ne)schopností lidského oka a dalších intelektuálně stimulujících věcí. Začněme tím pojmem, který celý proces vytváření 3D obrazu zastřešuje.

3D potrubí
Obraz, který vidíte při hraní 3D her na svém monitoru, prošel před vlastním zobrazením několika fázemi. Tyto fáze bychom mohli přirovnat k jednotlivým pracovištím výrobní linky – na každém z nich se s polotovarem provede určitá operace a na výstupu je pak finální výrobek. „Lince“ pro výrobu 3D obrazu se říká 3D potrubí (3D pipeline). Níže uvedené schéma ukazuje příklad 3D potrubí. V praxi mohou jednotlivé kroky probíhat i v jiném pořadí, nicméně všechna 3D potrubí musejí začínat definicí scény, tj. toho všeho, co v obrazu vystupuje.

3D pipeline

Programátoři vědí, že drtivá většina praktických problémů vyžaduje nasazení databází – ostatně, když se poněkud povznesete, zjistíte, že například taková adventure nebo RPG je v podstatě programem nad databází postav, lokací, úkolů a předmětů. Nuže, scéna je definována tzv. scénovou databází (scene database), která obsahuje matematickou reprezentaci jednotlivých virtuálních objektů vystupujících ve scéně a jejich vzájemnou polohu. Aby bylo možné na scénu „zaujmout pohled“, je ještě nutné znát pozici zorného bodu (view point), tj. bodu, odkud scénu pozorujeme. Objekty samozřejmě v průběhu vašeho hraní mění polohu, objevují se, mizí atd., takže se mění i obsah scénové databáze. Proces této aktualizace scénové databáze se nazývá administrace scény (scene management).

V dnešních hrách a 3D aplikacích jsou modely objektů (object models) obvykle definovány pomocí množiny mnohoúhelníků neboli polygonů – typicky trojúhelníků nebo čtyřúhelníků – představujících povrch daného objektu. Samotné polygony jsou pak definovány souřadnicemi svých vrcholů (vertex) v třírozměrném prostoru. Na dalším obrázku vidíte, jak se ze seznamu vrcholů dají vytvářet celé polygonové pásy (polygon strips) a síta (meshes), v nichž se využívá společných vrcholů, aby byl celkový počet různých vrcholů v daném modelu co nejnižší (a tím pádem definice modelu co nejjednodušší).

Polygonové pásy

Chceme-li získat hladší reprezentaci objektu, musíme ho pokrýt větším počtem polygonů, čímž ovšem zvýšíme výpočetní náročnost objektu. Definice objektů pomocí polygonů má samozřejmě své meze – těžko je například použijete k reprezentaci vlasů nebo ohně. Nemohou také už ze své podstaty nic vypovídat o vnitřku objektu – popisují pouze jeho povrch.

K vyřešení těchto záležitostí bylo vyvinuto několik metod. Pro přímý popis zakřivených povrchů lze použít vhodné matematické postupy, například neuniformní racionální B-spline křivky (nonuniform rational B-splinesNURBS). Tento způsob je sice podstatně kompaktnější než dlouhý seznam polygonů, ale výpočetně velmi náročný – na čipy schopné renderovat scénu přímo z těchto funkcí si budeme muset ještě nějaký ten rok počkat. Pro převod funkcionálního modelu na polygonový se používá proces zvaný mozaikování (tesselation). Tuto konverzi lze provádět těsně před vlastním renderováním objektu a výsledný počet a velikost generovaných polygonů přizpůsobit velikosti objektu na obrazovce – vizuálně menší objekty vyžadují méně polygonů.

Pro popis objektů včetně jejich vnitřku se používají namísto polygonů třírozměrná pole tzv. voxelů, s nimiž zacházejí systémy pro objemové renderování (volume rendering). Ty jsou zapotřebí, pokud potřebujeme zobrazovat řezy pevnými objekty.

Zdroj: MicroDesign Resources

Autor:
Témata: virtuální
  • Nejčtenější

Odešla z Twitche, přesto je Amouranth stále nejsledovanější streamerkou světa

Kaitlyn Michelle Siragusa, vystupující na internetu pod přezdívkou Amouranth, se stále sluní na...

Nejlepší česká hra dekády se vrací. Kingdom Come 2 vyjde ještě letos

Dlouhých šest let museli fanoušci ohromného českého hitu Kingdom Come: Deliverance čekat na...

{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...}

Populární stránka pro sdílení modifikací nevydržela nápor fanoušků Falloutu

Stránka Nexus Mods, která je hlavním uzlem pro sdílení modifikací počítačových her, zaznamenala...

KVÍZ: Jak dobře znáte českou historickou hru Kingdom Come: Deliverance?

Čerstvě oznámené pokračování české hry na hrdiny Kingdom Come: Deliverance bude přímo navazovat na...

{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...}

Udělali nám z postaviček ošklivce, stěžují si hráči mobilních Pokémonů

Nová aktualizace populární mobilní hry Pokémon GO je podle hráčů naprostá katastrofa. Ve hře se...

BlizzCon 2024 nebude

Letošní ročník akce BlizzCon, na níž fanoušci oslavují hry studia Blizzard, tedy značky jako...

Jsou na vás hry moc těžké? V budoucnu vám možná pomůže umělá inteligence

Nový patent Sony věští budoucnost hraní, kdy může vzniknout nový nejnižší stupeň obtížnosti. Hru za...

Simulátor offroadového ježdění MudRunner vyjde i pro virtuální realitu

V MudRunnerovi se sice jezdí daleko pomaleji, než ve většině ostatních automobilových simulátorů,...

OBRAZEM: Paper Mario: The Thousand-Year Door je další příkladný remake

Paper Mario: The Thousand-Year Door je remake akčního RPG s tahovými souboji, které původně vyšlo v...

Samoživitelka skončila v nemocnici a čtvrt roku nemohla pracovat
Samoživitelka skončila v nemocnici a čtvrt roku nemohla pracovat

Téměř deset miliard korun – tolik jen za loňský rok poslaly pojišťovny lidem za úrazy, závažná onemocnění či úmrtí. Životní pojištění pomohlo za...

Bývalý fitness trenér Kavalír zrušil asistovanou sebevraždu, manželka je těhotná

Bývalý fitness trenér Jan Kavalír (33) trpí osmým rokem amyotrofickou laterální sklerózou. 19. dubna tohoto roku měl ve...

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...

Tenistka Markéta Vondroušová se po necelých dvou letech manželství rozvádí

Sedmá hráčka světa a aktuální vítězka nejprestižnějšího turnaje světa Wimbledonu, tenistka Markéta Vondroušová (24), se...

Za vytlačení z linky do Brna musí Student Agency zaplatit náhradu 21 milionů

Společnost Student Agency provozující autobusy a vlaky pod označením RegioJet musí zaplatit bývalému konkurentovi 21...