Galerie 16
3D technologie: Bump Mapping
Článek Grafiky a hry Hry a technologie

3D technologie: Bump Mapping | Kapitola 2

Zdeněk Kabát

Zdeněk Kabát

Seznam kapitol

1. 3D technologie: Bump Mapping 2. Emboss Bump Mapping 3. Environment Bump Mapping 4. Normal (DOT3) Bump Mapping 5. Displacement Mapping a závěr

Po delší době se opět podíváme na 3D technologie používané v současných GPU. Pod drobnohled jsem si tentokrát vzal Bump Mapping, což je řada technik a algoritmů umožňujících pomocí 2D textur simulovat zakřivení povrchu apod. V článku poskytnu detailní popis Emboss, Environment a DOT3 Bump Mappingu (tzn. normálového mapování), okrajově se zmíním i o Displacement Mappingu.

Reklama

Emboss Bump Mapping

Nejméně efektivní metodou Bump Mappingu je tzv. Emboss (nebo Embossing) Bump Mapping. Jeho základem je také výšková mapa, ale celkově se od ostatních technik velmi liší. Emboss BM je velice jednoduché implementovat a lze ho provozovat prakticky na libovolném 3D akcelerátoru. Ovšem jde spíše o pseudo Bump Mapping, protože nepracuje s normálami, tedy ani přímo s Gouradovým stínováním.

Emboss BM používá dvě různé metody, z čehož jedna je spíše hudbou let minulých. Dříve fungovala tato metoda na principu jedné výškové textury, která byla posunuta o určitou vzdálenost ve směru osvětlení a poté se původní a posunutá textura od sebe odečetly. Takto vznikla bump mapa, která aplikovaná na původní texturu vytvořila dojem prostoru.

3D technologie: Bump Mapping


Obr. 3 - Původní přístup k Emboss Bump Mappingu

Tato technika pracuje ve třech krocích (posunutí, odečtení, aplikování) a nemá žádné zvláštní požadavky na HW. Ovšem nevýhod, které z této techniky plynou, je několik. Za prvé nemůžete vytvořit jakýkoliv povrch chcete, ale jste vázáni na směr osvětlení a daný posun. Pokud by bylo třeba vytvořit složitější vzor, muselo by se použít několik map a více průběhů. Proto je efekt této metody velmi omezen. Dále dochází k chybám v případě velkého zakřivení povrchu, protože jak můžete vidět, původní Emboss BM se hodí převážně na rovné plochy. Navíc se počítá s globálním osvětlením, neboť v případě směrového světla (obzvláště nízko nad povrchem) je nejlepší používat k osvětlení normály. A tak dále, a tak dále…

Současný

Emboss Bump Mapping se trochu odlišuje, ale přesto je v základě stejný, a proto si ponechává i nevýhody. Výšková mapa se upraví na dvě nové textury - jednu s poloviční intenzitou a jednu invertovanou s poloviční intenzitou. Tyto se opět ve směru osvětlení navzájem posunou a v poslední fázi se zkombinují s původní texturou, na kterou je aplikováno osvětlení.

3D technologie: Bump Mapping


Obr. 4 - Současná technika Emboss Bump Mappingu

Efekt je o něco lepší než u původního přístupu, ale řada problémů zůstala. Z dalších jmenujme např. případ, kdy je vzájemný posun obou textur malý, a proto je výsledná výšková mapa výrazně dotčena následnou filtrací (s bump mapou se zachází stejně jako s obyčejnou texturou). To může vést k následnému snížení kvality scény. Emboss Bump Mapping je také velice nevhodný pro pohyblivé scény.

Emboss BM lze také nahradit alpha-blendingem, ačkoliv tato metoda není úplně účinná. V praxi to funguje tak, že původní textura je transformována na černobílou a posunuta ve směru osvětlení. Dále je odečtena od původní textury a posunuta zpět. V poslední fázi dochází právě k alpha-blendingu (prolnutí). Nevýhodou je, že se takto posouvá celá scéna, tedy včetně hran polygonů. Proto vznikají artefakty, dvojité hrany apod.

3D technologie: Bump Mapping


Obr. 5 - Emboss Bump Mapping v 3DMarku 2000
Klikněte pro zvětšení

Abychom se vyhnuli všem nepříjemným dopadům Emboss Bump Mappingu, máme zde ale jiné techniky.


Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama