Original title:
Zpracování terénu na moderních GPU
Translated title:
Terrain Processing on Modern GPU
Authors:
Margold, Roman ; Pelikán, Josef (advisor) ; Maršálek, Lukáš (referee) Document type: Master’s theses
Year:
2008
Language:
cze Abstract:
[cze][eng] Prudký vývoj grafického hardwaru umožňuje nacházet stále nové techniky pro zobrazování terénu. Dříve používané postupy jsou postaveny na silné redukci geometrie prováděné na CPU. Novější postupy se snaží přenést zátěž na GPU a ponechat CPU volné pro jiné výpočty, což je obzvlášť důležité v počítačových hrách. Většina takových postupů je však limitována užitím statických dat nebo omezenou velikostí dat. Nový postup, jež v této práci navrhujeme, umožňuje modifikovat data za běhu a je snadno použitelný na zobrazování rozsáhlých krajin. Je celý implementován na GPU, kromě ořezávání pohledovým jehlanem. Ořezávání je stále prováděno na CPU, ale díky navrženému schématu vzorkování terénu je zcela triviální a vysoce efektivní. Použitá dvouúrovňová reprezentace dat nabízí poměrně snadné zacházení, a přitom nevylučuje takové operace jako je náhlá změna zorného úhlu nebo změna směru pohledu pozorovatele, se kterými mají jiné postupy problémy. Navíc má díky využití blokové komprese nízké paměťové nároky. Dále byl navržen a implementován univerzální načítací mechanismus pro asynchronní získávání dat z externího média. Systém byl optimalizován pro čtení z médií se sériovým přístupem a zároveň paralelní zpracování násobných požadavků na data. Byl využit pro průběžné načítání dat terénu, která se nevejdou do operační paměti.Recent development in graphics hardware opened the possibility for new terrain rendering techniques. Former techniques are based on rapid geometry reduction performed on CPU. Recent approaches are moving the load from CPU to GPU, thus keeping CPU available for other tasks, which is especially important for game development. A majority of these approaches is restricted to static datasets or limited data size. We introduce a novel approach which is capable of modifying data during runtime and is easily applicable to potentially infinite landscapes. It is implemented entirely on GPU, except view frustum culling, which is still performed by CPU. However, thanks to the proposed terrain sampling scheme it is trivial and extremely efficient. Employed two-level data representation offers simple implementation without loss of functionality such as sudden change of visual angle or view direction. Those are common problems of other approaches. We also adopted block compression to keep memory consumptions low. Further, a general loading mechanism has been designed and implemented in order to allow asynchronous data read from external medium. This system has been optimized for reading with serial access, although data demands are processed in parallel. The system has been used for continuous terrain data retrieval and...
Institution: Charles University Faculties (theses)
(web)
Document availability information: Available in the Charles University Digital Repository. Original record: http://hdl.handle.net/20.500.11956/11896