Perlinův šum

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Dvoudimenzní průřez 3D Perlinovým šumem. Perlinův šum je metoda vhodná pro generování grafického šumu, kterou roku 1985 představil Ken Perlin.

...

Historie

Tato metoda vychází z tvorby Kena Perlina, který ji vyvinul během prací pro Mathematical Applications Group, Inc. +more Roku 1997 Ken Perlin získal ocenění Academy Award for Technical Achievement od Akademie filmových umění a věd za spoluúčast na filmu Tron z roku 1982.

Jak to funguje

Tato metoda funguje na součtu stejné šumové funkce, avšak o různé intenzitě a v různém měřítku. Pro takovouto šumovou funkci se často používá náhodný, deterministický generátor. +more Výsledkem součtu šumových funkcí je šum, kterým je možné napodobit rozličné přírodní věci, nejčastěji oblaka, vodu, dřevěné materiály a mramor.

Pořadí při sčítání se nazývá oktáva. V každé oktávě má šumová funkce různé měřítko a intenzitu. +more Měřítko lze udávat frekvencí, tedy počtem opakování na jednotku. Intenzitu v tomto případě nazýváme amplitudou.

Perlinův šum je realizován jako funkce buď (x,y,z) nebo (x,y,z,čas), která využívá interpolaci mezi sadou předem vypočítaných vzestupných vektorů, pro konstrukci hodnoty, která se mění náhodně v závislosti na prostoru a/nebo čase. Ken Perlin tuto realizaci šumu vylepšil v roce 2002, potlačením některých vizuálních artefaktů.

Využití

Perlinův šum je široce využíván v počítačové grafice pro vytvoření různých efektů, jako jsou např. plameny ohně, kouř, vodní hladiny a tekoucí vody, a také oblaka. +more Je také velmi často využíván pro generování textur, pokud je velmi omezená paměť nebo nároky na ni, jako např. u demoverzí. Také postupně nalézá uplatnění v GPU při tvorbě real-time grafiky v počítačových hrách.

Příklad

Trojrozměrný Perlinův šum v C++:

double perlinNoise(const double &x, const double &y, const double &z, const int &OCTAVES = 4, const double &PERSISTENCE = 0.5) { double ret = 0; double frequency = 1; double amplitude = 1; for(int i=0; i

Externí odkazy

[url=http://mrl.nyu.edu/~perlin/]osobní stránky Kena Perlina[/url] * [url=http://www.mrl.nyu.edu/~perlin/doc/oscar.html]stránky Ken Perlin's Academy Award[/url]

Kategorie:Fraktály Kategorie:Algoritmy počítačové grafiky

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top