Renderování a modely osvětlení: principy

Renderování a osvětlovací modely: Principy

Co znamená „renderovat“ scénu

Renderování v počítačové grafice je proces výpočtu barvy a jasu pro každý obrazový prvek (pixel) na základě fyzikálních vlastností scény: geometrie, materiálů, světelných zdrojů a kamery. Cílem je co nejvěrněji aproximovat chování světla v prostředí, nebo naopak účelně zjednodušit model pro aplikace v reálném čase. Moderní přístupy vycházejí z renderovací rovnice, která formálně popisuje tok zářivé energie (radiance) mezi povrchy, objemem a senzorem.

Renderovací rovnice a radiometrie

Renderovací rovnice vyjadřuje vystupující radianci Lo(x, ωo) z bodu x ve směru ωo jako součet vlastní emise a příspěvků ze všech směrů příchozí radiance Li(x, ωi) modulovaných rozdělovací funkcí odrazu/rozptylu:

Lo(x, ωo) = Le(x, ωo) + ∫Ω+ fr(x, ωi, ωo) · Li(x, ωi) · (n · ωi) dωi

Kde fr je BRDF (obousměrná distribuční funkce odrazu) a n je normála. Radiometrické veličiny (radiance, irradiance, luminance) je nutné konzistentně udržovat v lineárním prostoru; až výsledný obraz se převádí do gamutu a kódování displeje.

BSDF: BRDF a BTDF, zachování energie a reciprocita

Obecná BSDF zahrnuje odraz (BRDF) i transmise (BTDF). Fyzikálně korektní model musí splňovat zachování energie (odražená + pohlcená energie ≤ dopadající energie) a Helmholtzovu reciprocitu (f(ωi, ωo) = f(ωo, ωi) pro izotropní materiály). Anizotropní povrchy (kartáčovaný kov, vlasy) narušují izotropii, nikoli však podmínky zachování energie.

Lokální osvětlovací modely: rychlé aproximace

  • Lambert (difuzní): L ∝ ρd · max(n · l, 0). Jednoduchý, zachovává energii pro ρd ≤ 1, bez lesku.
  • Phong / Blinn–Phong (zrcadlová složka): empirické zvýraznění odlesku s exponentem drsnosti; není fyzikální, ale je výpočetně levné a přehledné.
  • Oren–Nayar: difuzní odraz od drsných povrchů (mikrofasetový rozptyl v difuzi).
  • Cook–Torrance (microfacet): fyzikálně věrná zrcadlová složka s rozkladem D·F·G (distribuce normál, Fresnel, geometrická atenuace).

Mikrofasetové PBR: Cook–Torrance v praxi

Fyzikálně založené renderování (PBR) popisuje povrch jako statistické pole mikrofaset. Základní tvar je:

fr = (D(h) · F(v, h) · G(l, v, h)) / (4 · (n · l)(n · v)), kde h je poloviční vektor mezi směry l a v.

  • D (funkce distribuce normál): GGX/Trowbridge–Reitz je dnes standardem díky realistickým „chvostům“ odlesků.
  • F (Fresnel): přesně podle indexů lomu/odrazu nebo aproximací Schlick s F0.
  • G (geometrie): Smithův model s GGX nebo Beckmannem pro maskování a stínění mikrofaset.

Zachování energie vyžaduje pracovní postup metalness/roughness: kovy mají zanedbatelnou difuzní složku a barevný Fresnel (F0 ≈ albedo kovu), dielektrika mají F0 ~ 0.02–0.08 (≈4 %) a difuzní albedo ρd.

IBL a prostředí: osvětlení z HDR map

Image-Based Lighting (IBL) integruje polokouli světla z okolního prostředí reprezentovaného HDR mapou. Difuzní složka se získává konvolucí environmentální mapy s cosine lobe (často pomocí sférických harmonických funkcí), zrcadlová složka používá předfiltrované MIP mapy s GGX BRDF a integraci BRDF (LUT) pro F a G závislé na roughness a dot(n, v).

Plošné zdroje světla, stíny a měkkost

Reálné světelné zdroje mají plochu. Pro ray tracing je integrace přirozená (vzorkování přes prostorový úhel emitující plochy). V rasterizaci se plošné stíny aproximují technikami:

  • Shadow mapping + filtrace: PCF, VSM/EVSM, PCSS pro měkké stíny podle vzdálenosti od překážky.
  • Ray-traced stíny: přesné polostínové oblasti při omezeném počtu vzorků s odšumováním.

