Hlavní navigace

Grafika v UNIXu - fraktály, animace, holografie, 3D galerie

Stanislav Brabec 2. 4. 2002

V dnešním posledním dílu dokončíme téma 3D grafiky. Dozvíme se o použití fraktálů, o možnostech animace, o urychlujících metodách a o počítačové holografii. Seriál o grafice v UNIXu ukončíme malou otevřeně kódovou obrazovou přílohou.

Fraktály v grafice
Tabulka č. 266

Arches
Fraktály mimořádně zvyšují věrohodnost scény.
Obrázek byl vytvořen pomocí demonstranční scény Arches od Dana Farmera z programu Persistence of Vision™ Ray Tracer (PovRay)

Klasickým problémem, se kterým se potýká jednoduché fotorealistické zobrazení, je nevěrohodná dokonalost zobrazených objektů – nikde žádná šmouha, vše je dokonale pravidelné. Matematika si naštěstí ví rady i zde – objevila zvláštní funkce, které, ač jsou deterministické, vykazují známky nepředvídatelnosti. Těmto funkcím se říká fraktální a s nástupem počítačové grafiky se staly oblíbeným objektem zobrazení. Fraktály bývají většinou popsány jako oblast konvergence nějaké operace nebo rekurzivní definicí. Vlastnosti vzniklého objektu se mění od místa k místu, a proto vypadá fraktálová textura nepravidelně.

Použití fraktálů v počítačové grafice je velmi široké – některé fraktály mají zajímavý vzhled samy o sobě a stačí vybrat rozsah zobrazených hodnot. Další jsou dobrým námětem pro animace (změna parametrů fraktálu v čase dokáže vytvořit krásné animace). Největší uplatnění však mají ve 3D grafice – pomocí fraktálů lze generovat mraky, stromy i textury nepravidelných povrchů. Pro grafické zobrazení je zajímavý nejen vlastní fraktál, ale i rychlost konvergence funkce v okolí fraktálu.

Porozhlédnete-li se po možnostech GIMPu, zjistíte, že fraktály jsou základem mnoha modulů. Na ukázce vidíte Man'o'warův fraktál vytvořený pomocí Badatele fraktálů.

Man'o'warův fraktál

Ambientní osvětlení

U trasovacích programů se často definuje ambientní osvětlení. Jedná se o světlo, přicházející ze všech stran z okolí scény, není-li zastíněno. Většinou bývá stejnoměrné, ale lze jej i modulovat např. texturou.

Animacechodící robot

Základním typem animace je změna vzájemné polohy objektů v čase. Objekty se na scéně pohybují podél cesty. Cesta bývá většinou určena parametrickou Bézierovou křivkou, která udává polohu tělesa v čase. Další parametrická funkce může udávat rotaci tělesa v čase. Běžné je též určení rotace dvěma speciálními způsoby – konstantním natočením v prostoru nebo natočením po směru cesty.

Podobně, jako existuje vyhlazování (antialiasing) objektů v prostoru, či naopak rozostřování podle hloubky ostrosti, existuje takové rozšíření i v animacích – rozmáznutí pohybem (motion blur). To dává mnohem věrohodnější dojem rychlého pohybu než sled ostrých statických obrázků.

CAD aplikace používají pro animace speciální schémata, která popisují možnosti vzájemné polohy mezi jednotlivými objekty. Ta pak slouží nejen k animaci, ale též ke sledování funkčnosti modelovaného zařízení.

Ukázka z demonstrančního programu Walker od Kanishky Agarwala, Philipa Winstona a Rana Libeskind-Hadase z knihovny GLUT.

Dynamicky modelované objekty

U některých objektů prostá změna polohy nestačí. Zde se používá dynamické modelování. Existuje velké množství jednoúčelových algoritmů dynamicky modelujících různé objekty.animovaná tvář

Například u obličeje se používá modelování svalových úponů. Pohyb se v zadaném poměru přenáší z místa úponu podle na okolní body triangulace. Pokud jste pozorně prohlédli drátový model obličeje v devětadvacátém dílu, mohli jste si všimnout podivných černých čar – jednalo se právě o úpony – model obličeje z projektu Face je totiž pohyblivý. Program Face z knihovny GLUT. Š A. K. Peters, Mark Kilgard; David G. Yu. Ukázka změny napětí tří svalů.

Podobně se pro dynamické modelování těla používá simulace kostry. Různě náročné algoritmy pak převádějí dobře vypočítatelné pohyby kostry na mnohem hůř vypočítatelné pohyby povrchu těla.

Do jiné kategorie patří simulace pružných objektů (např. srážka dvou gumových koulí). Jejich simulace není již jen otázkou 3D algoritmů, ale i algoritmů pro dynamiku pružných těles. Naopak u nepružných těles a kapalin přijde ke slovu hydrodynamika.

Poslední skupinou, o které se zde zmíníme, jsou chlupy a vlasy. Pro 3D algoritmy jsou opravdovým oříškem. Jednoduché modely simulují vlasy a chlupy pomocí textur. Takové simulace se používají hlavně v interaktivních hrách. Na druhé straně škály jsou algoritmy, které počítají pohyb každého chlupu zvlášť – nejdříve spočítají pohyby chlupu v srsti a poté podle jeho optických vlastností provedou trasování paprsku. Každému chlupu je tedy možné přiřadit jinou barvu, texturu i pružnost. Tato metoda se používá ve filmech, scény počítají superpočítače s mnohaterabajtovým diskovým prostorem…

Urychlující metody

