Bump mapping

Z Multimediaexpo.cz

Verze z 30. 7. 2023, 01:26; Sysop (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)

Bump mapping je technika texturování, která vytváří iluzi nerovnosti povrchu bez změny jeho geometrie. Iluze nerovnosti povrchu se dosahuje úpravou normály v každém pixelu plochy. Modifikovaná normála pak ovlivní výpočet osvětlení plochy.

Tato technika nedokáže simulovat silně zvlněný povrch, který by zakrýval sám sebe, proto je nutno volit přiměřenou míru zvlnění.

Techniku můžeme dále kombinovat například se specular mapou, které určí hodnoty odraznosti (při simulaci dlaždic můžeme předepsat, že dlaždice se leskne a malta ve spárách ne).

Obsah

Klasická metoda (modulace normály)

Pro uložení informace o hrbolatosti povrchu se používá bump mapa. Obvykle je to textura s osmibitovou barevnou hloubkou. Může být obrázková nebo procedurální.

Typicky se bump mapa interpretuje jako výšková mapa. Normálový vektor je pak pozměněn podle gradientu této mapy v příslušném bodě.

Galerie

Normal mapping (normálové mapování)

Použití normálového mapování na nízko-polygonálním modelu

Normálová mapa na rozdíl od bump mapy určuje absolutní hodnotu normály. V každém pixelu definuje normálový vektor. Jeho tři složky jsou obvykle uloženy jako tři osmibitové barevné kanály.

Na rozdíl od bump mapy se většinou normálová mapa nevytváří ručně. Při vytváření modelů jednotlivých objektů grafik vytvoří dva modely – jeden nízko-polygonální (low-poly), který bude použit přímo v interaktivní simulaci a jeden vysoko-polygonový (high-poly), skládající se až z několika milionů trojúhelníků. Následně jsou tyto dva modely porovnány. Z rozdílů je vytvořena normálová mapa, která zachovává detaily vysoko-polygonálního modelu a je namapována na nízko-polygonální, který se může vykreslovat v reálném čase.

Pro účinnou kompresi normálové mapy se používají speciální bezztrátové algoritmy.

Příkladem může být hra – Doom 3. Zajímavé jsou výsledky UnrealEngine 3.

Firma Valve Corporation pro svou novou verzi Source Engine vyvinula Radiosity normal mapping. Také čeští nezávislí vývojáři z Reversity Studios, dříve známí jako 7thSquad Team pracují na Panther3D engine hojně využívajícím této a vylepšené techniky nerovnosti povrchů.

Parallax mapping

Pro věrohodné znázornění výškově členitého povrchu se využívá technika parallax mapping. Tato technika zohledňuje zorný úhel (paralaxu).

Používá se zde výšková mapa (height map). Dle hloubky v daném bodě a dle vektoru pohledu se korigují souřadnice textury. Algoritmus vzdálí vystouplá místa textury od oka pozorovatele, zatímco propadliny k němu naopak přiblíží. Tato technika je hardwarově poměrně náročná.

Tato technika je nazývána také offset mapping nebo virtual displacement mapping.

Vimeo video


Související články

Externí odkazy

Parallax mapping