Wprowadzenie do grafiki
komputerowej
Wprowadzenie do grafiki
komputerowej
Wykład 8
Wykład 8
Potok renderingu
Potok renderingu
Potok renderingu
Potok renderingu
Przekształcenia Oświetlenie
Przekształcenia Oświetlenie
Rasteryzacja
Rasteryzacja
Kamer
a
Parametry
rzutowania i
obcinania
Źródła
światła
Materiał
y
Tekstur
aPrzezroczystość i
mgła
Antyaliazing
Przekształcenia geometryczne i
przekształcenia oświetlenia wykonywane są na
wierzchołkach,
rasteryzacja wykonywana jest na pikselach.
Etap przekształceń geometrycznych i
Etap przekształceń geometrycznych i
oświetlenia
oświetlenia
Etap przekształceń geometrycznych i
Etap przekształceń geometrycznych i
oświetlenia
oświetlenia
x Przekształcenie do układu
obserwatora (kamery):
Przekształcenie do układu
obserwatora (kamery):
Przekształcenia
Przekształcenia
modelowania
modelowania
Rzutowanie w układzie obserwatora
(kamery)
Rzutowanie w układzie obserwatora
(kamery)
położenie obserwatora (kamery),
położenie obserwatora (kamery),
kierunek w którym patrzy obserwator i wektor do góry,
kierunek w którym patrzy obserwator i wektor do góry,
rozmiar płaszczyzny rzutowania
rozmiar płaszczyzny rzutowania
.
.
Aby wykonać rzutowanie należy określić punkt widzenia:
Aby wykonać rzutowanie należy określić punkt widzenia:
Tworzenie obrazu monoskopowego:
oko - położenie obserwatora, P - rzutowany punkt , R - rzut punktu P
R
widok obiektu
b)
P
R
oko
obiekt
a)
rzutnia
e
e
P
LR
PR
rzutnia
Lewe oko
Prawe oko
obiekt
a)
LR
PR
widok dla:
lewego oka
b)
prawego oka
Tworzenie obrazu
Tworzenie obrazu
stereoskopowego:
stereoskopowego:
P - rzutowany punkt,
P - rzutowany punkt,
LR
LR
- rzut punktu P dla lewego
- rzut punktu P dla lewego
oka,
oka,
PR
PR
- rzut punktu P dla prawego
- rzut punktu P dla prawego
oka.
oka.
Obliczenia oświetlenia:
Obliczenia oświetlenia:
Jasność jest rozkładem luminancji
Jasność jest rozkładem luminancji
(I
(I
R
R
, I
, I
G
G
, I
, I
B
B
), obliczanym z
), obliczanym z
modelu oświetlenia - algorytmu
modelu oświetlenia - algorytmu
opisującego sposób oddziaływania
opisującego sposób oddziaływania
światła na obiekt.
światła na obiekt.
Obliczenie jasności
Obliczenie jasności
wierzchołków na podstawie
wierzchołków na podstawie
informacji o źródłach
informacji o źródłach
światła i materiałach.
światła i materiałach.
A
N
N
Dla każdego wierzchołka trójkąta
wylicza się współrzędne (u,v) na
mapie tekstury.
Obliczenie współrzędnych tekstury
Obliczenie współrzędnych tekstury
Etap
Etap
rasteryzacji
rasteryzacji
Etap
Etap
rasteryzacji
rasteryzacji
Cieniowanie powierzchni barwą przy
uwzględnieniu
koloru, tekstury, przezroczystości.
Wykrywanie powierzchni widocznych
Wykrywanie powierzchni widocznych algorytmem Z-bufora: szukanie dla
każdego piksela współrzędnej z ścianki leżącej najbliżej rzutni.
Z -
bufor
Z -
bufor
Cieniowanie
Gourauda
Cieniowanie
Gourauda
Interpolacja liniowa między kolorami wierzchołków 1,2 oraz
1,3. otrzymujemy barwy odpowiednio na lewej i prawej
krawędzi.
Interpolacja liniowa na linii przeglądania między barwami na
krawędziach.
Etapy cieniowania kolejnej linii
przeglądania:
Linia
Linia
przeglądania
przeglądania
1
1
2
3
Interpolacja między czterema
sąsiednimi tekselami:
kolor_piksela
= w
k
C
k
dla
k =
1,2,3,4.
C
k
-
kolor teksela,
w
k
-
waga
Obraz: (a) bez filtracji, (b) po filtracji
dwuliniowej
i i+1
i i+1
j
j
j+1
j+1
Interpolacja dwuliniowa (
Interpolacja dwuliniowa (
ang. bilininear filtering
ang. bilininear filtering
)
)
Filtrowanie tekstury
Filtrowanie tekstury
Mapa tekstury obiekt daleki
obiekt bliski
Mipmapping
Mipmapping
Bez mipmappingu (a), z mipmappingiem (b)
Ciąg map dla mipmappingu
Mipmapa
R
G
B
Mipmapa: sposób
uporządkowania pamięci dla
trójkolorowej piramidy
(zbioru) map RGB o rozmiarze
2
n
2
n
.
Składowe RGB piksela
K obliczane są przez
interpolację
dwuliniową tekseli 1-
4.
Składowe RGB piksela
L obliczane są przez
interpolację
dwuliniową tekseli 5-
8.
Kolor piksela P liczony
jest przez interpolację
liniową między K i L.
Interpolacja trzyliniowa (
Interpolacja trzyliniowa (
ang.
ang.
trilinear
trilinear
filtering)
filtering)
Kolor mgły C
m
mieszany jest z kolorami obiektów
sceny C
o
:
C f d C
f d C
m
o
( )
(
( ))
1
gdzie f(d) - funkcja zmiany gęstości mgły wraz z
odległością d od obserwatora.
C
m
= (0.9, 0.9,
0.9)
C
m
= (0, 0, 0)
Mgła
Mgła
Pamięć związana z każdym pikselem, wykorzystywana do
pamiętania wartości nieprzezroczystości (ang. opacity)
lub pokrycia piksela jako wartości z zakresu <0,
1>:
= 0 -
piksel całkowicie przezroczysty
= 1 - piksel całkowicie nieprzezroczysty
0 < < 1 - piksel częściowo nieprzezroczysty
Przezroczystość z kanałem alfa (alpha
blending)
Przezroczystość z kanałem alfa (alpha
blending)
tło
szyba /
pleksi
Kierunek
patrzeni
a
Kolor piksela:
(R,G,B) = · (R,G,B)
obiektu
+ (1 - ) ·
(R,G,B)
tła
- ułamkowa wartość nieprzezroczystości szkła/pleksi
Schodkowa linia rysowana na urządzeniu o
Schodkowa linia rysowana na urządzeniu o
mniejszej (a) i większej (b) rozdzielczości
mniejszej (a) i większej (b) rozdzielczości
Antyaliazing
Antyaliazing
Kolor piksela:
(R,G,B) = (R,G,B)
linii
+ (1 -
)(R,G,B)
tła