Globální iluminace: od radiosity k path tracingu

  • Radiosity: difuzní výměna energie mezi ploškami, řešená lineární soustavou (architektonická vizualizace).
  • Path tracing: integrace renderovací rovnice metodou Monte Carlo; náhodné cesty od senzoru se střídavě odrážejí podle BSDF, s ukončováním pomocí ruské rulety.
  • Bidirectional path tracing: propojuje podcesty od světel a kamery; je efektivní pro scény se složitým osvětlením.
  • Photon mapping a VPL/Instant radiosity: dvoufázové metody akumulace energie vhodné pro kaustiky a scény s lesklými povrchy.
  • Metropolis Light Transport: Markovské vzorkování přizpůsobující se významným drahám; vyniká u malých apertur a složitého MEV.

Monte Carlo, MIS a importance sampling

Chyba metody Monte Carlo klesá jako O(1/√N); klíčem je snížit rozptyl. Importance sampling volí vzorky podle tvaru BSDF a rozložení světla. Multiple Importance Sampling (MIS) kombinuje více strategií (např. vzorkování světla a BSDF) pomocí vah (balance/power heuristics) a významně redukuje šum.

Objemová a účastnící se média

V mlze, dýmu a kapalinách dochází k absorpci a rozptylu popsaným modelem radiativního přenosu. Vznikají volumetrické stíny, světelné paprsky a podpovrchové efekty.

  • Účastnící se média: jednorázový a vícenásobný rozptyl, fázové funkce (Henyey–Greenstein), volumetrické IBL.
  • Podpovrchový rozptyl (BSSRDF): difuzní aproximace (dipólová, multipólová) pro kůži, vosk a mramor; vstupní veličinou je transport uvnitř prostředí.

Normal, bump, parallax a displacement mapping

Pro zachycení detailů bez změny topologie se používají texturované normály (tangent space). Parallax/relief mapping zlepšují paralaxní efekt v rasterizaci; displacement mění skutečnou geometrii (ideální pro ray tracing a offline renderování), v reálném čase pomocí teselace nebo virtuálního meshe.

Real-time pipeline: forward, deferred, tiled/clustered

  • Forward: jednoduchý průchod, vhodný pro MSAA a průhlednost; náklady rostou s počtem světel.
  • Deferred: zápis do G-bufferů (normály, albedo, roughness, metalness, hloubka) a následné vyhodnocení světel v obrazovém prostoru.
  • Tiled/clustered shading: prostor se rozdělí na dlaždice/clustery, každé skupině se přiřadí relevantní světla (škálování na stovky světel).
  • Hybridní RT: rasterizace pro primární viditelnost, ray tracing pro stíny, odrazy a GI s časovou akumulací a odšumováním.

Screen-space a předpočítané techniky

  • SSAO/SSGI/SSSR: ambientní okluze, GI a odrazy v obrazovém prostoru – rychlé, ale s omezeními (nevidí mimo obrazovku).
  • Precomputed Radiance Transfer (PRT): předpočítané odezvy na nízkofrekvenční osvětlení (sférické harmonické funkce), vhodné pro statické scény.

Odšumování, časová akumulace a upscaling

Monte Carlo renderování v reálném čase se opírá o časovou akumulaci (reprojekci) a odšumovací filtry (prostorové, časové, učící se). Moderní upscalery (TAAU, DLSS/FSR/XeSS) zvyšují efektivní rozlišení a snižují počet vzorků na pixel bez viditelných artefaktů.

Spektrální vs. RGB renderování

RGB je aproximace; přesné zachycení jevů (tenké filmy, disperze, fluorescence) vyžaduje spektrální integraci. Spektrální renderery pracují v pásmech nebo spojitě a převádějí výsledky na barvy pomocí standardního pozorovatele (CIE XYZ). Výběr gamutů (sRGB, Display-P3, Rec.2020) a pracovních prostorů (ACEScg) je klíčový pro věrné podání barev.

Správa barev, HDR a tone mapping

Lineární výpočty → mapování do HDR (scRGB/FP16) → tone mapping (Reinhard, Hable, ACES) pro přizpůsobení dynamického rozsahu displeje. Správná křivka OETF/EOTF (sRGB, PQ, HLG) a mapování gamutu zabraňují desaturaci a ořezu jasných světel.

Fyzikální veličiny a jednotky v PBR

Kalibrace světel a materiálů zvyšuje předvídatelnost:

  • Světla: kandela (cd), lumen (lm), lux (lx), nit (cd/m²).
  • Měřitelné albedo a F0: dielektrika ~ 0.04, kovy podle tabulek komplexního indexu lomu n + iκ.
  • Korektní roughness (α) a normalizované NDF (GGX) pro zachování energie.

