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.

a<br />

ring <br />

ring ring vrchol: hrana , .<br />

Za pomoci okolí vrcholu definujeme i -okolí stěny jako množinu<br />

ring ring. <br />

Pro většinu běžně užívaných schémat tvoří jejich nosič 1-okolí nebo 2-okolí stěny. Větší okolí<br />

zpravidla přináší příliš velké komplikace a menší užitek. Velikost nosiče nepřímo ovlivňuje také<br />

matematické vlastnosti výsledné plochy, především úroveň spojitosti. Připomeňme, že při<br />

použití Bézierových trojúhelníkových plátů jaké jsme dříve popsali (64) využíváme pouze 0-okolí<br />

trojúhelníka původní sítě. Zmínili jsme také, že 0-okolí je nedostatečné pro spojité (C 0) navázání,<br />

pokud povolíme násobné normály ve vrcholech. Nosič schématu je paralelou k řídícím vrcholům<br />

parametrické plochy, proto dříve zavedené označení také budeme používat.<br />

Jak jsme již uvedli, při aplikaci dělícího schématu využíváme lineární kombinace řídících vrcholů<br />

pro určení souřadnic nových či změněných vrcholů. Ty se záhy stávají řídícími vrcholy pro další<br />

iteraci. Z lineární algebry víme, že tento postup můžeme vyjádřit také maticí (matice schématu),<br />

kterou vynásobíme vektor řídících vrcholů. Takovýto náhled je velice užitečný, protože<br />

zkoumáním vlastností matice schématu můžeme odvodit také lokální vlastnosti limitní plochy<br />

(především úroveň spojitosti). S úspěchem se přitom užívá analýzy vlastních čísel a vlastních<br />

vektorů této matice. Touto oblastí se zde nechceme zabývat, podrobnější rozbor je možné nalézt<br />

v (71) nebo (72).<br />

Pokud chceme použít subdivisi<strong>on</strong> surfaces pro interaktivní zobrazování, je z hlediska efektivity<br />

velmi důležité, jakým způsobem je vyhodnotíme. Jednou z možností je využití přirozeného<br />

iterativního postupu a dělit a zjemňovat síť podle pravidel dělícího schématu. Výhoda tohoto<br />

postupu je zřejmá – můžeme zastavit dělení na základě nějaké podmínky, například vypršení<br />

časového limitu nebo překročení povoleného počtu polyg<strong>on</strong>ů. S každou iterací je síť hladší, takže<br />

můžeme také definovat podmínku na základě kritéria k<strong>on</strong>vergence. Po každém kroku<br />

provedeném na celou síť je síť v k<strong>on</strong>zistentním tvaru, tj. spojitá. Pokud používané schéma není<br />

trojúhelníkové, je třeba ještě provést triangulaci, avšak obecně je síť lehce předatelná grafické<br />

kartě.<br />

Jiný způsob na vyhodnocení sítě je zk<strong>on</strong>struovat pevnou topologii výstupní sítě podle původních<br />

dat a zvolené složitosti a souřadnice vrcholů této nově vzniklé sítě vyhodnotit přímo, jakoby<br />

ležely na limitní ploše. Obtížnost tohoto postupu velmi závisí na zvoleném schématu a pro různá<br />

schémata najdeme mnohou literaturu na toto téma.<br />

Důležitou vlastností při rozhodování, které schéma zvolit pro zjemnění geometrie, je způsob,<br />

jakým nahrazuje původní síť. Interpolační schéma v každém kroku nechává řídící vrcholy na<br />

svých místech a pouze vytváří nové. Naproti tomu aproximační schéma hýbe se všemi vrcholy,<br />

45

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

Saved successfully!

Ooh no, something went wrong!