RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Podobne dokumenty
Animowana grafika 3D. Opracowanie: J. Kęsik.

Model oświetlenia. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie

Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38

Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.

Grafika komputerowa. Model oświetlenia. emisja światła przez źródła światła. interakcja światła z powierzchnią. absorbcja światła przez sensor

GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu

Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23

Plan wykładu. Akcelerator 3D Potok graficzny

Zjawisko widzenia obrazów

Śledzenie promieni w grafice komputerowej

GRK 4. dr Wojciech Palubicki

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

MODELE OŚWIETLENIA. Mateusz Moczadło

Synteza i obróbka obrazu. Algorytmy oświetlenia globalnego

Synteza i obróbka obrazu. Tekstury. Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych

Oświetlenie obiektów 3D

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Scena 3D. Cieniowanie (ang. Shading) Scena 3D - Materia" Obliczenie koloru powierzchni (ang. Lighting)

Wstęp do astrofizyki I

Wstęp do astrofizyki I

Algorytmy oświetlenia globalnego

Ustawienia materiałów i tekstur w programie KD Max. MTPARTNER S.C.

WSTĘP DO GRAFIKI KOMPUTEROWEJ

Karty graficzne możemy podzielić na:

Grafika 3D program POV-Ray - 1 -

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Transformacje. dr Radosław Matusik. radmat

Podstawy fizyki wykład 8

Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

Mikroskop teoria Abbego

Efekty dodatkowe w rasteryzacji

Gry komputerowe: efekty specjalne cz. 2

Dotyczy: Przetarg nieograniczony na dostawę programów komputerowych na potrzeby Centrum Przemysłów Kreatywnych. Znak przetargu: AS/BZP/EU/12/2015.

Zaawansowana Grafika Komputerowa

Wykład XIV. wiatła. Younga. Younga. Doświadczenie. Younga

Optyka. Wykład IX Krzysztof Golec-Biernat. Optyka geometryczna. Uniwersytet Rzeszowski, 13 grudnia 2017

1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu

Grafika komputerowa. Dla DSI II

Optyka stanowi dział fizyki, który zajmuje się światłem (także promieniowaniem niewidzialnym dla ludzkiego oka).

Grafika realistyczna. Oświetlenie globalne ang. global illumination. Radosław Mantiuk

Wykład 17: Optyka falowa cz.2.

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Prawa optyki geometrycznej

Synteza i obróbka obrazu HDR. Obrazy o rozszerzonym zakresie dynamiki

Grafika 3D program POV-Ray

Optyka. Wykład VII Krzysztof Golec-Biernat. Prawa odbicia i załamania. Uniwersytet Rzeszowski, 22 listopada 2017

HDR. Obrazy o rozszerzonym zakresie dynamiki

Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest

Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30

Dr Piotr Sitarek. Instytut Fizyki, Politechnika Wrocławska

Grafika komputerowa i wizualizacja

Grafika komputerowa Wykład 10 Modelowanie oświetlenia

OpenGL oświetlenie. Bogdan Kreczmer. Katedra Cybernetyki i Robotyki Wydziału Elektroniki Politechnika Wrocławska

Ćwiczenie z fizyki Doświadczalne wyznaczanie ogniskowej soczewki oraz współczynnika załamania światła

Falowa natura światła

Najprostszą soczewkę stanowi powierzchnia sferyczna stanowiąca granicę dwóch ośr.: powietrza, o wsp. załamania n 1. sin θ 1. sin θ 2.

POLARYZACJA ŚWIATŁA. Uporządkowanie kierunku drgań pola elektrycznego E w poprzecznej fali elektromagnetycznej (E B). światło niespolaryzowane

PDF stworzony przez wersję demonstracyjną pdffactory

Architektura Komputerów

Problemy optyki falowej. Teoretyczne podstawy zjawisk dyfrakcji, interferencji i polaryzacji światła.

