4 Wyklad GK PotokGraficzny

background image

Grafika komputerowa

Potok graficzny 3D

Rados"aw Mantiuk

Wydzia" Informatyki

Zachodniopomorski Uniwersytet Technologiczny

Grafika komputerowa

System graficzny

Dane wej$ciowe

scena 3D

algorytm graficzny

obraz 2D

Algorytm tworz!cy

obraz wyj$ciowy na

podstawie sceny 3D

Dane wyj$ciowe

System graficzny

czasu rzeczywistego

O"wietlenie lokalne

System

graficzny 2D

System grafiki

realistycznej

Graficzne interfejsy
u#ytkownika

Grafika bardzo du#ej
jako$ci.

O"wietlenie

globalne

.

grafika realistyczna/fotorealistyczna

Grafika komputerowa

O$wietlenie globalne i lokalne

O$wietlenie globalne

O$wietlenie lokalne

Grafika komputerowa

Potok graficzny

Scena 3D
• wielok!ty (po"o#enie wierzcho"ków XYZ))
• kolory (wektor RGB)
• wektory normalne (N)
• tekstury (wspó". tektury (u,v))

bufor ramki
(ang. frame buffer)

wspó!. lokalne
-> wspó!. globalne

(macierz transform.)

rzutowanie

(macierz
rzutowania)

obliczenie koloru
(

równanie

o"wietlenia

dla

wierzcho"ków)

przej$cie do
wspó". rastrowych

clipping

teksturowanie

cieniowanie

(p"askie lub
Gouraud)

pomijanie
niewidocznych
pikseli
(

bufor Z

)

• Wykonywanie kolejnych operacji, dane wyj$ciowe z
danej operacji s! wej$ciem dla kolejnej.
• Potok akumuluje b"%dy.
• Zakres informacji nie powi%ksza si% w kolejnych
krokach potoku.

background image

Grafika komputerowa

Scena 3D

Zbiór trójwymiarowych danych wej$ciowych wykorzystywanych do

wygenerowania obrazu wyj$ciowego 2D.

-

Definicja geometrii obiektów 3D.

-

Definicja materia"ów pokrywaj!cych obiekty.

- Kolor powierzchni obiektów.
- Tekstura.
- W"asno$ci powierzchni.

-

Kamera.

-

&ród"a $wiat"a.

-

Parametry $rodowiska (mg"a, dym, itp.).

Obraz wyj$ciowy

Scena 3D

Grafika komputerowa

Scena 3D - Reprezentacje geometrii obiektów

Reprezentacja obiektów geometrycznych

-

obiekty parametryczne opisane równaniami matematycznymi,

-

reprezentacja wielok!towa

,

-

obiekty z"o#one,

-

reprezentacja fraktalna,

-

krzywe i powierzchnie,

-

obiekty CSG.

Grafika komputerowa

Scena 3D - Modelowanie 3D

Grafika komputerowa

Scena 3D - Reprezentacja wielok!towa (1)

!

Trójk#t - obiekt podstawowy (wspó!p!aszczyznowo"$ wierzcho!ków trójk#ta)

!

Du%a liczba identycznych obiektów.

!

Wykorzystanie tych samych algorytmów do przetwarzania wszystkich

obiektów (architektura SIMD kart graficznych).

!

Ograniczona dok!adko"$ odwzorowania powierzchni kszywoliniowych

(aproksymacje powierzchni krzywoliniowych).

!

Du%a liczba obiektów potrzebna do zbudowania prostego kszta!tu geom.

(przyk!ad kuli).

background image

Grafika komputerowa

Scena 3D - Reprezentacja wielok!towa (2)

Optymalizacja reprezentacji wielok!towej - unikanie powtórze' definicji

wierzcho"ków.

konfiguracja „fan”

konfiguracja „mesh”

v8

v9

v10

konfiguracja „strip”

Grafika komputerowa

Scena 3D -

Powierzchnie

krzywoliniowe (1)

Opisane za pomoc! równa' matematycznych (ang. implicit representation)

• Reprezentacja parametryczna (ang. parametric representation)

Spline

- parametryczna krzywa/powierzchnia wielomianowa

funkcja uwik"ana

Grafika komputerowa

Scena 3D -

Krzywa Biezier’a

Krzywa Beziera

wyznaczana jest przez cztery punkty kontrolne

Odcinki wyznaczane przez PoP1 oraz P3P2 s! styczne do krzywej.

Grafika komputerowa

Scena 3D - Powierzchnie krzywoliniowe (2)

&ata Beziera

(ang.

Bezier patch

) - 16 punktów kontrolnych

NURBS

- ang. non-uniform, rational B-spline - uogólnienie krzywych/powierzchni Bezier’a.

NURBS nie zmianiaj# si' po przekszta!ceniach afinicznych i perspektywicznych.

Sk"adaj! si% z wielok!tów o kraw%dziach b%d!cych krzywymi Bezier’a.
(aty "!czone s! w powierzchnie krzywoliniowe Bezier’a (Bezier splines).

B-splines

- krzywe/powierzchnie parametryczne powsta"e poprzez po"!czenie "at.

Pictures courtesy of MIT (Lecture Notes 6.837)

background image

Grafika komputerowa

Scena 3D - Powierzchnie krzywoliniowe (3)

Czajnik zbudowany z "at Bezier’a (32 "aty).

Courtesy of MIT (Lecture Notes 6.837)

Grafika komputerowa

Scena 3D - Powierzchnie krzywoliniowe (4)

Dok"adno$) odwzorowania powierzchni kontrolowana przez liczb% wielok!tów w
"acie. Obiekty deformowane s! w sposób ci!g"y.

Courtesy of MIT (Lecture Notes 6.837)

Grafika komputerowa

Scena 3D - Reprezentacja obrotowa (ang. Sweep)

Powielanie kszta"tu 2D w 3D.

Courtesy of MIT (Lecture Notes 6.837)

Grafika komputerowa

Scena 3D - Reprezentacja proceduralna (1)

Reprezentacja fraktalna

- tworzenie kszta"tów geometrycznych za pomoc!

algorytmów.

Courtesy of MIT (Lecture Notes 6.837)

background image

Grafika komputerowa

Scena 3D - Reprezentacja proceduralna (2)

Tworzenie siatek terenów
(ang. high fields)

Systemy L

Picrues - courtesy of MIT (Lecture Notes 6.837)

Grafika komputerowa

Scena 3D - Obiekty CSG

CSG - ang. Constructive Solid Geometry

Courtesy of MIT (Lecture Notes 6.837)

Grafika komputerowa

Scena 3D - Reprezentacja hierarchiczna

Obiekty z"o#one sk"adaj! si% z wielu
obiektów podstawowych.

Powtarzaj!ce si% elementy
reprezentowane s! za pomoc!
transformacji geometrycznych.

Courtesy of Andries van Dam

Grafika komputerowa

Scena 3D - Kamera (1)

!

Definiuje jaka cz%$) przestrzeni trójwymiarowej b%dzie widoczna na wyj$ciowym

obrazie 2D.

!

Okre$la sposób rzutowania (prostok!tne, perspektywiczne, itp.).

!

eyep

!

FOV

!

up

!

xres

!

yres

!

lookp

!

twist

!

k#t patrzenia FOV (ang. Field of View)

!

punkt po!o%enia kamery

!

punkt, na który patrzy kamera

!

k#t skr'cenia kamery

!

rozdzielczo"$ pionowa i pozioma

!

orientacja obrazu

!

aspekt (ang. aspect ratio)

Courtesy of Andries van Dam

background image

Grafika komputerowa

Scena 3D - Kamera (2)

k!t patrzenia (FOV)

powierzchnie obcinaj!ce
(ang. clipping planes)

Courtesy of Andries van Dam

Grafika komputerowa

Scena 3D - Kamera (3)

Clipping

usuwanie obiektów znajduj!cych si% poza polem widzenia.

Courtesy of Andries van Dam

Culling

- usuwanie obiektów zas"oni%tych przez inne obiekty

(np. ang.

backface culling

).

Grafika komputerowa

Scena 3D - &ród"a $wiat"a (1)

Emisja widzialnej fali elektromagnetycznej (400-700 nm)

!wiat"o punktowe

(point light)

!wiat"o kierunkowe

(distant light)

!wiat"o sto#kowe

(spot light)

Grafika komputerowa

Scena 3D - &ród"a $wiat"a (2)

Naturalne *ród"a $wiat"a - generowanie

mi%kkich cieni (ang. soft shadows)

.

!wiat"o liniowe

(linear light)

!wiat"o powierzchniowe

(area light)

background image

Grafika komputerowa

Scena 3D - Materia" (1)

Sk!adowe koloru

obiektu:

-

kolor otoczenia (ang.

ambient

),

-

kolor "wiat!a rozproszonego (ang.

diffuse

),

-

kolor rozb!ysków (ang.

specular

).

ambient

diffuse

specular

Warto$) koloru definiowana jako wektory RGB o sk"adowych R (red), G(green), B(blue)

