10.08.2013 Views

Terrain Processing on Modern GPU - Computer Graphics Group ...

Terrain Processing on Modern GPU - Computer Graphics Group ...

Terrain Processing on Modern GPU - Computer Graphics Group ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

velikost pásů jako na geometrickou posloupnost. Ze vztahu pro součet prvních členů<br />

geometrické posloupnosti<br />

1 ,<br />

1 <br />

ve kterém vyjadřuje součet, velikost prvního členu, počet sčítaných členů a hledaný<br />

kvocient, vyjádříme rovnici<br />

0,<br />

v níž představuje proměnnou. Tuto rovnici řešíme Newt<strong>on</strong>ovou metodou tečen a získáme z ní<br />

hledaný kvocient nárůstu velikosti jednotlivých pásů trapezmapy. Tímto postupem spojeným se<br />

správnou volbou parametrů jsme dosáhli požadovaného rozložení vzorků po ploše terénu.<br />

Přestože jsme odstranili závislost čtení vzorků na skl<strong>on</strong>u kamery, alias se stále silně projevuje.<br />

Velmi rušivé je to při otáčení pozorovatele kolem osy Y, protože to je změna, kterou lze provést<br />

daleko rychleji ve srovnání se změnou polohy.<br />

Další negativní vlastností trapezmapy je její nestálý charakter. Při změně výšky pozorovatele nad<br />

okolním terénem nebo při změně zorného úhlu je třeba vypočítat nový lichoběžník a strukturu<br />

adaptovat na jeho vlastnosti. Není to náročný úkol, ale přináší to komplikace při hledání<br />

vhodných parametrů pro vytvoření struktury (připomeňme, že parametry jsme hledali<br />

experimentálně). Souvisí to i s tím, že pozorovatel se může dívat přímo do země a je třeba<br />

zobrazovat oblast velmi odlišného charakteru s jiným schématem vzorkování. Metoda se dá tedy<br />

velmi těžko popsat pro obecné účely a je třeba ji implementovat s ohledem na zadané podmínky.<br />

To z ní dělá implementačně poměrně komplikovanou metodu, nikoli vhodnou náhradu za<br />

clipmapu. Její výhodou je implicitní řešení ořezávání pohledovým jehlanem. Zbývá nám pouze<br />

ošetřit zvláštní případy, o kterých jsme již mluvili (pohled do země či lehce vzhůru do dálky).<br />

4.3.2 Struktura ringmap<br />

Pro problémy s trapezmapou jsme hledali různá jiná schémata pro vzorkování. Ukázalo se, že<br />

nejdůležitější je zachovat vzorky na svých místech při otáčení kolem osy Y. Při pohybu se alias<br />

také projevuje, ale daleko méně. Odtud jsme vyšli a navrhli strukturu, které jsme dali název<br />

ringmap, pro její prstencový charakter. Struktura je složena ze dvou částí – centrálního kruhu a<br />

soustavy prstenců. Centrální kruh je centrovaný na pozici pozorovatele a zajišťuje snadné řešení<br />

ořezávání pohledovým jehlanem. Na něj je navázána soustava prstenců, které jsou triangulovány<br />

vzhledem k souřadnému systému scény, jsou tedy invariantní vzhledem k otáčení pozorovatele<br />

kolem osy Y, a tím výrazně přispívají k odstranění aliasu.<br />

Hlavní část ringmapy představuje soustava prstenců, které se směrem od středu zvětšují stejným<br />

způsobem, jako pásy trapezmapy, jde tedy opět o geometrickou posloupnost (viz Obrázek 4.7<br />

vpravo). Každý prstenec je triangulován pomocí stejného počtu trojúhelníků. Protože jednotlivé<br />

prstence se zvětšují, zvětšuje se i celková plocha těchto trojúhelníků, a tedy frekvence, s níž<br />

vzorkují terén ve vzdálenějších oblastech. Tento přirozený nárůst má velikou výhodu v tom, že<br />

počet trojúhelníků je stále stejný a jejich zvětšování probíhá plynule, nikoli skokově jako tomu<br />

70

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!