Wykład XI. Optyka geometryczna

POMIARY OPTYCZNE 1. Wykład 1. Dr hab. inż. Władysław Artur Woźniak

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Ćwiczenie: "Zagadnienia optyki"

Własności optyczne materii. Jak zachowuje się światło w zetknięciu z materią?

Dyfrakcja. Dyfrakcja to uginanie światła (albo innych fal) przez drobne obiekty (rozmiar porównywalny z długością fali) do obszaru cienia

Metody Optyczne w Technice. Wykład 5 Interferometria laserowa

a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna?

INTERFERENCJA WIELOPROMIENIOWA

Teoria światła i barwy

17. Który z rysunków błędnie przedstawia bieg jednobarwnego promienia światła przez pryzmat? A. rysunek A, B. rysunek B, C. rysunek C, D. rysunek D.

1 LEKCJA. Definicja grafiki. Główne działy grafiki komputerowej. Programy graficzne: Grafika rastrowa. Grafika wektorowa. Grafika trójwymiarowa

Laboratorium Optyki Falowej

6 Przygotował: mgr inż. Maciej Lasota

OPTYKA GEOMETRYCZNA I INSTRUMENTALNA

Wykład 17: Optyka falowa cz.1.

Simp-Q. Porady i wskazówki

Dodatek B - Histogram

Do opisu kolorów używanych w grafice cyfrowej śluzą modele barw.

Ćwiczenie 12/13. Komputerowy hologram Fouriera. Wprowadzenie teoretyczne

Architektura systemów komputerowych Ćwiczenie 3

1. Oświetlenie Materiały i powierzchnie

Natura światła. W XVII wieku ścierały się dwa, poglądy na temat natury światła. Isaac Newton

Grafika Komputerowa. Metoda śledzenia promieni

Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok

- 1 - OPTYKA - ĆWICZENIA

Przegląd metod renderingu czasu rzeczywistego dla fotorealistycznych wizualizacji architektonicznych

Wykład 16: Optyka falowa

SPRAWDZIAN NR Na zwierciadło sferyczne padają dwa promienie światła równoległe do osi optycznej (rysunek).

GRK 5. dr Wojciech Palubicki

Ćwiczenie 11. Wprowadzenie teoretyczne


Wykład FIZYKA II. 7. Optyka geometryczna. Dr hab. inż. Władysław Artur Woźniak

WYKŁAD 11. Kolor. fiolet, indygo, niebieski, zielony, żółty, pomarańczowy, czerwony

OPTYKA. Leszek Błaszkieiwcz

Wstęp do astrofizyki I

Tekstury. Alg. cieniowania

Optyka. Wykład XI Krzysztof Golec-Biernat. Równania zwierciadeł i soczewek. Uniwersytet Rzeszowski, 3 stycznia 2018

Transkrypt:

RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski

Plan wykładu Oświetlenie w grafice czasu rzeczywistego Modele koloru Modele źródeł światła Światła punktowe, kierunkowe i powierzchniowe Model nieba, tzw. skybox Modele odbicia światła Odbicie matowe Lambertian, Oren-Nayar Odbicie połyskliwe Phong, Cook-Torrance Odbicie anizotropowe Ashikhmin-Shirley

Plan wykładu c.d. Obiekty przeświecające (ang. translucent) Rozpraszanie podpowierzchniowe (ang. subsurface scattering, SSS) Efekty falowe dyfrakcja, interferencja Mapowanie środowiskowe Odbicie Załamanie Dyspersja

Literatura B. T. Phong, Illumination for Computer Generated Pictures, Communications of the ACM 1975 R. Cook, K. Torrance, A reflectance model for computer graphics, SIGGRAPH 1981 M. Oren, S.K. Nayar, Generalization of Lambert's Reflectance Model, SIGGRAPH 1994 M. Ashikhmin, P. Shirley, An Anisotropic Phong BRDF Model, Journal of Graphics Tools 2000