Materiálové modely nad rámec microfacet

  • Ashikhmin–Shirley: anizotropní zrcadlová složka, vhodná pro dřevo a kartáčované kovy.
  • Disney „principled“: sjednocený parametrický model (base color, metallic, roughness, specular, sheen, clearcoat, subsurface) s dobrou ovladatelností pro výtvarníky.
  • Vlasy a srst: vícepásmové laloky (R, TT, TRT) s azimutálními a výškovými složkami (Marschner, d’Eon–Zinke).
  • Tenké vrstvy: interference (mikrotenká vrstva) mění Fresnelovy odrazy a zabarvuje jasné odlesky.

Vzorkování světel: přímé, environmentální a MIS

U světel je zásadní vyhnout se rovnoměrnému vzorkování. Používejte vzorkování podle prostorového úhlu u plošných světel, alias-free vzorkování HDR prostředí (CDF nad texely váženými luminancí a kosinem) a MIS pro kombinaci se vzorkováním BSDF.

Šum a zkreslení: přesnost vs. rychlost

Metody se dělí na nezaujaté (konvergují ke správnému řešení, ale jsou zašuměné) a zaujaté (mají nižší šum, ale systematickou odchylku). V praxi se často kombinuje nízkošumová zaujatá GI v reálném čase a nezaujatý referenční výsledek pro validaci (offline/benchmarky).

Geometrie, viditelnost a akcelerační struktury

  • BVH: hierarchie ohraničujících objemů (bounding volume hierarchy) pro ray tracing, optimalizace SAH, refit pro animace.
  • Rasterizace: vyhodnocení viditelnosti pomocí trojúhelníků, Z-bufferu a odstraňování zadních stěn; ideální pro primární paprsky.

Stabilita, aliasing a filtrace

Omezení aliasingu zahrnuje prostorové metody (MSAA/CSAA), časové metody (TAA), stínové filtry (percentage closer filtering), filtrování textur (anizotropní filtrace) a geometrické filtry (předintegrované BRDF LUT). Časová stabilita je klíčová pro video a hry; reprojekci a historii je třeba chránit před duchy a kumulací chyb.

Validace PBR a referenční měření

Fyzikálně založené materiály je vhodné validovat podle naměřených dat (goniofotometrie) a knihoven indexů lomu. Testy energetické bilance (vstupní irradiance vs. integrovaný odraz), reciprocity a Fresnelovy křivky odhalí chyby implementace.

Pracovní postup s materiály: textury a mapy

  • Base color / albedo (dielektrikum), metallic, roughness, normal, ambient occlusion, případně specular/sheen/clearcoat.
  • Linearita: většina map (kromě base color) se interpretuje lineárně; base color bývá v sRGB a musí se převést do lineárního prostoru.
  • Hustota texelů a MIP bias: pro stabilní detaily bez blikání.

Kompozice, průhlednost a přenos světla

Materiály s transmisí vyžadují řešení lomu (Snellův zákon) a vnitřních odrazů. V rasterizaci se průhlednost řeší řazením nebo technikami OIT (order-independent transparency): weighted blended OIT, momentové metody. V ray tracingu je lom přirozený, ale výpočetně náročný.

Praktické zásady pro robustní osvětlovací modely

  • Dodržujte zachování energie (difuzní + zrcadlová složka ≤ 1 při všech úhlech).
  • Používejte GGX s normalizovaným D a Smithovým G; Fresnelův model Schlick s přesným F0.
  • Správně transformujte normály (matice TBN, jednotkový vektor po interpolaci).
  • Filtrujte drsnost při změnách LOD, abyste předešli artefaktům „jiskření“.
  • Kalibrujte světla a expozici; upřednostňujte fyzikální jednotky a ACES tone mapping.

Trendy: path guiding, neurální renderování a diferencovatelnost

Path guiding se učí směrové rozložení světla pro lepší vzorkování. Neural rendering (odšumovací filtry, super-resolution, NERF) využívá strojové učení ke zrychlení i podpoře nových modalit. Diferenciální renderery umožňují optimalizovat parametry scény podle referenčních snímků (inverse rendering).

Závěr: volba modelu podle cíle a rozpočtu

Principy renderování vycházejí z jediné rovnice, ale způsoby jejího řešení se liší podle rozpočtu (čas, paměť, energie) a cíle (reálný čas vs. offline, stylizace vs. fyzika). Fyzikálně založené mikrofasetové PBR s IBL je dnes standardem pro interaktivní aplikace; offline produkce využívá pokročilé integrátory, spektrální modely a komplexní BSDF/BSSRDF. Klíčem je konzistence: správné jednotky, lineární barvy, energetická bilance a vhodná filtrace. S těmito zásadami lze vytvořit renderovací řetězec, který je věrný, stabilní a efektivní.