Többrétegű geometriai árnyéktérképek

OData támogatás
Konzulens:
Dr. Szécsi László
Irányítástechnika és Informatika Tanszék

Napjainkban igencsak felgyorsult az informatikai technológia fejlődése, ez alól a grafikus processzorok (GPU) sem kivételek. Immár sokrétű módon programozhatók, komplex grafikai algoritmusok futtatására képesek, nagy számítási teljesítménnyel.

Dolgozatom célja megvizsgálni olyan grafikai algoritmusokat, amelyek valós időben képesek árnyékok számítására. A megfelelő minőségű árnyékok igen fontos szerepet játszanak egy szintetizált kép hihetőségében. A jó minőség mellett a másik legfontosabb jellemzője egy árnyékszámító algoritmusnak a tár- és számításigénye.

Kétféle, alapjaiban eltérő alapgondolatra épülő algoritmuscsaládot, és a két megközelítés ötvözéséből eredő algoritmusokat, vizsgálok: az árnyéktérkép (shadow map) elvén és a geometriát alapul vevő árnyéktestek (shadow volumes) elvén működőket. Az árnyéktérképek raszteres közelítéssel oldják meg az árnyékszámítást, így egyszerű implementáció, alacsony költség, de csipkézett árnyékkontúrok jellemzik őket. A geometriai megközelítések ezzel szemben szép, éles árnyékkontúrokat adnak, viszont ehhez geometriát kell generálni (ami korábbi grafikus hardvereken lehetetlen volt) és kitölteni, ami magas terhet ró a raszteres feldolgozóegységekre. A hibrid algoritmusok ezzel szemben ötvözik az árnyéktérképek alacsony költségét a geometria-alapú megközelítés pontosságával. Eddig legnagyobb hátrányuk az volt, hogy kénytelenek voltak textúrával dolgozni, amelyekbe pixelenként legfeljebb egy csúcspontot tudtak eltárolni, ezzel korlátozva az árnyék alakját, hibákat vétve.

A legújabb grafikus hardverek immáron képesek változó mennyiségű geometriai primitívet generálni, azokon további feldolgozást végezni, illetve pixelenként változó mennyiségű adatot eltárolni, így nemcsak arra nyílik lehetőség, hogy ezeket az algoritmusokat tisztán GPU-n implementáljuk, hanem még javításokat is végezhetünk rajtuk.

Diplomatervemben bemutatom a vázolt algoritmusokat, implementációt készítek és javításokat javaslok egy hibrid (árnyéktérképeken és geometrián alapuló) árnyékszámítási algoritmushoz, továbbá ismertetem és implementálom a penumbra ékek algoritmust grafikus processzorra, amely hidat képez a geometria-alapú árnyékszámítás és a lágy árnyékok képzése között.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.