Literatura c.d. S. O Neil, Accurate Atmospheric Scattering, rozdział 16, GPU Gems 2, Addison Wesley 2005 S. Green, Real-Time Approximations to Subsurface Scattering, GPU Gems, Addison Wesley 2004 H. W. Jensen i inni, A Practical Model for Subsurface Light Transport, SIGGRAPH 2001 J. Stam, Diffraction Shaders, SIGGRAPH 1999

Oświetlenie w grafice czasu rzeczywistego Oświetlenie znane z rzeczywistości jest zbyt złożone aby dokładnie je odwzorować w aplikacjach komputerowych Konieczne są pewne modele i, czasem daleko idące, uproszczenia Zwykle komputerowa symulacja oświetlenia składa się z następujących elementów: Algorytmu liczenia oświetlenia Modeli źródeł światła Modeli odbicia

Oświetlenie w grafice czasu rzeczywistego c.d. Oświetlenie lokalne vs. oświetlenie globalne Rozpatrywane tylko źródło światła i oświetlany obiekt, obliczane jest jedno odbicie światła Rozpatrywana jest cała scena jednocześnie uwzględnienie dowolnie wielu odbić

Oświetlenie w grafice czasu rzeczywistego c.d. W grafice czasu rzeczywistego na ogół stosuje się oświetlenie lokalne Oprócz tego często spotyka się pewne elementy oświetlenia globalnego, np. Cienie wymagają rozpatrzenia dwóch obiektów oprócz źródła światła Mapowanie środowiskowe odbicia otoczenia w obiektach połyskliwych, załamanie światła w szkle, wodzie, itp.

Modele koloru Wszystkie kolory widziane przez ludzi można odtworzyć przy pomocy mieszania trzech barw w odpowiednich proporcjach Stąd popularność modelu RGB (Red-Green-Blue) Model ten bardzo dobrze nadaje się do przechowywania obrazów Niestety model ten powoduje różnorakie błędy w symulacjach oświetlenia Model ten nie ma żadnego uzasadnienia na gruncie fizyki

Modele koloru c.d. W grafice czasu rzeczywistego praktycznie zawsze stosuje się model RGB, ignorując potencjalne błędy RGB RGB Pełne widmo Światło białe Pełne widmo Światło kolorowe

Modele koloru c.d. RGB Pełne widmo

Modele źródeł światła Uproszczenie spotykanych na co dzień zjawisk na potrzeby grafiki komputerowej Niewielkie uproszczenia dla grafiki off-line, na ogół wyłącznie założenie prawdziwości optyki geometrycznej, teoria Newtona z XVIII wieku Często znaczące dla grafiki czasu rzeczywistego, np. ignorowanie rozmiaru źródła światła albo rozbieżności kierunku jego świecenia

Zanik światła z odległością Fizyka mówi: I = C/r 2, gdzie I to jasność, r to odległość od światła, a C to dowolna stała W grafice stosuje się pewne uproszczenia, przy których powyższy wzór nie zapewnia oczekiwanego rezultatu Punktowe źródła światła potencjalnie jasność Obliczanie tylko jednego odbicia często zbyt szybki zanik światła Powszechnie stosowany wzór: I = 1/(C 0 + C 1 r + C 2 r 2 ), w którym C 0, C 1, i C 2 oznaczają dowolne stałe

Światła punktowe Zajmują punkt (matematyczny) w przestrzeni Samo oświetlenie na ogół wygląda nieźle Niestety bez stosowania specjalnych sztuczek i chwytów cienie nie są dobrej jakości

Światła kierunkowe Założenie: duża odleglość źrodła światła względem rozmiaru oświetlanej sceny Uproszczenie równoległa wiązka promieni, bez zaniku (zmiana odległości jest pomijalnie mała) Często Słońce jest modelowane jako światło kierunkowe, ale nie jest to idealny model Przesuniecie obiektu na Ziemi nie ma znaczenia w porównaniu z odległością Ziemia-Słońce Jednak Słońce zajmuje pewien kąt na niebie promienie w rzeczywistości nie są rownoległe

