Oświetlenie globalne ang. global illumination Radosław Mantiuk
Generowanie obrazów z uwzględnieniem oświetlenia globalnego Cel oświetlenia globalnego obliczenie drogi promieni światła od źródeł światła do kamery. Oświetlenie globalne symuluje zjawiska fizyczne związane z rozchodzeniem się światła. Uwzględnienie własności materiałów decydujących o sposobie odbijania światła.
GI: oświetlenie bezpośrednie (ang. direct illumination) Obliczane na podstawie znajomości: geometrii obiektów, kierunkowej i spektralnej charakterystyki źródła światła, funkcji odbicia obiektu.
GI: odbicia wewnętrzne (ang. interreflections) Kosztowne pod względem obliczeniowym. diffuse interreflections
Typy odbić (ang. reflections) dyfuzyjne (lambertowskie) lustrzane mieszane
Typy odbić (ang. reflections)
Odbicia wewnętrzne: farbowanie powierzchni (ang. color bleeding)
Odbicia wewnętrzne: kaustyki (ang. caustics)
Efekty wolumetryczne (ang. volumetric effects)
Metoda map fotonowych (ang. photon mapping) Henrik Wann Jensen, Realistic Image Synthesis Using Photon Mapping, AK Peters, 2001 o jakości rederingu decyduje liczba fotonów wysyłanych ze źródeł światła 1. Śledzenie fotonów tworzenie map fotonowych. 2. Rendering (density estimation + final gathering). metoda map fotonywych uwzględnia: odbicia wzajemne, kaustyki, refrakcje, rozproszenie światła w materiale, rozpraszanie podpowierzchniowe.
Photon mapping: śledzenie fotonów Śledzenie fotonów losowo generowanych ze źródeł światła: 1. po trafieniu w powierzchnię energia fotonu zapamiętywana jest w mapie fotonowej (zorganizowanej w strukturę kd-tree), tworzy się dodatkową mapę dla kaustyków wymagających większej liczby próbek (więcej fotonów wysyłanych jest w kierunku powierzchni typu specular), mapa fotonowa musi być efektywna pod względem zajętości pamięci, jej struktura musi umożliwiać efektywne przeszukiwanie drzewa.
Mapa fotonowa, struktura kd-tree (k-dimensional tree) Drzewo binarne z ortogonalnym podziałem węzłów. lokalizacja fotonów ze złożonością O(n) (najgorszy przypadek), dla struktury zbalansowanej koszt przeszukania wynosi O(log n) moc fotonu wartości zmiennoprzecinkowe RGB (format Radiance RGBE)
Photon mapping: śledzenie fotonów 2. Następnie foton jest absorbowany, odbijany (z wykorzystaniem funkcji BRDF) lub transmitowany (np. z wykorzystaniem BSSRDF lub BTF), rodzaj interakcji fotonu z powierzchnią wybierany jest losowo (metoda Monte Carlo - Russian Roulette), prawdopodobieństwo odbicia wyznaczane jest przez współczynnik odbicia materiału, prawdopodobieństwo decyduje o tym, w jaki sposób dany foton będzie aproksymował własności materiału (np. czy będzie odpowiedzialny za absorbcję, czy składową diffuse) moc fotonu nie ulega zmianie po odbiciu
Photon mapping: rendering Śledzenie promieni przechodzących przez piksele obrazu 1. szuka się najbliższego przecięcia 2. rozwiązuje się równanie oświetlenia: oświetlenie bezpośrednie klasyczne równanie oświetlenia oświetlenia specular klasyczne równanie oświetlenia, oświetlenie pośrednie - z wykorzystaniem map fotonowych kaustyki - z wykorzystaniem specjalnych map fotonowych
Photon mapping: density estimation density estimation służy do szacowania wartości irradiancji na podstawie próbek z mapy fotonowej otaczających punkt przecięcia: odczytanie z map fotonowych parametrów N fotonów znajdujących się obok punktu przecięcia (metoda najbliższego sąsiada), wyznaczenie sfery otaczającej S ww. N fotonów, podzielenie N przez powierzchnię sfery S i pomnożenie razy BRDF
Photon mapping: równanie oświetlenia
Photon mapping: final gathering final gathering wysyłanie z punktu przecięcia promieni w losowych kierunkach zbierających informacje o otaczających mapach fotonowych, pozwala na zmniejszenie liczby próbek światła
Photon mapping: kaustyki Wykorzystywana dodatkowa mapa fotonowa, aby zwiększyć dokładność obliczeń.
photon mapping: przykłady
photon mapping: mapa fotonowa
photon mapping: przykłady
photon mapping: przykłady (subsurface scattering)
Rozproszony ray tracing (ang. distributed ray tracing) Z każdego punktu przecięcia wysyłane są promienie w losowo wybranych kierunkach. Generator promieni bazuje na metodzie Monte-Carlo oraz uwzględnia BRDF do ważenia liczby promieni wysyłanych w różnych kierunkach. miękkie cienie (próbkowanie kąta bryłowego wyznaczonego przez powierzchniowe źródło światła) "miękkie" odbicia i załamania światła (obejmujące zadany kąt bryłowy) antyaliasing stochastyczny (integracja po powierzchni) efekt motion blur (integracja po czasie) brak kaustyków
Śledzenie ścieżek (ang. Monte Carlo path tracing) Śledzenie wielu promieni wychodzących z jednego piksela: 1. wysyłany promień od obserwatora, 2. po trafieniu w powierzchnię promień jest losowo załamywany bądź odbijany od powierzchni, 3. odbicie w losowym kierunku (zgodnie z BRDF), 4. tak samo po kolejnych odbiciach, 5. procedura kończy się po ewentualnym trafieniu w źródło światła. (w przypadku dwukierunkowego śledzenia ścieżek, kolor obliczany jest poprzez śledzenie ścieżki od źródła światła)
Natychmiastowa metoda bilansu energetycznego (ang. instant radiosity) 1. Fotony śledzone od źródła światła (quasi-losowe odbicia bazujące na quasi Monte Carlo). 2. Dla każdego przecięcia tworzone VPL (ang. Virtual Point Lights). 3. Wysyłanie promieni z kamery i obliczanie oświetlenia z uwzględnieniem VPLs.
Instant radiosity Metoda może być efektywnie wspomagana przez GPU.
Instant radiosity: przykłady renderingów 10 VPLs 1000 VPLs
Instant radiosity: Błędy Brak szumu.
Obliczanie przesłaniania środowiska (ang. Ambient Occlusion, AO) obszar o dużym przesłanianiu równanie Phong'a: współczynnik przesłaniania: I p = k a i a + m lights k a = 1 π Ω V p (ω)(n ω)dω k d i m,d (L m N)+ k s i m,s (R m V ) α [Bunnell, GPU Gems 2, Chapter 14, Dynamic Ambient Occlusion and Indirect Lighting, 2005]
AO: Współczynniki przesłaniania model Phong'a współ. przesłaniania Bardzo duża złożoność obliczeniowa algorytmu (100 mln wysyłanych promieni)
Redukcja szumu Zbyt mała liczba próbek prowadzi do pojawienia się rozkładu Poisson'a, dlatego dla dużych kątów widzenia współczynniki przesłaniania są zastępowane współ. ambient z modelu Phong'a.
Przesłanianie środowiska we współrzędnych ekranu (ang. Screen Space Ambient Occlusion, SSAO) Dla każdego piksela losowo próbkowane jest jego otoczenie. Dla każdej próbki odczytywana jest wartość Z. Większa liczba próbek z mniejszy Z niż Z piksela wskazuje na duże przesłanianie. (technika nie eliminuje samo-przesłaniania się)
SSAO: hemisfera Próbkowanie wewnątrz hemisfery wyznaczonej przez normalną do powierzchni. wyeliminowany efekt samo-przesłaniania. Mniejsza liczba próbek. Większa gęstość próbek w mniejszej odległości od piksela filtracja dwuliniowa (ang. bilateral filtering) zmniejszenie liczby próbek
SSAO: przykłady
SSAO: przykłady
SSAO: przykłady