BI-PGA
Pokročilé mapování a PBR
1 / 19
Pokročilé mapování a PBR
- Vzhled detailů povrchu ovlivňuje geometrie, stínovací normála a směrový odraz světla.
- Témata: vnímání tvaru, height a normal mapy, mikrofacetový model, tečný prostor a parallax mapping.
2 / 19
Geometrie a vnímání detailu
- Hrubý tvar a siluetu určuje geometrie. Jemný vzhled povrchu výrazně ovlivňuje normála použitá při osvětlení.
- Bump mapping odvozuje změnu normály z výškové mapy. Normal mapping načítá normálu přímo.
- Parallax mapping posouvá UV. Displacement posouvá skutečný povrch. Tyto zásahy mají odlišné náklady a limity.
Dílna: stejný povrch, různá reprezentace ↗
Bump mapping mění osvětlení detailů, ale ponechává rovinný obrys. Cycles, 1920 × 1080.
3 / 19
Principy fyzikálně založeného renderingu
- PBR spojuje lineární výpočty, přibližné zachování energie a úhlovou závislost odrazu.
- Stejný materiál má mít konzistentní význam při změně osvětlení. PBR lze použít v rasterizaci i v path tracingu.
- Fotorealismus navíc vyžaduje odpovídající geometrii, světlo, expozici a správnou interpretaci textur.
4 / 19
Dielektrikum a kov
- Dielektrika jako plast nebo keramika kombinují difuzní barvu s přibližně bezbarvým povrchovým odrazem.
- Kov má obvykle zanedbatelnou difuzní složku a barevný zrcadlový odraz.
- Nátěr a oxidace tvoří další materiálové vrstvy. Ne každé tmavé či lesklé místo představuje čistý kov.
5 / 19
Metallic–roughness workflow
- Base color představuje difuzní albedo dielektrika nebo barvu odrazu kovu. Metallic volí mezi těmito chováními.
- Roughness určuje šířku rozdělení mikrofacet. Normal určuje lokální orientaci stínovací normály.
- AO přibližuje lokální zákryt, ale nenahrazuje obecné globální osvětlení. Emissive popisuje vlastní vyzařování.
Dílna: roughness není intenzita odlesku ↗
6 / 19
Mikrofacety a Cook–Torrance
- Makroskopický povrch modelujeme jako soubor malých zrcadlových plošek.
- D popisuje rozdělení orientací, F Fresnelův podíl a G geometrickou viditelnost mikrofacet.
- Poloviční vektor h je normalizovaný součet směrů ke světlu a pozorovateli. Výraz níže popisuje zrcadlovou BRDF.
fs(ωi,ωo)=4∣n⋅ωi∣∣n⋅ωo∣D(h)F(ωi,h)G(ωi,ωo)
7 / 19
Distribuce D a roughness
- Distribuce určuje, kolik mikrofacet má danou orientaci. Rozdělení GGX má dlouhé chvosty.
- Změna roughness mění šířku i vrchol odlesku. Není to pouze násobek jeho intenzity.
- Mapování parametru roughness na α se mezi implementacemi liší. Je třeba znát konvenci konkrétního shaderu.
8 / 19
Fresnelův člen F
- F0 je odrazivost při kolmém dopadu. U dielektrik souvisí s indexem lomu, u kovů má barevný charakter.
- Při tečném pohledu roste odrazivost. Schlickův vztah je praktická aproximace, nikoli obecná náhrada všech Fresnelových rovnic.
- Odraz a průchod energie nelze nastavovat zcela nezávisle.
F(θ)=F0+(1−F0)(1−cosθ)5
9 / 19
Geometrický člen G a kombinace složek
- Masking popisuje zákryt mikrofacety směrem ke kameře. Shadowing popisuje zákryt směrem ke světlu.
- Smithovy modely skládají směrové viditelnosti. Volba G musí odpovídat předpokladům distribuce mikrofacet.
- Směs difuzního a zrcadlového příspěvku vyžaduje energetické vážení. Výraz (1−metallic) f_d + f_s je schematický a sám nezaručuje zachování energie.
10 / 19
Barevné a datové mapy
- Base color obvykle načítáme jako sRGB a převádíme do lineárního prostoru. Emissive závisí na způsobu uložení barevných hodnot.
- Normal, roughness, metallic, AO a height načítáme jako data bez sRGB dekódování.
- Formát souboru sám neurčuje význam kanálu. Rozhoduje sémantika mapy a nastavení importu.
Dílna: co zkazí sRGB u normál? ↗
11 / 19
Normal, bump, parallax a displacement
- Normal a bump mění stínovací normálu, ale neposouvají obrys objektu.
- Parallax aproximuje hloubku posunem texturovacích souřadnic. Displacement mění skutečný povrch.
- Rasterizace a path tracing mohou sdílet BRDF. Liší se způsob získání příchozího světla a viditelnosti.
12 / 19
Komplexní a časově proměnné textury
- Prach, námraza, plíseň a lišejníky mohou měnit barvu, drsnost i geometrii povrchu.
- Pro syntézu textur lze využít Markovské modely, 3DCAR a fraktální konstrukce.
- Je vhodné rozlišovat fotografickou referenci a syntetický výsledek. Stejné pravidlo platí pro časový vývoj materiálu.
Prach, námraza a plíseň · Zdroj ilustrace
13 / 19
Bump mapping z gradientu výšky
- Height mapa ukládá skalární výšku. Z rozdílů výšek v okolí odhadujeme derivace v texturovacích směrech.
- Derivace upraví tečné vektory a výslednou normálu pro osvětlení.
- Síla efektu závisí na měřítku výšky i UV. Geometrie a silueta zůstávají stejné.
Konstrukce normálové mapy z výškové mapy · Zdroj ilustrace
14 / 19
Tečný prostor a transformace normály
- Bázi TBN tvoří tečna T, bitangenta B a normála N. Její orientace musí odpovídat UV parametrizaci.
- RGB kód normály obvykle dekódujeme jako 2c−1 a znovu normalizujeme.
- Normálu a světelné vektory musíme vyhodnocovat ve stejném prostoru. Buď převedeme normálu pomocí TBN, nebo ostatní směry do tečného prostoru.
ntn=normalize(2c−1),=normalize(TBNnt).
Tečný prostor · Zdroj ilustraceŘešený tečný prostor a zrcadlené UV ↗
15 / 19
Princip paralaxy
- Při změně pohledu se zdánlivě posouvají detaily v různých hloubkách.
- Parallax mapping napodobuje tento posun úpravou UV podle výškové mapy a směru pohledu.
- Vstupem zůstává původní polygon. Výsledek proto omezuje jeho silueta a dostupná data o výšce.
parallax mapping · Zdroj ilustrace
16 / 19
Jednokrokový posun UV
- V tečném prostoru získáme směr k pozorovateli a výšku z původního UV.
- Z nich vypočítáme offset textury. Znaménko a měřítko závisejí na konvenci výšky a směru pohledu.
- Jedna hodnota výšky obecně nestačí k nalezení skutečného průsečíku s nerovným profilem.
Parallax mapping · Zdroj ilustrace
17 / 19
Chyba offsetu a limitování
- Výška v původním UV se může lišit od výšky v nalezeném bodě. Posun je proto jen aproximací.
- Při tečném pohledu se chyba zvětšuje. Offset limiting omezuje nepřiměřené posuny, ale ztrácí část perspektivního efektu.
- Parallax occlusion mapping používá více kroků po výškovém profilu. Vyžaduje více vzorků a vlastní řešení artefaktů.
Parallax mapping · Zdroj ilustraceDílna: offset, POM a skutečný povrch ↗
18 / 19
Obrazová srovnání
- Srovnání ukazují přínos normálové a výškové mapy na stejném povrchu.
- Pro názorný test je třeba stejná kamera, světlo, expozice i měřítko materiálu. Změna těchto parametrů zakryje rozdíl metod.
- Pohled pod malým úhlem a kontrola siluety ukazují limity parallax mappingu.
Dílna: textura menší než pixel ↗
Tutoriál: reprodukovatelné srovnání v Blenderu ↗
Skutečně posunutá geometrie z analytického profilu, 1920 × 1080, Cycles.
19 / 19
Shrnutí, otázky a zdroje
- Která mapa určuje barvu, která normálu a která geometrii? Které mapy vyžadují sRGB dekódování?
- Proč kov nemá běžnou difuzní složku? Co představují D, F a G?
- Kdy selže parallax mapping a proč nelze obecně vynechat normalizaci normály?
- Literatura: Felkel, Lengyel, Welsh (2004), Tatarchuk (2005), Burley (2012), Walter a kol. (2007) a PBRT 4. vydání.