Důležitou součástí každého grafického programu však nejsou jen implementace vlastních grafických algoritmů, ale i jejich optimalizace, které mohou zajistit řádové urychlení výpočtu.

Buňková metoda rozdělí prostor na buňky, do nichž se zapíše, která tělesa se v nich nacházejí. Při trasování paprsků se tak vynechá testování objektů, se kterými se paprsek nepotká. Buňky o shodné nebo odlišné velikosti obsahují záznam s označením tělesa nebo seznamem plošek, které se v dané oblasti nacházejí. Metoda je poměrně citlivá na správnou velikost scény.

Metrické omezení naproti tomu přidává ke každému objektu informaci o jednoduše otestovatelné obálce objektu. Pokud paprsek neprotne obálku, je jasné, že neprotne ani těleso. Metoda je výhodná pro scény s velkým množstvím komplikovaných malých těles.

Omezení rekurze je nutné pro všechny trasovací programy, aby nedošlo k zacyklení. Většinou se omezuje maximálním počtem odrazů a nejmenším uvažovaným světelným příspěvkem.

Existuje ještě množství dalších zrychlujících postupů. Některé jsou publikované, jiné tvůrci programů tají.

Holografie

Holografie je speciální způsob zobrazení, při kterém lze obraz na hologramu pozorovat z různých úhlů. Využívá vlnových vlastností světla, konkrétně interference. Při expozici laserem nebo jiným zdrojem koherentního světla (pro první hologramy se používala rtuťová výbojka), které zčásti dopadá přímo a zčásti se odráží od scény, vznikají v emulzi filmu submikroskopické interferenční linie. Po ozáření koherentním světlem stejné vlnové délky uvidíme prostorový obraz původní scény. Dnes jsou známy techniky, které dokáží hologram zobrazit i při běžném světle.

Představa, že hologram v každém bodě obsahuje celek, je poněkud zjednodušená. Skutečnost je taková, že jsou v něm zaznamenány pouze interferenční linky, a ty určují, do kterých směrů se bude v daném bodě ohýbat světlo. Teprve ohyb světla vytvoří z celé plochy dojem prostorového tělesa.

Dnešní technologie umožňuje vytvořit hologram virtuálně – v počítači. Z rozdílů ve světle dopadajím do jednotlivých bodů lze vypočítat interferenční linie a poté je přenést na hologram (nemusí se jednat o emulzi, hologramy lze i lisovat, podobně jako CD).

Důležitou vlastností takto vytvořených hologramů je praktická nemožnost kopírování – interferenční linie totiž mohou být od sebe vzdáleny pouze stovky nanometrů, a to je zatím pro jakýkoliv kopírovací stroj příliš málo.

V budoucnosti se možná dočkáme i holografických obrazovek a podobných vynálezů. Na světě zatím existuje jen několik holografických kin s poměrně malou promítací plochou. Filmů je vzhledem k výrobním nákladům také málo a nepřesahují délku několika minut.

Máte-li výkonný počítač, můžete si však třírozměrný správce oken vyzkoušet už nyní – je jím projekt 3DWM, založený na spolupráci s běžným VNC serverem.

 

Náš seriál o grafice uzavřeme několika obrázky ze skvělého programu Persistence of Vision™ Ray Tracer (PovRay).

Tabulka č. 267

Crack (sledování paprsku)

Crack (radiační metoda)

Dvě ukázky značného rozdílu mezi prostým sledováním paprsku a radiační metodou (scéna Crackle pattern example a scéna Laser od Dana Farmera).

Laser (sledování paprsku)

Laser (radiační metoda)

 

Tabulka č. 268

světla v mlze

skleněné objekty

Problémem nemusí být ani světlo v mlze ani rozklad světla na duhové barvy (scény Media 2 a Diffract).

 

Tabulka č. 269

tvar čajové konvičky

dřevěná krabička

Tyto obrázky snad nepotřebují komentář (scéna Teapot 2 a scéna Woodbox od Dana Farmera).

Našli jste v článku chybu?

8. 4. 2002 15:27

David Procházka (neregistrovaný)

Děkuji za vznikající seriál. Velmi mne inspiroval

4. 4. 2002 9:00

Fishie (neregistrovaný)

Vyborne!!!Jen tak dal!Takovy poucny,prakticky a obsazny clanek jsem na rootu uz dlouho nevidel.Navic grafika se tyka nas vsech a kazdy obcas potrebuje neco z teto oblasti.

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: Vláknina: Rozpustná, nebo nerozpustná?

Vláknina: Rozpustná, nebo nerozpustná?

Vitalia.cz: Jak koupit Mikuláše a nenaletět

Jak koupit Mikuláše a nenaletět

Podnikatel.cz: Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Vitalia.cz: Žloutenka v Brně: Nakaženo bylo 400 lidí

Žloutenka v Brně: Nakaženo bylo 400 lidí

Podnikatel.cz: 1. den EET? Problémy s pokladnami

1. den EET? Problémy s pokladnami

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Podnikatel.cz: Prodává přes internet. Kdy platí zdravotko?

Prodává přes internet. Kdy platí zdravotko?

Vitalia.cz: 9 největších mýtů o mase

9 největších mýtů o mase

Lupa.cz: Avast po spojení s AVG propustí 700 lidí

Avast po spojení s AVG propustí 700 lidí

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

Vitalia.cz: To není kašel! Správná diagnóza zachrání život

To není kašel! Správná diagnóza zachrání život

Vitalia.cz: Baletky propagují zdravotní superpostel

Baletky propagují zdravotní superpostel

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

DigiZone.cz: Flix TV má set-top box s HEVC

Flix TV má set-top box s HEVC

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...