= ambinet + diffuse

= ambinet + diffuse + specular

Grafika komputerowa

Scena 3D - Materia" (2)

W!asno"ci powierzchni

obiektów:

-

powierzchnie rozpraszaj!ce,

-

powierzchnie odbijaj!ce (lustrzane),

-

powierzchnie za"amuj!ce (przezroczyste).

!

"

!

"

!

"

!

"

powierzchnia rozpraszaj#ca

powierzchnia odbijaj#ca
- k#t padania równy jest
k#towi odbicia

powierzchnia za!amuj#ca

Grafika komputerowa

Scena 3D - Materia" (3)

Teksturowanie

powierzchni obiektów.

Grafika komputerowa

Sceny 3D - Parametry $rodowiska

Parametryzacja przestrzeni sceny.

Mg!a

background image

Grafika komputerowa

Transformacja geometrii

Obiekt znajduje si% w pocz!tku
uk"adu globalnego (

ang. model

coordinates

) .

W wyniku transformacji jest
przekszta"cany do po"o#enia i
kszta"tu docelowego (ang.

world

coordinates

).

Wspó!rz'dne lokalne modelu -> Wspó!rz'dne globalne

Grafika komputerowa

Rzutowanie

Odwzorowanie fragmentu przestrzeni na p!aszczy(nie

perspektywiczne

prostok#tne

Grafika komputerowa

Rzutowanie prostok!tne (równoleg"e) (1)

- zachowanie proporcji obiektów
- szybka implementacja
- brak perspektywy

Ang. orthographic (parallel) projection

Grafika komputerowa

Rzutowanie prostok!tne (równoleg"e) (2)

transformacja do wspó"rz%dnych kanonicznych

Obliczanie wspó"rz%dnych wierzcho"ków po rzutowaniu

- zerowanie wspó"rz%dnej Z
- skalowanie

background image

Grafika komputerowa

Rzutowanie perspektywiczne

Grafika komputerowa

Rzutowanie perspektywiczne

p.z

q.y

Y

Z

p.y

1

q

p

q.y = p.y / p.z
q.x = p.x / p.z
q.z = 1

rzutnia

Grafika komputerowa

Transformacja do wspó"rz%dnych ekranu

!

x

'

=

x + 1

2

" xres

y

'

=

y + 1

2

" yres

Obliczenie wspó"rz%dnych rastrowych
wierzcho"ków obiektów

(0,0)

(xres,yres)

Grafika komputerowa

Testowanie widoczno$ci obiektów

Bufor Z (ang. Z-buffer)

Miejsce w pami%ci osobne dla ka#dego piksela przeznaczone na zapami%tanie aktualnej
warto$ci Z piksela. Wielko$) bufora Z decyduje o precyzji testowania widoczno$ci
(obecnie stosuje si% Z-bufory 32-bitowe).

Warto$) bufora uaktualniana jest dla ka#dego
piksela i ka#dego trójk!ta.

Warto$ci z dla pikseli z wn%trza trójk!ta s!
interpolowane na podstawie po"o#enia
wierzcho"ków trójk!ta.

background image

Grafika komputerowa

Literatura

1.

Tomas Moller, Eric Haines, Real-Time Rendering, A K Peters, ISBN 1-56881-101-2

2.

“Lecture notes on Graphics. Lecture 6.837”, Computer Graphics Group,
Massachusetts Institute of Technology,
http://groups.csail.mit.edu/graphics/classes/6.837/F01/notes.html.


Wyszukiwarka

Podobne podstrony:
8 Wyklad GK Fotorealizm
2 Wyklad GK ObrazRastrowy
6 Wyklad GK Teksturowanie
1 Wyklad GK Wprowadzenie
3 Wyklad GK GrafikaRastrowa
7 Wyklad GK ProgramowanieGK
5 Wyklad GK Cieniowanie
GK wykład2
GK (wykłady)
GK wykład1
GK wykład3 standardy graficzne

więcej podobnych podstron