Światła powierzchniowe Światła te posiadają ściśle określony kształt Oświetlenie pochodzi z wielu różnych kierunków Na wygląd sceny o wiele większy wpływ ma rozmiar źródła światła, niż jego konkretny kształt

Model nieba Zwykle tekstura sześcienna (stąd nazwa SkyBox) Może być też stosowane mapowanie sferyczne

Model nieba c.d. Obraz nieba albo zdjęcia albo symulacja rozpraszania światła w atmosferze W tym drugim przypadku trzeba dodatkowo modelować zjawiska atmosferyczne, np. chmury Można też modelować niebo nocne, a także wykonać dobrze wyglądające wschody i zachody słońca Często stosuje się światło podstawowe i dopełniające pozwala podkreślić detale w cieniach

Model nieba c.d.

Model nieba c.d.

Model nieba c.d.

Model nieba c.d.

Model nieba c.d. Oprócz pełnienia roli tła, niebo może oświetlać scenę, będąc światłem powierzchniowym

Model nieba c.d. Promienie słoneczne widziane w nieidealnie przeźroczystym powietrzu, tzw. godrays

Model nieba c.d. Efekty HDR (High Dynamic Range)

Modele odbicia Opisują jasność światła odbitego, przyjmując jako dane wejściowe Kierunek padania światła (L) Kierunek odbicia (V) Normalną (N) Opcjonalnie styczne (T i B) Wartości wyliczane R wektor idealnego odbicia i, i, o, o kąty przy L i V

Modele 3D przypomnienie Modele do renderingu na karcie graficznej są zbudowane z wierzchołków i trójkątów W wierzchołkach zapisane są m.in. normalne i, opcjonalnie, styczne Są to dane obliczane dla powierzchni przybliżanej siatką trójkątów, nie ma czegoś takiego jak normalna dla punktu Bardzo częsty błąd, głównie w opracowaniach dotyczących DirectX: (T, B, N) oznacza Tangent, BiTangent, Normal, a nie Tangent, BiNormal, Normal

Obliczanie oświetlenia Na współczesnych kartach graficznych można je obliczać w wierzchołkach, fragmentach albo rozdzielić operacje pomiędzy nie Dla typowych scen jest znacznie mniej wierzchołków niż fragmentów Kompromis pomiędzy wydajnością a jakością Wielkości zmieniające się liniowo pomiędzy wierzchołkami w przestrzeni obiektu albo przestrzeni ekranu można bezkarnie obliczać w programie wierzchołków

Obliczanie oświetlenia c.d. Porównanie jakości oświetlenia obliczanego w wierzchołkach i niezależnie dla każdego fragmentu

BRDF Ang. Bidirectional Reflection Distribution Function, Dwukierunkowa Funkcja Rozkładu Odbicia Modele używane zwyczajowo w renderingu off-line Często zapewnia o wiele lepsze rezultaty niż w grafice czasu rzeczywistego Obecnie programowalne karty graficzne o dużej mocy obliczeniowej pozwalają na stosowanie modeli tej klasy w grach komputerowych

Odbicie matowe Postrzegana jasność powierzchni nie zależy od kąta obserwacji Zależy tylko od kąta oświetlenia, I = C*cos(N L)

Model Orena-Nayara Też odbicie matowe, jednak model bardziej zaawansowany i zapewniający rezultaty bliższe rzeczywistości I = C/ (A + B*max(0, cos( ))*sin *tan ) A = 1 2 /(2 2 0.66) B = 0.45 2 /( 2 + 0.09) = max( i, o ) = min( i, o ) Aproksymacja modelu matematycznego, C i są parametrami

