1 Grafika komputerowa Dr inż. Michał Kruk
2 Reakcja ś wiat ł a z materi ą : – Odbicie ś wiat ł a – Przenikanie ś wiat ł a Zale ż ne od w ł a ś ciwo ś ci materii Zarówno dla odbicia jak i przenikania wyró ż niamy: – Odbicie lustrzane (kierunkowe) – k ą t padania jest równy k ą towi odbicia – Odbicie rozproszone (dyfuzyjne) – odbicie mo ż e by ć widoczne pod dowolnym k ą tem Modele oświetlenia
3 Odbicia światła Odbicie lustrzane (kierunkowe, idealne) Odbicie kierunkowe rzeczywiste Odbicie powrotne Odbicie rozproszone Odbicie rzeczywiste
4 Sformułowanie problemu Jaka b ę dzie warto ść piksela, je ż eli na scenie wyst ą pi ź ród ł o ś wiat ł a?
5 Zależności Warto ść piksela (kolor lub jasno ść ) mo ż e zale ż e ć od: – Geometrii uk ł adu – Charakterystyki ź ród ł a ś wiat ł a – Charakterystyki powierzchni obiektu – Charakterystyki rozchodzenia ś wiat ł a odbitego (t ł umienia ś wiat ł a) – Charakterystyki rozchodzenia ś wiat ł a rozproszonego
6 Światło otoczenia - ambient Po ł o ż enie ś wiat ł a nie jest wa ż ne Po ł o ż enie kamery nie jest wa ż ne Orientacja powierzchni (normalne) nie jest wa ż na Obiekty o ś wietlone jedynie ś wiat ł em otoczenia ś wiec ą wprost proporcjonalnie do nat ęż enia tego ś wiat ł a, pozostaj ą c o ś wietlone jednolicie na ca ł ej powierzchni
7 Światło otoczenia - ambient
8 Grafika komputerowa - Michał Kruk
9 Model Lamberta Jeśli obiekt jest oświetlony przez punktowe źródło światła, którego promienie rozchodzą się równomiernie we wszystkich kierunkach z jednego punktu, to jasność powierzchni oświetlonego obiektu ulega zmianie w zależności od kierunku i odległości od światła Model opisany przez Lamberta w 1760 roku Inaczej zwany jako prawo Cosinusów Lamberta
10 Model Lamberta Model ten opisuje zachowanie się światła odbitego dla powierzchni doskonale rozpraszających bez połysku np. kredy, nazywanych powierzchniami lambertowskimi. Takie powierzchnie wydaja sie tak samo jasne ze wszystkich kierunków obserwacji
11 Model Lamberta Kule wyrenderowane za pomoca modelu Lamberta. Od lewej do prawej: kd = 0.2, 0.4, 0.6, 0.8, 1.0.
12 Model Lamberta
13 Model Lamberta - rozpraszanie
14 Model Lamberta - tłumienie
15 Model Lamberta – odległość od obserwatora
16 Oświetlanie powierzchni lustrzanych
17 Model oświetlenia Phonga Rozwinięcie modelu Lamberta poprzez dodanie odbicia zwierciadlanego Odbicie zwierciadlane można zaobserwować na każdej błyszczącej powierzchni Błyszczące powierzchnie odbijają światło niejednakowo w różnych kierunkach. Na idealnie błyszczącej powierzchni, np. zwierciadle, światło odbija sie tylko w kierunku zwierciadlanego odbicia
18 Model oświetlenia Phonga Obserwator może widzieć światło odbite zwierciadlanie od lustra tylko wówczas, gdy kąt jest równy zero. Wraz ze wzrostem chropowatości powierzchni kąt widoczności zwierciadlanego odbicia rozszerza się. Tym samym, wraz ze wzrostem kąta intensywność odbicia zwierciadlanego ulega zmniejszeniu
19 Model oświetlenia Phonga Model Phonga opiera sie na założeniach: – Maksimum odbicia zwierciadlanego występuje dla alfa równego zero i szybko spada ze wzrostem kąta alfa. – Ten szybki spadek jest aproksymowany przez cos n (alfa), przy czym wykładnik n charakteryzuje zachowanie sie odbicia zwierciadlanego dla danego materiału. – Wartości n zmieniają się od 1 do kilkuset, zależnie od symulowanego materiału. – Dla n = 1 występuje szeroki łagodny spadek, natomiast większe wartości symulują ostre, zogniskowane rozświetlenie
20 Model oświetlenia Phonga
21
22 Wnioski Jeśli n jest w nieskończoności uzyskujemy idealne zwierciadło
23 Model oświetlenia przenikającego obiekt
24 Przeźroczystość interpolowana
25 Algorytm bezpośredni 1. Dla każdego widocznego piksela obrazu obliczyć jego oświetlenie Zalety: - dokładność Wady: - złożoność
26 Cieniowanie Wyznaczenie barwy związanej z modelem oświetlenia dla każdego punktu/piksela jest zadaniem kosztownym. Można zatem rozpatrywać cieniowanie (interpolację) które pozwoli wypełnić barwą wielokąty w sposób uproszczony. Stosuje się trzy warianty takiego wypełnienia – trzy warianty cieniowania. – – Cieniowanie płaskie (cieniowanie stałą wartością), gdy cały wielokąt jest wypełniony taką samą barwą. – Cieniowanie Gouroud. – Cieniowanie Phonga.
27 27 Cieniowanie płaskie (ang. flat) W najprostszym modelu, cieniowaniu płaskim, obliczane jest oświetlenie w jednym punkcie dla każdej ścianki. Czy wynik jest poprawny jeśli obiekt jest rzeczywiście złożony ze ścianek ? (Dlaczego?)
28 Grafika komputerowa - Michał Kruk
29 Cieniowanie płaskie Model oświetlenia jest używany tylko raz w celu obliczenia jednej wartości natężenia, która jest później używana do cieniowania całego wielokąta Podejście dobre gdy: –Źródło światła jest w nieskończoności – N*L jest stałe na całej powierzchni wielokąta –Obserwator jest w nieskończoności – N*L jest stałe na całej powierzchni wielokąta –Wielokąt reprezentuje faktyczną powierzchnię modelowaną
30 Cieniowanie płaskie - algorytm
31 Cieniowanie z interpolacją Lepszy efekt w porównaniu do cieniowania płaskiego Na początku dla trójkątów, następnie uogólniona dla wielokątów Eliminuje nieciągłości jasności (pasma Macha) Cieniowanie Gourauda Cieniowanie Phonga Nie mylić z modelem oświetlenia !!!
32 Cieniowanie Gourauda Założeniem podstawowym jest to, aby poszczególne elementy sceny opisane były jako siatki wieloboków Na brzegach widoczne elementy wielokątów
33 Cieniowanie Gourauda - algorytm
34 Cieniowanie Gourauda - właściwości Nie daje możliwości powstania lokalnego ekstremum (np. rozbłysku światła) w ramach jednego elementu płaskiego. Powoduje to uśrednienie jasności na powierzchni obiektu – efekt kredy Cieniowanie Gouraud dopuszcza powstawanie pasm Macha
35 Cieniowanie Phonga Cieniowanie Phonga polega na analogicznej interpolacji, tylko że nie barwy ale wektora normalnego Dwukrotnie większa złożoność obliczeniowa Praktycznie nie dopuszcza pojawienia się pasm Macha Umożliwia pokazanie rozbłysków światła
36 Grafika komputerowa - Michał Kruk
37