Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałEleonora Urbaniak Został zmieniony 8 lat temu
1
Draver/GRK/cw3_result.jpg
2
Grafika 3D Wprowadzenie
3
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
4
CSG CSG używana jest do modelowania wnętrz w silniku Unreal. Na ilustracji gra SWAT4
5
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
6
Outcast
7
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)
8
BREP
9
www.al3d.net/half-life2.htm
12
BREP Przekształcenia macierzowe Macierz świata Macierz widoku Macierz projekcji
13
Macierz świata Przekształca obiekt z lokalnego na globalny układ współrzędnych Jest złożeniem macierzy skalowania, rotacji oraz translacji.
14
Przekształcenia punktów w R 3 Translacja
15
Przekształcenia punktów w R 3 Skalowanie
16
Przekształcenia punktów w R 3 Obrót wokół osi X
17
Przekształcenia punktów w R 3 Obrót wokół osi Y
18
Przekształcenia punktów w R 3 Obrót wokół osi Z
21
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)
24
Macierz projekcji Odpowiada soczewce w aparacie Transformuje obszar widzenia ze ściętego ostrosłupa w prostopadłościan
25
Field of View
26
Macierz projekcji Rzut perspektywicznyRzut ortogonalny
27
Rzut perspektywiczny
28
Rzut ortogonalny
29
BREP Eliminacja powierzchni niewidocznych Back-face culling Algorytm malarza Algorytm z buforem głębokości
30
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”
31
Algorytm malarza Sortuje powierzchnie po odległości od kamery Wyświetla powierzchnie od najdalszej do najbliższej Nie zawsze poprawny
32
Algorytm z buforem głębokości (z-buffer) 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
33
Grafika 3D czasu rzeczywistego
34
Dane w postaci cyfrowej przesyłane są z CPU poprzez magistralę do procesora graficznego. W procesorze graficznym następuje dalsza obróbka obrazu a następnie trafia on do pamięci obrazu. Z tego miejsca dane cyfrowe linia po linii przetwarzane są przez układ RAMDAC na odpowiednie impulsy analogowe pozwalające na wyświetlenie obrazu. Generowanie obrazu (układ graficzny)
35
DirectX Jest to zestaw interfejsów programistycznych ułatwiających tworzenie gier oraz innych multimedialnych aplikacji w środowisku Windows Umożliwia niskopoziomowy dostęp do sprzętu, między innymi kart graficznych i dźwiękowych Alternatywą jest OpenGL rozwijany przez Khronos Group
36
Generowanie obrazu - GPU Potok wyświetlania Direct3D9
38
http://www.xmission.com/~legalize/book/preview/poster/pipeline-9.0.png
39
Wierzchołek opisany jest pozycją w przestrzeni trójwymiarowej (x, y, z) Opcjonalnie może posiadać dodatkowe informacje o płaszczyźnie trójkąta do którego należy, takie jak barwa czy wartość wektora normalnego N Vertex (wierzchołek)
40
Wierzchołki przechowywane są w jednowymiarowych tablicach – buforach Prymitywy wspierane przez Direct3D: –Lista punktów –Lista linii –Lista trójkątów –Pas trójkątów –Wachlarz trójkątów
41
Shadery (ang. shade, cień) Są to programy wykonywane bezpośrednio na GPU Geometry, vertex oraz pixel shaders GPU realizuje model SIMD – wiele podobnych (o takiej samej strukturze) pakietów danych przetwarzanych tym samym zestawem instrukcji
42
HLSL High Level Shading Language Stworzony przez Microsoft wysokopoziomowy język programowania shaderów zbliżony składnią do C Alternatywa dla GLSL z biblioteki OpenGL
43
Vertex shader Program vertex shader na wejściu otrzymuje strukturę opisującą pojedynczy wierzchołek –Pozycja –Normalna –Barwa –Koordynaty tekstury Wartości wyliczone przez vertex shader zostaną przekazane do pixel (fragment) shader’a Pojedyncze wywołanie shadera pracuje wyłącznie na danych jednego wierzchołka
44
Operacje na wierzchołkach Po przetworzeniu przez vertex shader usuwane są trójkąty odwrócone tyłem do kamery (backface culling) Eliminowane są także powierzchnie znajdujące się poza obszarem wyświetlanym (frustum culling) techpubs.sgi.com
45
Rasteryzacja Po przekształceniu geometrii sceny do przestrzeni kamery (poprzez wymnożenie przez macierz projekcji oraz widoku) następuje rasteryzacja Jest to proces zamiany obrazu wektorowego na rastrowy Określone zostaje które piksele obrazu końcowego odpowiadają którym fragmentom powierzchni trójkątów
46
Fragment shader Jest to shader wykonywany dla „pikseli” obrazu końcowego. Na wejściu otrzymuje dane zwrócone przez vertex shader Dane wejściowe są efektem liniowej interpolacji danych wyjściowych zwróconych przez vertex shader dla wierzchołków trójkąta na którym znajduje się dany fragment Na wyjściu zwraca barwę fragmentu, która jest zapisywana do bufora obrazu
47
Generowanie obrazu - RAMDAC RAMDAC (Random Access Memory Digital/Analog Converter) Pamięć karty graficznej jest wiersz po wierszu czytana przez RAMDAC. Łączy on poszczególne bajty i tak uzyskane wartości przekształca na analogowe poziomy napięcia. Generuje sygnały synchronizacji: – pionowy (VSYNC) określa początek i koniec obrazu – poziomy (HSYNC) określa początek i koniec wiersza Informacje te w postaci wygenerowanych przez RAMDAC sygnałów elektrycznych wysyłane są do monitora
48
Koniec Dziękuje za uwagę
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.