Model Orena-Nayara Odbicie niezależne od kąta obserwacji z lewej, model Orena-Nayara z prawej

Model Phonga Odbicie połyskliwe, w oryginale: obicie matowe w kolorze obiektu + połysk w kolorze światła I = C 1 *cos(n L) + C 2 *cos(r L) Dobrze oddaje wygląd obiektów plastikowych

Model Phonga c.d. Wektor połówkowy, H = normalize(l + V) Uwaga na dzielenie przez zero! Nie ma obszarów idealnie czarnych I = C*cos n (H N) Balans jasności Oryginalny model odbija coraz mniej światła wraz ze wzrostem połyskliwości I = C*(n + 2)/(2 )*cos n (H N) Poprawia jakość grafiki przy zastosowaniu HDR

Model Cook a-torrance a Powierzchnia budowana z bardzo wielu mikroskopijnych ścianek Każda ścianka odbija światło tak jak idealnie wypolerowane lustro Parametrami są siła odbicia lustra i rozkład statystyczny kątów odchylenia mikrościanek Efekt zbliżony do poprawionego modelu Phonga Można symulować wygląd powierzchni zarówno plastikowych, lakierowanych, jak i metalicznych

Model Cook a-torrance a Obiekty lakierowany i metalowy

Odbicie anizotropowe Zależność jasności od kąta padania i odbicia względem stycznych, a nie tylko normalnej

Odbicie anizotropowe c.d. Model Ashikhmina-Shirleya Oparty na mikroskopijnych zwierciadłach Analogiczny do modelu Cooka-Torrancea, z rozkładem statystycznym opisaną wzorem: D 2 2 e cos sin x e N y ( e x 1)( e y 1) h Funkcje sin i cos można wyeliminować korzystając z wzorów trygonometrii

Obiekty przeświecające

Obiekty przeświecające Obiekty te przepuszczają światło na druga stronę Można zastosować dowolny model odbicia, nieco go modyfikując Gdy sgn(n V) sgn(n L) oznacza to, że obiekt jest widziany z innej strony, niż jest oświetlany Odbicie światła opisane przez średnią ważoną odbicia zwykłego i przepuszczania światła na przeciwną stronę Model działa poprawnie tylko dla obiektów bardzo cienkich

Rozproszenie podpowierzchniowe Podobnie jak obiekty przeświecające, ale dla obiektów dowolnych, niekoniecznie cienkich

Rozproszenie podpowierzchniowe Poprzedni obrazek nie był liczony w czasie rzeczywistym Można jednak podobny efekt osiągnąć na karcie stosując pewne chwyty Poszerzenie zakresu odbicia matowego Mapy głębi

Rozproszenie podpowierzchniowe Model ten bardzo dobrze nadaje się do postaci ludzkich Konieczne aproksymacje dla renderingu czasu rzeczywistego

Efekty falowe Promienie światła uginają się na regularnie rozmieszczonych nierównościach Promienie nakładają się na siebie suma amplitudy fal Model wymaga operacji na pełnym widmie a nie RGB, konieczne konwersje

Mapowanie środowiskowe Mapa sześcienna zawierająca otoczenie obiektu Zwykle renderowana dynamicznie, konieczny jest sześciokrotny rendering tej samej sceny, ale w małej rozdzielczości Założenie: obiekt jest mały w stosunku do otoczenia Obiekt nie będzie się odbijał sam w sobie! Znalezienie kierunku odbicia i odczyt z tekstury Rozmycie tekstury dla obiektów nieidealnie połyskliwych

Odbicie

Załamanie Podobnie jak odbicie, tylko kierunek załamania Uproszczenie: promień załamany tylko raz Dyspersja inne współczynniki załamania dla składowych RGB

Efekt Fresnela Odbicie i załamanie w zależności od kąta padania Aproksymacja: R(θ) = R 0 + (1 R 0 )(1 cos θ) 5

Dziękuję za uwagę