3 Grafika 3D

background image

Przekształcenia afiniczne

background image

Przekształcenia afiniczne

• Przekształcenia prostych, płaszczyzn,

przestrzeni

• Zachowują równoległość prostych
• Zachowują stosunki długości boków

równoległych, pól figur na
płaszczyznach równoległych itd..

• Nie muszą zachowywać równości

kątów czy długości boków

background image

Przekształcenia punktów w

R

2

• Translacja

y

x

d

y

y

d

x

x

'

'

background image

Przekształcenia punktów w

R

2

• Skalowanie

y

s

y

x

s

x

y

x

'

'

background image

Przekształcenia punktów w

R

2

• Obrót wokół

początku układu
współrzędnych

cos

sin

'

sin

cos

'

y

x

y

y

x

x

background image

Przekształcenia punktów w

R

2

• Obrót wokół punktu innego niż początek

układu współrzędnych to złożenie
przesunięcia o wektor , obrotu
punktu
, a następnie
przesunięcia o wektor

0

0

, y

x

)

,

(

'

0

0

y

y

x

x

A

0

0

, y

x

background image

Zapis macierzowy

• Celem złożenia wielu przekształceń i

zapisania ich w postaci jednego, w
zapisie macierzowym przechodzimy
do współrzędnych jednorodnych
traktując punkty z R

2

jako punkty w

R

3

leżące na płaszczyźnie z = 1, czyli

jako punkty o współrzędnych A = (x,
y, 1)

background image

Zapis macierzowy

• Translacja

1

1

0

0

1

0

0

1

1

'

'

y

x

t

t

y

x

y

x

background image

Zapis macierzowy

• Skalowanie

1

1

0

0

0

0

0

0

1

'

'

y

x

s

s

y

x

y

x

background image

Zapis macierzowy

• Obrót wokół początku układu

współrzędnych

1

1

0

0

0

cos

sin

0

sin

cos

1

'

'

y

x

y

x

background image

Zapis macierzowy

• Obrót wokół dowolnego punktu

1

1

0

0

1

0

0

1

1

0

0

0

cos

sin

0

sin

cos

1

0

0

1

0

0

1

1

'

'

0

0

0

0

y

x

y

x

y

x

y

x

background image

Przekształcenia punktów w

R

3

• Analogiczne do przekształceń w R

2

• Do zapisu macierzowego

przechodzimy do współrzędnych
jednorodnych w R

4

background image

Przekształcenia punktów w

R

3

• Translacja

z

y

x

d

z

z

d

y

y

d

x

x

'

'

'

1

1

0

0

0

1

0

0

0

1

0

0

0

1

1

'

'

'

z

y

x

d

d

d

z

y

x

z

y

x

background image

Przekształcenia punktów w

R

3

• Skalowanie

z

z

y

y

x

x

d

s

z

d

s

y

d

s

x

'

'

'

1

1

0

0

0

0

0

0

0

0

0

0

0

0

1

'

'

'

z

y

x

s

s

s

z

y

x

z

y

x

background image

Przekształcenia punktów w

R

3

• Obrót wokół osi X

cos

sin

'

sin

cos

'

'

z

y

z

z

y

y

x

x

1

1

0

0

0

0

cos

sin

0

0

sin

cos

0

0

0

0

1

1

'

'

'

z

y

x

z

y

x

background image

Przekształcenia punktów w

R

3

• Obrót wokół osi Y

cos

sin

'

'

sin

cos

'

z

x

z

y

y

z

x

x

1

1

0

0

0

0

cos

sin

0

0

0

1

0

0

sin

cos

1

1

'

'

'

z

y

x

z

y

x

background image

Przekształcenia punktów w

R

3

• Obrót wokół osi Z

z

z

z

y

y

y

x

x

'

cos

sin

'

sin

cos

'

1

1

0

0

0

0

1

0

0

0

cos

sin

0

0

sin

cos

1

1

'

'

'

z

y

x

z

y

x

background image

Grafika 3D

Wprowadzenie

background image

CSG

• Constructive solid

geometry

• Bryły budowane są

proceduralnie na

podstawie kształtów

prostych – kul,

sześcianów, stożków itd.

• Dostępne są operacje

boolowskie na zbiorach

– suma, różnica i

przecięcie

Źródło: en.wikipedia.org

background image

CSG

CSG używana jest do modelowania wnętrz
w silniku Unreal. Na ilustracji gra SWAT4

background image

Voxels

• Voxel – ang. volumetric

pixel. Trójwymiarowy

odpowiednik piksela

• Pojedynczy voksel zawiera

informacje o swojej pozycji

względem sąsiadów oraz

ewentualnie dodatkowe

informacje o kolorze,

gęstości itd.

• Reprezentacja wokselowa

jest dyskretna

• Stosowana w głównie w

medycynie i geodezji

Źródło www.effectware.com

background image

Outcast

background image

Delta Force 3

background image

BREP

Reprezentacja brzegowa

• Bryły opisane są za pomocą następujących

elementów:

– Punktów
– Krawędzi
– Ścian

• Topologia – wzajemne położenie elementów
• Geometria – równania opisujące elementy

(równania prostych dla krawędzi,
płaszczyzn dla ścianek)

background image

www.al3d.net/half-life2.htm

background image

www.al3d.net/half-life2.htm

background image

BREP

Przekształcenia macierzowe

• Macierz świata
• Macierz widoku
• Macierz projekcji

background image

Macierz świata

• Przekształca obiekt z

lokalnego na globalny
układ współrzędnych

• Jest złożeniem

macierzy skalowania,
translacji i rotacji.

background image

Macierz widoku

• Przekształca każdy

obiekt z globalnego
układu
współrzędnych na
układ
współrzędnych
kamery (którego
środkiem jest
punkt kamery)

x

y

z

R

R

R

T

V

background image

Macierz projekcji

• Odpowiada soczewce w aparacie
• Transformuje obszar widzenia ze

ściętego ostrosłupa w prostopadłościan

background image

Macierz projekcji

• Rzut

perspektywiczny

• Rzut ortogonalny

background image

Brep

Eliminacja powierzchni niewidocznych

• Back-face culling
• Algorytm malarza
• Algorytm z buforem głębokości

background image

Back-face culling

• Polega na usunięciu

całych ścian, które są

skierowane tyłem do

kamery

• Wyznaczanie

normalnych ścian

• Analiza kąta pomiędzy

wektorem normalnym

i „kierunkiem kamery”

background image

Algorytm malarza

• Sortuje powierzchnie po odległości od

kamery

• Wyświetla powierzchnie od najdalszej

do najbliższej

• Nie zawsze poprawny

background image

Algorytm z buforem

głębokości

• Bardzo uniwersalny
• Rzutuje ściany obiektów do płaszczyzny

ekranu

• Dla każdego piksela rzutu obliczana jest

odległość odpowiadającego mu punktu na
scenie od kamery

• Jeżeli wartość głębokości piksela rzutu jest

mniejsza niż zapisana w buforze, to jest ona
zapisywana do bufora, a jego kolor
zapamiętywany

background image

Koniec

Dziękuje za uwagę


Document Outline


Wyszukiwarka

Podobne podstrony:
Laboratorium 4 Grafika 3D
2006 03 Blender–program do grafiki 3D [Grafika]
Przedm.-dobr, Studia, Grafika 3D w systemach CAD
I.Przedm. tIII-dob, Studia, Grafika 3D w systemach CAD
Tworzenie grafiki 3D
grafika 3D lab9 id 194729 Nieznany
Laboratorium 4 Grafika 3D
OpenGL Podstawy programowania grafiki 3D opglwp
OpenGL Podstawy programowania grafiki 3D
OpenGL Podstawy programowania grafiki 3D
OpenGL Podstawy programowania grafiki 3D 2
kurs autocad 3D, Grafika komputerowa
ChainFire+3D na x8 3d grafika, HowTo, [HowTo] Chainfire 3D - czyli lepsze gry na słabszym sprzęcie
2004 07 K 3D [Grafika]
Programowanie grafiki Java 3D i Python
Różnice między grafiką 2d i 3d

więcej podobnych podstron