SYNTEZA OBRAZU. Rendering obrazu 3D
|
|
- Bogna Staniszewska
- 9 lat temu
- Przeglądów:
Transkrypt
1 Synteza dźwięku i obrazu SYNTEZA OBRAZU Rendering obrazu 3D Rendering Proces tworzenia dwuwymiarowego obrazu (np. na ekranie) na podstawie trójwymiarowego opisu nazywa się renderingiem. Na podstawie informacji wejściowych: geometrii sceny 3D (opisu obiektów i ich połoŝenia na scenie), połoŝenia i charakteru źródeł światła, połoŝenia i kierunku patrzenia kamery (obserwatora) Podczas renderingu tworzony jest dwuwymiarowy obraz zdjęcie sceny.
2 Etapy renderingu Podstawowe etapy renderingu: przekształcenia (transformacje) sceny ustawienie źródeł światła rzutowanie na płaszczyznę usuwanie niewidocznych powierzchni obcinanie widoku przekształcenie widoku rasteryzacja obliczenie barwy kaŝdego piksela obrazu Rendering etap wstępny Renderowanie całego świata 3D nie jest potrzebne. Interesuje nas tylko to, co będzie widać na zdjęciu. Dlatego przed etapem rasteryzacji (oświetlanie, cieniowanie, itp.) wykonuje się: wyznaczanie widoku ustawiamy świat tak, jak widzi go obserwator, wyznaczanie powierzchni widocznych - wyrzucamy to co jest zasłonięte lub z tyłu, obcięcie widoku wyrzucamy to co nie zmieści się w kadrze
3 Przekształcenia sceny Układ współrzędnych obiektu (lokalny, local space) prywatny układ wsp. danego obiektu. Układ wsp. świata (sceny, world space) opisuje scenę, na której rozmieszczane są poszczególne obiekty. Układ wsp. widoku (obserwatora, view space) - związany z widzem oglądającym scenę. Przekształcenia sceny: local world dla kaŝdego obiektu (world tr.), world view dla całej sceny (view tr.) Przekształcenia sceny Współrzędne lokalne, świata i widoku
4 Przekształcenia geometryczne 2D Elementarne przekształcenia geometryczne modelu na płaszczyźnie (2D): translacja (przesunięcie) skalowanie obrót (rotacja) Opis punktu w układzie współrzędnych kartezjańskich: punkt (x,y) wektor P = [x y] zaczepiony w początku układu współrzędnych Translacja (przesunięcie) Translacja (translation) punktu (x,y) do punktu (x,y ): x = x + d x y = y + d y P = P + T x' x d = + y' y d x y
5 Skalowanie obiektu Skalowanie (scaling): x = s x x y = s y y x' sx = y' x s y y P = S P Skalowanie: jednorodne (s x = s y ) niejednorodne (s x s y ) Obrót obiektu Obrót (rotation) o kąt θ: x = x cos θ y sin θ y = x sin θ + y cos θ x' cosθ = y' sinθ sinθ x cosθ y P = R P
6 Składanie przekształceń Omówione przekształcenia mogą być dowolnie składane ze sobą. Przykład: obrót obiektu wokół punktu P =(x,y ): przesunięcie P do (,) obrót o kąt θ przesunięcie (,) z powrotem do P P = T(x,y ) R(θ) T(-x,-y ) P Składanie przekształceń Przykład 2: przesunięcie P do (,) skalowanie obrót przesunięcie (,) do P 2 Składanie przekształceń nie jest przemienne!
7 Macierzowa reprezentacja przekształceń Przekształcenia: translacja: P = P + T skalowanie: P = S P obrót: P = R P Chcemy zapisać wszystkie operacje w postaci mnoŝeń macierzy łatwiej składać przekształcenia ze sobą. UŜywa się współrzędnych jednorodnych. Macierzowa reprezentacja przekształceń 2D przesunięcie: skalowanie: obrót: = y x d d y x y x = y x s s y x y x = cos sin sin cos y x y x θ θ θ θ
8 Przekształcenia pochylające Przekształcenia pochylające (sheer): pochylenie wzdłuŝ osi x: P = SH x P pochylenie wzdłuŝ osi y: P = SH y P a, b współczynniki proporcjonalności = y x a y x = y x b y x Przekształcenia afiniczne Przekształcenia afiniczne: zachowują równoległość linii (linie, które były równoległe do siebie, pozostają równoległe po przekształceniu); nie muszą zachowywać odległości i kątów Wszystkie omówione przekształcenia: translacja, skalowanie, obrót, pochylanie są afiniczne. Przekształcenia, które nie są afiniczne, nazywa się czasami przekształceniami deformującymi.
9 Przekształcenia w trzech wymiarach Przekształcenia obiektów w trzech wymiarach opisywane są przez macierze przekształceń o wymiarach 4 x 4. Przekształcenia: translacja o (d x,d y,d z ) skalowanie o (s x,s y,s z ) obrót wokół osi x, y, z pochylenie na płaszczyźnie xy, xz, yz Składanie przekształceń 3D MnoŜenie macierzy przekształceń. Przykład:. Stan początkowy 2. Przesunięcie P do (,,) 3. Obrót P P 2 wokół osi y 4. Obrót P P 2 wokół osi x 5. Obrót P P 3 wokół osi z
10 Macierze przekształceń 3D Translacja Skalowanie Obrót: oś x oś y oś z z y x T T T z y x s s s cos sin sin cos θ θ θ θ cos sin sin cos θ θ θ θ cos sin sin cos θ θ θ θ Rzutowanie Rzutowanie (projection) - transformacja obiektów 3D w obiekty 2D; tworzenie płaskiego obrazu (zdjęcia) sceny 3D. Dwa zasadnicze rodzaje rzutów: rzut równoległy rzut perspektywiczny (ortographic projection), (perspective projection)
11 Rzut równoległy Rzut równoległy nie zachowuje perspektywy, zachowuje kształt i rozmiar obiektów. Rodzaje rzutu równoległego (i przykłady): prostokątny ortogonalne: przedni, górny, boczny aksonometryczne: izometryczny ukośny Metoda stosowana raczej w projektowaniu CAD. Przy renderingu rzut równoległy jest prostszy, wystarczy pominąć współrzędne z. Rzut równoległy Trzy rzuty prostokątne: Rzut ukośny: Rzut izometryczny kierunek rzutowania tworzy jednakowe kąty ze wszystkimi osiami
12 Rzut izometryczny Rzut stosowany często w starszych grach komputerowych. Rzut perspektywiczny Rzut perspektywiczny odwzorowuje sposób widzenia człowieka (skrót perspektywiczny). Wielkość rzutu zmniejsza się przy wzroście odległości między środkiem rzutowania a obiektem. Zniekształcane są kształty i wymiary obiektów. Rodzaje: jednopunktowy dwupunktowy trzypunktowy
13 Bryła widzenia Bryła widzenia ograniczona jest: liniami od obserwatora do krawędzi widoku, przednią płaszczyzną obcinania, tylną płaszczyzną obcinania Elementy leŝące poza bryłą widzenia są na późniejszym etapie obcinane (clipping). Normalizacja współrzędnych Po dokonaniu rzutowania perspektywicznego, współrzędne punktów są często konwertowane do układu znormalizowanego, tak Ŝe punkty wewnątrz bryły widzenia przyjmują wartości: współrzędne x, y z zakresu [-, ] współrzędna z (głębokość) z zakresu [, ] z = : przednia płaszczyzna obcinania (najbliŝej obserwatora), z = : tylna płaszczyzna obcinania (najdalej od obserwatora)
14 Wyznaczanie powierzchni widocznych Przy renderingu, trójkąt będący bliŝej obserwatora musi zakryć trójkąt będący dalej (głębiej) w obrazie. Ponadto trójkąty mogą się przecinać i zasłaniać częściowo. NaleŜy zastosować algorytm wyznaczania powierzchni widocznych. W kartach graficznych najczęściej stosuje się dwa etapy wyznaczania: wstępnie usunięcie tylnych powierzchni, podczas rasteryzacji wyznaczenie zasłoniętych powierzchni za pomocą bufora głębokości (z-buffer). Usuwanie tylnych ścian MoŜna uprościć szukanie powierzchni widocznych poprzez eliminację wielokątów tylnych, które na pewno nie są widziane przez obserwatora. Ściany tylne wektory normalne skierowane od obserwatora są eliminowane Ściany przednie wektory normalne skierowane do obserwatora są zachowywane Operacja ta nazywa się backface culling.
15 Obcinanie Obcinanie (clipping) usuwa elementy obiektów leŝące poza bryłą widzenia. Rozpatrywane są kolejne trójkąty siatki. Trójkąt leŝy w całości wewnątrz bryły widzenia jest przepuszczany. Trójkąt leŝy w całości poza bryłą jest odrzucany. Trójkąt leŝy częściowo wewnątrz bryły jest dzielony na dwa, pozostaje tylko część zawarta wewnątrz bryły. Transformacja widoku Obliczone wartości pikseli będą zapisywane do bufora obrazu. Typowo renderowany obraz ma zająć cały obszar (cały bufor), ale moŝemy chcieć wykorzystać tylko fragment bufora (np. podzielić ekran lub zostawić miejsce na GUI). Transformacja widoku przetwarza współrzędne widoku na wsp. bufora. Obszar bufora wykorzystywany przez jeden obraz nazywa się viewport.
16 Rasteryzacja Mamy teraz zbiór pustych trójkątów leŝących na płaszczyźnie widoku. Rasteryzacja zajmuje się pokolorowaniem obrazu, czyli wyznaczeniem barwy kaŝdego piksela. Przeprowadzane są takie operacje jak: cieniowanie teksturowanie wyznaczanie zasłaniania (bufor głębokości) wyznaczanie cieni przezroczystość (alpha blending) wszelkie inne efekty specjalne Rasteryzacja Mamy teraz płaski obraz 2D, ale dla kaŝdego werteksa mamy informacje dotyczące sceny 3D: połoŝenie (x, y, z) kolor współrzędne tekstury (u, v) kierunek wektora normalnego Wektor normalny (normal vector) jednostkowy wektor prostopadły do płaszczyzny. Wektor normalny wierzchołka uśredniony z wektorów normalnych sąsiednich trójkątów.
17 Wektory normalne Wektory normalne trójkąta i werteksu Cieniowanie Cieniowanie (shading) ustalanie barwy powierzchni obiektu na podstawie: odległości od źródła światła kąta pomiędzy powierzchnią a kierunkiem promienia światła właściwości powierzchni
18 Cieniowanie Analogia do rysunków ołówkowych Źródła światła Wygląd końcowego obrazu będzie zaleŝał od rodzaju i połoŝenia źródeł światła. Dwa podstawowe typy źródła światła: światło otoczenia (ambient) - rozproszone, bezkierunkowe źródło światła (np. słoneczne) bezpośrednie (direct) źródło opisane przez: pozycję, kierunek, barwę Zwykle stosuje się kombinację źródła światła otoczenia oraz jednego lub więcej źródeł światła bezpośredniego.
19 Źródła światła bezpośredniego Podstawowe typy źródeł światła bezpośredniego: punktowe (point) promienie rozchodzą się równomiernie we wszystkich kierunkach z jednego punktu kierunkowe (directional) źródło punktowe umieszczone dostatecznie daleko od oświetlanych obiektów, tak Ŝe promienie są równoległe reflektor (spotlight) promienie są ograniczone przez stoŝek ( abaŝur ) Źródła światła bezpośredniego Punktowe Kierunkowe Reflektor
20 Źródła światła (c.d.) Źródła światła są teŝ określone przez: typ pozycję (punktowe i reflektory) kierunek (kierunkowe i reflektory) barwę zasadnicza barwa światła (ambient) barwa po odbiciu rozproszonym (diffuse) barwa odblasku (specular) współczynniki tłumienia Źródła światła Zjawiska związane ze światłem Zanikanie światła z odległością (np. odwrotnie kwadratowe) Odbicia światła (rozpraszające, kierunkowe) Parametry źródła światła barwa światła (temperatura) moc (zakres, tłumienie) pozycja, kierunek charakterystyka kierunkowa (reflektory)
21 Materiały Materiał pokrywa powierzchnię trójkąta i określa jak wpływa on na oświetlenie sceny. Właściwości materiału: odbicie światła otoczenia (bezkierunkowego) ambient reflection, odbicie światła bezpośredniego (promieni mających kierunek) diffuse reflection, emisja światła (emmision), odblaski na powierzchni (specular reflection) W praktyce określa się barwę i przezroczystość dla kaŝdej z właściwości materiału. Materiały przykład właściwości Barwa materiału (bez światła): ambient diffuse specular emmision
22 Prawo cosinusów Lamberta Cieniowanie wykorzystuje prawo Lamberta: intensywność odbitego światła jest wprost proporcjonalne do cosinusa kąta między kątem padania światła a wektorem normalnym do powierzchni odbijającej. f r r ( θ ) = max( cos θ,) = max( L n, ) L wektor jednostkowy padającego światła n wektor normalny Cieniowanie płaskie Cieniowanie płaskie (flat shading). Dla kaŝdego wielokąta siatki, jego barwa jest obliczana tylko raz i uŝywana do cieniowania całego wielokąta. Kolor wielokąta jest obliczany na podstawie: kąta między wektorem normalnym wielokąta a kierunkiem promienia światła, intensywnością światła barwą powierzchni barwą światła
23 Cieniowanie płaskie powierzchni szkieletu JeŜeli kaŝda ściana szkieletu (wielokąt) będzie cieniowana niezaleŝnie, widoczne są granice między ścianami (róŝna barwa sąsiednich wielokątów). Zwiększenie liczby wielokątów nie daje spodziewanego rezultatu (tzw. efekt pasm Macha właściwości receptorów oka). Cieniowanie płaskie z interpolacją Rozszerzenie metody cieniowania płaskiego: natęŝenie światła obliczane jest w kilku punktach wielokąta w pozostałych punktach wartość natęŝenia jest obliczana na drodze interpolacji Najprostsza metoda: wielokąt jest trójkątem obliczamy natęŝenie światła w wierzchołkach trójkąta (w werteksach) interpolujemy wartości natęŝenia dla pozostałych punktów
24 Cieniowanie Gourauda Cieniowanie Gourauda polega na interpolowaniu jasności albo interpolowaniu barwy. Eliminuje nieciągłości jasności sąsiednich wielokątów. Na podstawie wektorów normalnych dla kaŝdego werteksu obliczana jest barwa wierzchołków siatki. Interpolacja liniowa między wierzchołkami wzdłuŝ krawędzi między krawędziami Cieniowanie Gourauda Siatka złoŝona z 3 wielokątów (program µlathe) Cieniowanie płaskie Cieniowanie Gourauda Wadą algorytmu Gourauda są zniekształcenia w przypadku odblasków na powierzchni obiektu.
25 Cieniowanie Phonga Cieniowanie z interpolacją wektora normalnego. Interpoluje wektor normalny do powierzchni, nie jasność. Konieczna jest znajomość wektorów normalnych dla kaŝdego wierzchołka wielokąta Interpolacja wektora normalnego wzdłuŝ krawędzi Interpolacja wektora normalnego w wierszach między krawędziami Dla kaŝdego ze znalezionych wektorów normalnych stosuje się model oświetlenia Cieniowanie Phonga Cieniowanie Phonga daje lepsze rezultaty w porównaniu z cieniowaniem Gourauda pod względem odwzorowania odblasków na powierzchni obiektu (odbić zwierciadlanych). Znacznie większa złoŝoność konieczność obliczania wektora normalnego dla kaŝdego piksela.
26 Problemy cieniowania z interpolacją Wszystkie metody cieniowania z interpolacją mają wspólne problemy: szkielet wielokątowy jest widoczny wprowadzane są zakłócenia perspektywiczne wynik zaleŝy od orientacji wielokąta (mniejsze zniekształcenia przy stosowaniu trójkątów) wektory normalne do wierzchołków nie zawsze reprezentują geometrię powierzchni Porównanie metod cieniowania brak Flat Gouraud Phong
27 Odwzorowanie szczegółów powierzchni Zastosowanie modeli cieniowania do siatki wielokątowej pozwala uzyskać tylko gładkie, jednolite powierzchnie. Najprostszy sposób odwzorowania szczegółów: uŝycie detali wielokątowych szczegóły obrazu reprezentowane za pomocą wielokątów. Jest to metoda bardzo nieefektywna. Najczęściej stosuje się pokrywanie powierzchni wielokątów obrazami bitowymi - teksturami. Tekstury Sama siatka wielokątowa + cieniowanie dają tylko informację o kształcie obiektu. Aby nadać obiektowi odpowiedni wygląd, w modelu 3D stosuje się tekstury (textures). Są to obrazy rastrowe (bitmap), które są nakładane na powierzchnię modelu 3D (na wielokąty siatki).
28 Tekstury Przykład - scena bez teksturowania (tylko cieniowanie) oraz z nałoŝeniem tekstur Tekstury Tekstura jako bitmapa oraz nałoŝona na siatkę wielokątową obiektu
29 Odwzorowanie tekstury Odwzorowanie tekstury ang. texture mapping Odniesienie współrzędnych tekstury (2D) do współrzędnych siatki wielokątowej (3D). Tekstura (texture) dwuwymiarowa mapa bitowa zawierająca pewien obraz. Teksel (texel) kaŝdy piksel tekstury. Mapa tekstury jest określona we własnym układzie współrzędnych (u, v). Konieczność przeznaczenia duŝego obszaru pamięci na przechowywanie tekstur. Odwzorowanie tekstury Współrzędne tekstury: oznaczane jako (u, v) unormowane do zakresu [; ] dla werteksa siatki podajemy współrzędne tekstury współrzędna z zakresu (; ) wycinamy fragment tekstury współrzędna większa niŝ tekstura jest powielana Często jedną teksturę nakłada się na grupę wielokątów.
30 Odwzorowanie tekstury Jak to działa: mamy współrzędne piksela znajdujemy współrzędne elementu siatki, który ma być narysowany znajdujemy współrzędne teksela tekstury nałoŝonej na rysowany wielokąt próbkujemy kolor tekstury we wskazanym miejscu kolorujemy piksel MIP mapping JeŜeli tekstura jest za mała jest ona powiększana ( pikseloza ). JeŜeli jest za duŝa konieczność zmniejszenia, utrata szczegółów. MIP mapping przechowywanych jest kilka (np. 8) wersji tekstury o róŝnych rozmiarach (rozdzielczościach). Rozmiar tekstury jest dobierany w zaleŝności od tego jak duŝą powierzchnię ma pokryć tekstura. Tekstury MIP mogą być przygotowane przez twórców lub generowane automatycznie.
31 MIP mapping Przykłady tekstur w róŝnych rozdzielczościach Tekstura powiększona (bez MIP) Filtrowanie tekstur Wyliczamy współrzędne teksela. Jaki pobieramy kolor dla piksela? Bezpośrednie pobranie koloru teksela nearest-point sampling jest najszybsze, ale powoduje artefakty, widoczne są pojedyncze piksele. Filtrowanie tekstury kolor piksela jest obliczany metodą uśrednienia koloru kilku sąsiednich tekseli. Powoduje to wygładzenie tekstury.
32 Filtrowanie tekstur Filtrowanie dwuliniowe (bilinear filtering) wyznaczanie wartości kaŝdego piksela przez uśrednienie wartości wyliczonego teksela oraz czterech sąsiednich tekseli. Filtrowanie trójliniowe (trilinear filtering) uśrednianie tekseli z dwóch tekstur (MIP-maps) o róŝnych rozdzielczościach Filtrowanie anizotropowe (anisotropic filtering) jak trójliniowe, ale uśrednia teksele z obszaru zaleŝnego od kąta nachylenia wielokąta i jego odległości Filtrowanie tekstur Przykład: tekstura o rozmiarze 64 x 64 pikseli. Obliczone współrzędne (u,v) = (,37;,79) point-sampling: wsp. tekstury = (23,68; 5,56) zaokrąglamy: (24; 5) pobieramy kolor z tego teksela filtrowanie dwuliniowe: początek tak samo uśredniamy teksele: (24; 5), (23; 5), (25; 5), (24; 5), (24; 52) kolorujemy piksel obliczoną wartością
33 Filtrowanie tekstur Przykład: brak filtrowania tekstur (point sampling) oraz tekstury filtrowane Filtracja anizotropowa Anizotropowy zaleŝny od kierunku. F. anizotropowa bierze pod uwagę kąt, pod którym widz patrzy na teksturowaną powierzchnię (róŝne skalowanie tekstury w kierunku u i v). Potrzebne są dodatkowe poziomy mip-mappingu. Znaczne zwiększenie złoŝoności więcej obliczeń, większe zuŝycie zasobów. F. trilinear F. anizotropowa
34 Filtrowanie tekstur Przykłady filtrowania tekstur: dwuliniowe trójliniowe anizotropowe Tekstury jako tło (pre-rendered background) W niektórych grach komputerowych jedynie obiekty na pierwszym tle są obiektami 3D, renderowanymi w czasie rzeczywistym. Tło (scenografia) jest mapą bitową, uzyskaną poprzez rendering na etapie produkcji gry. Upraszcza to rendering w czasie grania kosztem mniej realistycznej grafiki.
35 Skybox Skybox jest techniką stosowaną w grach komputerowych. Gracz i jego otoczenie poruszają się wewnątrz sześcianu, którego ściany są pokryte teksturą, np. obrazem nieba. Odwzorowanie nierówności powierzchni Tekstury są zawsze gładkie. NałoŜenie na obiekt tekstury przedstawiającej np. mur z cegły nie da realistycznego efektu. Kierunek oświetlenia przy tworzeniu tekstury jest inny niŝ w końcowej scenie. Mapowanie nierówności (bump mapping) technika pozwalająca uzyskać wraŝenie nierówności powierzchni poprzez symulację przesunięcia wybranych pikseli na osi z do przodu lub do tyłu przy pomocy mapy przesunięcia (mapy nierówności).
36 Odwzorowanie nierówności powierzchni Mapa nierówności tekstury: stopień szarości piksela odpowiada wypukłości piksela tekstury. Stosuje się dwa rodzaje map nierówności (height map): przesunięcie tekseli tekstury na osi z (przyciemnienie lub rozjaśnienie pikseli), modyfikacja wektorów normalnych do powierzchni Mapę nierówności nakłada się razem z teksturą na powierzchnię siatki wielokątowej. Bump mapping Dwie najczęstsze realizacja BM: prostsza (emboss BM) sumuje się teksturę z jej kopią, przesuniętą wg mapy nierówności i przyciemnioną; metoda stosowana np. w prostszych w grach; bardziej złoŝona, ale dokładniejsza modyfikuje się wektory normalne w kaŝdym z punktów, wg mapy nierówności, po czym oblicza się wpływ światła; metoda stosowana przy cieniowaniu Phonga oraz w algorytmach typu raytracing.
37 Bump maping przykład Torus bez odwzorowania powierzchni i z wykorzystaniem techniki bump mapping Bump maping przykład 2 Bez mapowania Mapa nierówności Wynik
38 Normal mapping Normal mapping, nazywane teŝ Dot3 bump mapping, to odmiana metody mapowania nierówności powierzchni: wektory normalne nie są modyfikowane, lecz zastępowane wektorami zapisanymi w mapie nierówności, mapa nierówności nie jest monochromatyczna, lecz zawiera informacje dla trzech kanałów RGB Bardziej dokładne odwzorowanie powierzchni; wymaga stosowania cieniowania Phonga. Normal mapping Za pomocą metody normal mapping moŝna uzyskać dokładniejszy wygląd obiektu za pomocą mniej złoŝonej siatki wielokątowej.
39 Displacement mapping Displacement mapping odwzorowanie przemieszczeń zamiast imitować nierówności, metoda tworzy prawdziwe nierówności: siatka trójkątów dzielona jest na mniejsze trójkąty siatka jest deformowana zgodnie z mapą przemieszczeń, na zdeformowaną siatkę nakładana jest tekstura, która układa się na wygiętej powierzchni. Musi być zastosowane na etapie przekształceń siatki, przed rasteryzacją! Parallax mapping Parallax mapping - jeden z najnowszych algorytmów odwzorowania nierówności. SłuŜy głównie do odwzorowania obiektów typu otwór po pocisku. Polega na nałoŝeniu na teksturę jej kopii, przekształconej przez funkcję zaleŝną od informacji zapisanej w mapie wysokości i od kierunku obserwacji. Inne nazwy: Photonic Mapping, Offset Mapping, Virtual Displacement Mapping
40 Odbicia pomiędzy obiektami Dla zwiększenia realizmu modeluje się odbicie innych obiektów na powierzchni innego obiektu. Przykład: odbicie pokoju na powierzchni lustra lub szklanej kuli. Konieczność uwzględnienia deformacji. Algorytm tego typu nosi nazwę reflection mapping (mapowanie odbić) lub environment mapping (mapowanie środowiska). Mapowane środowisko traktowane jest jako dynamiczna tekstura, która jest obliczana w czasie rzeczywistym, a następnie nakładana na powierzchnię odbijającą. Environment mapping Dwie zasadnicze metody mapowania środowiska: mapowanie sferyczne (spherical EM) tekstura jest zdejmowana z kuli, która znajduje się nieskończenie daleko od obiektu, w którym się ona odbija ( rybie oko ) mapowanie kubiczne (cubic EM) obiekt znajduje się wewnątrz sześcianu pokrytego teksturą, piksel tekstury wyznaczany jest na podstawie przebiegu promieni
41 Zaawansowane techniki mapowania EMBM Environment-Mapped Bump Mapping NałoŜenie na siebie: tekstury, mapy nierówności (bump map) mapy środowiska (environment map) Przykładowe efekty: odbicia w zafalowanej wodzie odbicia na powierzchni rozgrzanego asfaltu jezdni Zasłanianie obiektów RóŜne obiekty mogą się zasłaniać nawzajem. Chcemy narysować te fragmenty, które są widoczne (są najbliŝej obserwatora). Mamy informację o współrzędnej z wierzchołków siatki wielokątowej. Moglibyśmy wyznaczyć trójkąt, który jest bliŝej obserwatora i narysować go. Ale co zrobić gdy trójkąty przecinają się ze sobą?
42 Algorytm malarza Algorytm malarza (painter s algorithm) - naiwne podejście do problemu zasłaniania. Wszystkie obiekty są sortowane wg. połoŝenia na osi z. Obiekty są malowane w kolejności od połoŝonych najgłębiej do połoŝonych najbliŝej Algorytm nie radzi sobie z przecinającymi się płaszczyznami. Algorytm bufora głębokości (z-buffer) Potrzebne dwa obszary pamięci o takim samym rozmiarze: pamięć obrazu F wartość barwy bufor z wartość z dla kaŝdego piksela F Schemat działania: inicjalizacja bufora z (maksymalna głębokość) przeglądanie kolejnych trójkątów, piksele wiersz po wierszu jeŝeli współrzędna z punktu jest większa od zapisanej w buforze, bufor jest uaktualniany nową wartością, a piksel jest wpisywany do pamięci obrazu.
43 Algorytm bufora głębokości Ilustracja działania metody Algorytm bufora głębokości Przykład obrazu i bufora głębokości. Implementacja bufora z w kartach graficznych: sprzętowa, bufor 24-bitowy lub 32-bitowy (przy 6 bitach występują zniekształcenia).
44 Bufory głębokości z-buffer i w-buffer Bufor z (z-buffer) bazuje na unormowanych współrzędnych z. Rozkład tych współrzędnych jest nieliniowy większość przypada na początkowy zakres. MoŜe te powodować błędy w planach bliskich (przenikanie się obiektów). Bufor w (w-buffer) eliminuje te błędy kosztem większej złoŝoności obliczeniowej. Wykorzystuje współrzędne w obliczane podczas przekształcenia (rzutowania) perspektywicznego. Cienie obiektów Cienie dodają realizmu i pozwalają ustalić połoŝenie obiektów.
45 Shadow mapping Algorytm mapowania cieni (shadow mapping) działa w dwóch etapach: wyznaczenie mapy cieni - dokonuje się renderingu (bez wyznaczania koloru) z punktu widzenia źródła światła, zapisuje się wynik w mapie cieni; podczas właściwego renderingu (z punktu widzenia obserwatora) dokonuje się projekcji mapy cieni na obraz, barwa pikseli obrazu jest modyfikowana zgodnie z tą mapą. NaleŜy odróŝniać shadow mapping od cieniowania (shading). Shadow mapping Obraz bez cieni Wyznaczenie mapy cieni Projekcja mapy cieni Obraz z cieniami
46 Bryła cienia (shadow volume) Shadow volume (bryła cienia) to inna metoda tworzenia cieni. Jest bardziej dokładna, ale bardziej złoŝona. Wyznaczenie bryły cienia - za pomocą linii łączących źródło światła z werteksami wielokątów. Następnie wyznaczenie elementów sceny, które z punktu widzenia obserwatora leŝą wewnątrz bryły cienia. Bryła cienia (shadow volume) Implementacja praktyczna: renderowana jest scena tak, jakby cała była w cieniu; dla kaŝdego źródła światła tworzona jest maska, zapisywana w buforze maski (stencil buffer), maska ma otwory w miejscach, w których nie ma cienia; scena jest renderowana ponownie, ale z oświetleniem, w miejscach nie przykrytych przez maskę. Istnieją róŝne algorytmy róŝniące się metodą tworzenia maski (przyspieszenie obliczeń).
47 Bryła cienia Przykład: Przezroczystość (alpha blending) Powierzchnie mogą być przezroczyste lub półprzezroczyste (np. szkło) mogą częściowo przepuszczać światło. Obiekty zasłaniane mogą być więc częściowo widoczne. Powierzchnie przezroczyste obiekty za nimi są widoczne z ew. lekkim załamaniem promieni światła Powierzchnie półprzezroczyste promienie światła zmieniają kierunki (załamanie), obiekty z tyłu są rozmazane
48 Przezroczystość bez załamań Nie uwzględniane są zjawiska związane z załamaniem promieni światła. Efekt nie jest realistyczny, ale często efekt jest bardziej uŝyteczny niŝ w metodzie z załamaniami. Przezroczystość interpolowana interpolacja liniowa barwy piksela obliczonej dla wielokąta zasłaniającego i zasłanianego, biorąc pod uwagę współczynnik przezroczystości. Przezroczystość filtrowana wielokąt traktowany jest jak filtr przezroczysty, który selektywnie przepuszcza róŝne długości fali Przezroczystość z załamaniem Uwzględnienie załamań promieni światła jest trudniejsze róŝnica linii widzenia geometrycznej i optycznej. Konieczność modelowania dyspersji róŝny kąt załamania dla fal o róŝnej długości fali. Modelowanie polega na obliczaniu wektora załamania promieni światła.
49 Efekty atmosferyczne Atmospheric effect modyfikacja oświetlenia spowodowana działaniem efektów takich jak: mgła dym ogień opary falowanie rozgrzanego powietrza deszcz zmętnienie lustra wody refleksy świetlne rozmycie ruchu Systemy cząsteczkowe Systemy cząsteczkowe (particle system) słuŝą do generowania efektów takich jak ogień, dym, chmury, iskry i inne trudne do uzyskania klasycznymi metodami renderingu. Definicja emitera pozycja, szybkość generowania cząsteczek, kierunek, czas Ŝycia, zmiany koloru, itp. Symulacja tworzenie kolejnych etapów rozwoju systemu Rendering rysowanie cząsteczek
50 Systemy cząsteczkowe KaŜda cząsteczka posiada parametry, np. pozycja kierunek (algorytm + losowy) stan (np. rodzaj, aktywność) czas Ŝycia (po którym cząsteczka ginie) Sama cząsteczka jest najczęściej niewielką teksturą (sprite), nakładaną na obraz w obliczonej pozycji (nie na siatkę obiektu!). Odwzorowanie mgły Efekt mgły (fog) symuluje widoczność obiektów w naturze: bliŝsze obiekty są bardziej wyraźne dalsze obiekty są bardziej przysłonięte przez mgłę. Brak efektu mgły Symulacja mgły
51 Odwzorowanie mgły Metody symulacji mgły: Fog Table (Pixel Fog) starsza metoda, obliczenia wykonywane są dla kaŝdego piksela przy pomocy informacji o głębi piksela zapisanej w buforze. Jest to efekt dodatkowy, nakładany na wynik rasteryzacji. Fog Vertex efekt mgły obliczany jest dla kaŝdego wierzchołka wielokąta, a następnie aproksymowany dla pikseli wielokąta, po czym jest on uwzględniany przy ustalaniu barwy piksela. Ta metoda jest częścią renderingu. Oświetlenie wolumetryczne Volumetric lighting Algorytm umoŝliwiający uzyskanie efektu promieni światła prześwitujących np. przez chmury lub przez okno. Strumień światła ze źródła jest traktowany jako przezroczysty stoŝek, posiadający pewną objętość. Obiekty znajdujące się wewnątrz tego stoŝka (dym, chmury, para wodna) mają moŝliwość przepuszczania światła.
52 Okluzja otoczenia Okluzja otoczenia (ambient occlusion) - zaciemnienie obszarów w zagłębieniach, kątach oraz pod i pomiędzy powierzchniami. Inne efekty Caustic promienie światła odbite lub załamane przez zakrzywioną powierzchnię, np. światło na wodzie.
53 Inne efekty Subsurface scattering efekt promieni świetlnych, które wnikają do obiektu, odbijają się kilkakrotnie, po czym opuszczają obiekt. Metoda pozwala symulować wygląd np. skóry człowieka czy przedmiotów z marmuru. Inne efekty Lens flare zjawisko odbicia światła w systemie soczewek. Motion blur rozmycie obiektów szybko poruszających się Głębia ostrości (depth of field) rozmycie obiektów znajdujących się poza pierwszym planem
54 Anti-aliasing Przy rasteryzacji stosuje się często anti-aliasing, który wygładza ukośne linie. Przy rasteryzacji rozmywa się krawędzie wielokątów siatki. Anti-aliasing jest często dokonywany sprzętowo. Bibliografia Microsoft: Dokumentacja DirectX 9.c Frank D. Luna: Introduction to 3D Game Programming with DirectX 9.c A Shader Approach. Wordware Publishing, 26 Wendy Jones: Beginning DirectX. Premier Press, 24 Jeremy Birn: Cyfrowe oświetlenie i rendering. Helion 27 J. Foley, A. van Dam, S. Feiner, J. Hughes, R. Phillips: Wprowadzenie do grafiki komputerowej. WNT, 2 Wikipedia: Internet Materiały wyłącznie do uŝytku wewnętrznego dla studentów przedmiotu Synteza dźwięku i obrazu, prowadzonego przez Katedrę Systemów Multimedialnych Politechniki Gdańskiej. Wykorzystywanie do innych celów oraz publikowanie i rozpowszechnianie zabronione. This presentation is intended for internal use only, for students of Multimedia Systems Department, Gdansk University of Technology, attending the Sound and image synthesis course. Other uses, including publication and distribution, are strictly prohibited.
Efekty dodatkowe w rasteryzacji
Synteza i obróbka obrazu Efekty dodatkowe w rasteryzacji Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Efekty dodatkowe Cieniowanie i teksturowanie pozwala
Synteza i obróbka obrazu. Tekstury. Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych
Synteza i obróbka obrazu Tekstury Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Tekstura Tekstura (texture) obraz rastrowy (mapa bitowa, bitmap) nakładany na
Rendering obrazu 3D. Rendering. Synteza i obróbka obrazu
Synteza i obróbka obrazu Rendering obrazu 3D Rendering Proces tworzenia dwuwymiarowego obrazu (np. na ekranie) na podstawie trójwymiarowego opisu nazywa się renderingiem. Na podstawie informacji wejściowych:
Oświetlenie obiektów 3D
Synteza i obróbka obrazu Oświetlenie obiektów 3D Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Rasteryzacja Spłaszczony po rzutowaniu obraz siatek wielokątowych
Transformacje obiektów 3D
Synteza i obróbka obrazu Transformacje obiektów 3D Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Lokalny układ współrzędnych Tworząc model obiektu, zapisujemy
Grafika Komputerowa Wykład 5. Potok Renderowania Oświetlenie. mgr inż. Michał Chwesiuk 1/38
Wykład 5 Potok Renderowania Oświetlenie mgr inż. 1/38 Podejście śledzenia promieni (ang. ray tracing) stosuje się w grafice realistycznej. Śledzone są promienie przechodzące przez piksele obrazu wynikowego
GRK 4. dr Wojciech Palubicki
GRK 4 dr Wojciech Palubicki Uproszczony Potok Graficzny (Rendering) Model Matrix View Matrix Projection Matrix Viewport Transform Object Space World Space View Space Clip Space Screen Space Projection
Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania.
Oświetlenie. Modelowanie oświetlenia sceny 3D. Algorytmy cieniowania. Chcąc osiągnąć realizm renderowanego obrazu, należy rozwiązać problem świetlenia. Barwy, faktury i inne właściwości przedmiotów postrzegamy
Animowana grafika 3D. Opracowanie: J. Kęsik.
Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Powierzchnia obiektu 3D jest renderowana jako czarna jeżeli nie jest oświetlana żadnym światłem (wyjątkiem są obiekty samoświecące) Oświetlenie
Grafika Komputerowa Wykład 6. Teksturowanie. mgr inż. Michał Chwesiuk 1/23
Wykład 6 mgr inż. 1/23 jest to technika w grafice komputerowej, której celem jest zwiększenie szczegółowości renderowanych powierzchni za pomocą tekstur. jest to pewna funkcja (najczęściej w formie bitmapy)
Plan wykładu. Akcelerator 3D Potok graficzny
Plan wykładu Akcelerator 3D Potok graficzny Akcelerator 3D W 1996 r. opracowana została specjalna karta rozszerzeń o nazwie marketingowej Voodoo, którą z racji wspomagania procesu generowania grafiki 3D
Trójwymiarowa grafika komputerowa rzutowanie
Trójwymiarowa grafika komputerowa rzutowanie Mirosław Głowacki Wydział Inżynierii Metali i Informatyki Przemysłowej Rzutowanie w przestrzeni 3D etapy procesu rzutowania określenie rodzaju rzutu określenie
Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe
Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe Czym są tekstury? Tekstury są tablicowymi strukturami danych o wymiarze od 1 do 3, których elementami są tzw. teksele.
GRAKO: ŚWIATŁO I CIENIE. Modele barw. Trochę fizyki percepcji światła. OŚWIETLENIE: elementy istotne w projektowaniu
GRAKO: ŚWIATŁO I CIENIE Metody oświetlania Metody cieniowania Przykłady OŚWIETLENIE: elementy istotne w projektowaniu Rozumienie fizyki światła w realnym świecie Rozumienie procesu percepcji światła Opracowanie
Filtrowanie tekstur. Kinga Laurowska
Filtrowanie tekstur Kinga Laurowska Wprowadzenie Filtrowanie tekstur (inaczej wygładzanie) technika polegająca na 'rozmywaniu' sąsiadujących ze sobą tekseli (pikseli tekstury). Istnieje wiele metod filtrowania,
0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do
0. OpenGL ma układ współrzędnych taki, że oś y jest skierowana (względem monitora) a) w dół b) w górę c) w lewo d) w prawo e) w kierunku do obserwatora f) w kierunku od obserwatora 1. Obrót dookoła osi
Animowana grafika 3D. Opracowanie: J. Kęsik.
Animowana grafika 3D Opracowanie: J. Kęsik kesik@cs.pollub.pl Rzutowanie Równoległe Perspektywiczne Rzutowanie równoległe Rzutowanie równoległe jest powszechnie używane w rysunku technicznym - umożliwienie
Grafika Komputerowa Wykład 4. Synteza grafiki 3D. mgr inż. Michał Chwesiuk 1/30
Wykład 4 mgr inż. 1/30 Synteza grafiki polega na stworzeniu obrazu w oparciu o jego opis. Synteza obrazu w grafice komputerowej polega na wykorzystaniu algorytmów komputerowych do uzyskania obrazu cyfrowego
Architektura Komputerów
Studia Podyplomowe INFORMATYKA Techniki Architektura Komputerów multimedialne Wykład nr. 9 dr Artur Bartoszewski Rendering a Ray Tracing Ray tracing (dosłownie śledzenie promieni) to technika renderowania
Transformacje. dr Radosław Matusik. radmat
www.math.uni.lodz.pl/ radmat Cel wykładu Celem wykładu jest prezentacja m.in. przestrzeni modelu, świata, kamery oraz projekcji, a także omówienie sposobów oświetlania i cieniowania obiektów. Pierwsze
Model oświetlenia. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie
Model oświetlenia Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Obliczenie koloru powierzchni (ang. Lighting) Światło biegnie od źródła światła, odbija
Gry komputerowe: efekty specjalne cz. 2
1/43 Gry komputerowe: efekty specjalne cz. 2 Przygotowała: Anna Tomaszewska 2/43 Mapowanie środowiska - definicja aproksymacje odbić na powierzchnie prosto- i krzywoliniowej," oświetlanie sceny." obserwator
Architektura systemów komputerowych Ćwiczenie 3
Architektura systemów komputerowych Ćwiczenie 3 Komputer widziany oczami użytkownika Karta graficzna DirectX technologie łączenia kart 1 dr Artur Bartoszewski - Architektura systemów komputerowych - ćwiczenia
1. Prymitywy graficzne
1. Prymitywy graficzne Prymitywy graficzne są elementarnymi obiektami jakie potrafi bezpośrednio rysować, określony system graficzny (DirectX, OpenGL itp.) są to: punkty, listy linii, serie linii, listy
GRK 5. dr Wojciech Palubicki
GRK 5 dr Wojciech Palubicki Uproszczony Potok Graficzny (Rendering) Model Matrix View Matrix Projection Matrix Viewport Transform Object Space World Space View Space Clip Space Screen Space Projection
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Rendering Na przygotowane w fazie operacji geometrycznych złożone z trójkątów szkieletowe bryły akcelerator
Ćwiczenia nr 4. TEMATYKA: Rzutowanie
TEMATYKA: Rzutowanie Ćwiczenia nr 4 DEFINICJE: Rzut na prostą: rzutem na prostą l (zwaną rzutnią) w kierunku rzutowania k (k l) nazywamy przekształcenie płaszczyzny przyporządkowujące: a) Punktom prostej
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Obraz realistyczny Pojęcie obrazu realistycznego jest rozumiane w różny sposób Nie zawsze obraz realistyczny
Grafika komputerowa. Dr inż. Michał Kruk
Grafika komputerowa Dr inż. Michał Kruk Teksturowanie Pokrywanie powierzchni brył wzorami. Dla realizacji takich zadań w grafice najczęściej korzysta się z koncepcji teksturowania powierzchni. Ogólnie
Wykład 4. Rendering (1) Informacje podstawowe
Wykład 4. Rendering (1) Informacje podstawowe Z punktu widzenia dzisiejszego programowania gier: Direct3D jest najczęściej wykorzystywanym przez profesjonalnych deweloperów gier API graficznym na platformie
GRK 5. dr Wojciech Palubicki
GRK 5 dr Wojciech Palubicki Projekty (dwu-osobowe) Napisać symulacje lotu kosmicznego w OpenGLu: Korzystając tylko z bibliotek które na ćwiczeniach zostały omówione Interaktywna symulacja Wszystkie wielokąty
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Cieniowanie Bardzo ważnym elementem sceny jest oświetlenie. To właśnie odpowiednie dobranie oświetlenia sprawia,
Grafika komputerowa. Model oświetlenia. emisja światła przez źródła światła. interakcja światła z powierzchnią. absorbcja światła przez sensor
Model oświetlenia emisja światła przez źródła światła interakcja światła z powierzchnią absorbcja światła przez sensor Radiancja radiancja miara światła wychodzącego z powierzchni w danym kącie bryłowym
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Zagadnienia Jak rozumiemy fotorealizm w grafice komputerowej Historyczny rozwój kart graficznych Przekształcenia
Bartosz Bazyluk SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok
SYNTEZA GRAFIKI 3D Grafika realistyczna i czasu rzeczywistego. Pojęcie sceny i kamery. Grafika Komputerowa, Informatyka, I Rok Synteza grafiki 3D Pod pojęciem syntezy grafiki rozumiemy stworzenie grafiki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Cieniowanie Bardzo ważnym elementem sceny jest oświetlenie. To właśnie odpowiednie dobranie oświetlenia sprawia,
Grafika komputerowa Tekstury
. Tekstury Tekstury są dwuwymiarowymi obrazkami nakładanymi na obiekty lub ich części, w celu poprawienia realizmu rysowanych brył oraz dodatkowego określenia cech ich powierzchni np. przez nałożenie obrazka
GRAFIKA KOMPUTEROWA. Plan wykładu. 1. Początki grafiki komputerowej. 2. Grafika komputerowa a dziedziny pokrewne. 3. Omówienie programu przedmiotu
GRAFIKA KOMPUTEROWA 1. Układ przedmiotu semestr VI - 20000 semestr VII - 00200 Dr inż. Jacek Jarnicki Instytut Cybernetyki Technicznej p. 226 C-C 3, tel. 320-28-2323 jacek@ict.pwr.wroc.pl www.zsk.ict.pwr.wroc.pl
Grafika komputerowa Wykład 10 Modelowanie oświetlenia
Grafika komputerowa Wykład 10 Instytut Informatyki i Automatyki Państwowa Wyższa Szkoła Informatyki i Przedsiębiorczości w Łomży 2 0 0 9 Spis treści Spis treści 1 2 3 Spis treści Spis treści 1 2 3 Spis
Obraz jako funkcja Przekształcenia geometryczne
Cyfrowe przetwarzanie obrazów I Obraz jako funkcja Przekształcenia geometryczne dr. inż Robert Kazała Definicja obrazu Obraz dwuwymiarowa funkcja intensywności światła f(x,y); wartość f w przestrzennych
Zjawisko widzenia obrazów
Zjawisko widzenia obrazów emisja światła przez źródła światła interakcja światła z powierzchnią absorbcja światła przez sensor Źródła światła światło energia elektromagnetyczna podróżująca w przestrzeni
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Zagadnienia Jak rozumiemy fotorealizm w grafice komputerowej Historyczny rozwój kart graficznych Przekształcenia
Podstawy grafiki komputerowej
Podstawy grafiki komputerowej Krzysztof Gracki K.Gracki@ii.pw.edu.pl tel. (22) 6605031 Instytut Informatyki Politechniki Warszawskiej 2 Sprawy organizacyjne Krzysztof Gracki k.gracki@ii.pw.edu.pl tel.
Analiza obrazów - sprawozdanie nr 2
Analiza obrazów - sprawozdanie nr 2 Filtracja obrazów Filtracja obrazu polega na obliczeniu wartości każdego z punktów obrazu na podstawie punktów z jego otoczenia. Każdy sąsiedni piksel ma wagę, która
Teksturowanie (ang. texture mapping)
Teksturowanie (ang. texture mapping) Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny Tekstura Funkcja modyfikująca wygląd powierzchni. Ta funkcja może być reprezentowana
RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski
RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Rendering cieni wprowadzenie Cienie w grafice komputerowej Rendering off-line i rendering w czasie rzeczywistym Cienie rozmyte i ostre Mapy
Karty graficzne możemy podzielić na:
KARTY GRAFICZNE Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych
1. Podstawowe algorytmy techniki rastrowe a) dwa przecinające się odcinki mogą nie mieć wspólnego piksela (T) b) odcinek o współrzędnych końcowych (2,0), (5,6) narysowany przy wykorzystaniu algorytmu Bresenhama
Grafika Komputerowa. Wykład 8. Przygotowanie do egzaminu. mgr inż. Michał Chwesiuk 1/32
Grafika Komputerowa Wykład 8 Przygotowanie do egzaminu mgr inż. 1/32 Obraz Grafika Rastrowa Grafika Wektorowa Obraz przechowywany w pamięci w postaci próbki opisane za pomocą macierzy pikseli Każdy piksel
RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski
RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Mapowanie nierówności wprowadzenie Poziomy szczegółowości Cieniowanie w układzie stycznym Generacja wektorów normalnych i stycznych Mapy
2 Przygotował: mgr inż. Maciej Lasota
Laboratorium nr 2 1/6 Grafika Komputerowa 3D Instrukcja laboratoryjna Temat: Manipulowanie przestrzenią 2 Przygotował: mgr inż. Maciej Lasota 1) Manipulowanie przestrzenią Istnieją dwa typy układów współrzędnych:
RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski
RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Obiekty półprzeźroczyste wprowadzenie Test alfa, odrzucanie Mieszanie alfa Obiekty naklejane, ang. decals Konwersja próbki punktowe obraz
Scena 3D. Cieniowanie (ang. Shading) Scena 3D - Materia" Obliczenie koloru powierzchni (ang. Lighting)
Zbiór trójwymiarowych danych wej$ciowych wykorzystywanych do wygenerowania obrazu wyj$ciowego 2D. Cieniowanie (ang. Shading) Rados"aw Mantiuk Wydzia" Informatyki Zachodniopomorski Uniwersytet Technologiczny
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Zagadnienia Jak rozumiemy fotorealizm w grafice komputerowej Historyczny rozwój kart graficznych Przekształcenia
Z ostatniego wzoru i zależności (3.20) można obliczyć n6. Otrzymujemy (3.23) 3.5. Transformacje geometryczne
46 III. Przekształcenia w przestrzeni trójwymiarowej Z ostatniego wzoru i zależności (3.20) można obliczyć n6. Otrzymujemy (3.23) 3.5. Transformacje geometryczne Złożone obiekty trójwymiarowe można uważać,
Ustawienia materiałów i tekstur w programie KD Max. MTPARTNER S.C.
Ustawienia materiałów i tekstur w programie KD Max. 1. Dwa tryby własności materiału Materiał możemy ustawić w dwóch trybach: czysty kolor tekstura 2 2. Podstawowe parametry materiału 2.1 Większość właściwości
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu. Mirosław Głowacki
Wybrane aspekty teorii grafiki komputerowej - dążenie do wizualnego realizmu Mirosław Głowacki Ustawianie geometrii bryły widzenia Rozpoczynając generowanie trójwymiarowej sceny niezbędne jest utworzenie
Architektura Procesorów Graficznych
Architektura Procesorów Graficznych Referat: Rendering 3D: potok 3D, możliwości wsparcia sprzętowego, możliwości przyspieszenia obliczeń. Grupa wyrównawcza Cezary Sosnowski 1. Renderowanie Renderowanie
Przetwarzanie obrazów rastrowych macierzą konwolucji
Przetwarzanie obrazów rastrowych macierzą konwolucji 1 Wstęp Obrazy rastrowe są na ogół reprezentowane w dwuwymiarowych tablicach złożonych z pikseli, reprezentowanych przez liczby określające ich jasność
Modelowanie i wstęp do druku 3D Wykład 1. Robert Banasiak
Modelowanie i wstęp do druku 3D Wykład 1 Robert Banasiak Od modelu 3D do wydruku 3D Typowa droga...czasem wyboista... Pomysł!! Modeler 3D Przygotowanie modelu do druku Konfiguracja Programu do drukowania
Załącznik KARTA PRZEDMIOTU. KARTA PRZEDMIOTU Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 KOMPUTEROWA
1/1 Wydział Automatyki, Elektroniki i Informatyki, Rok akademicki: 2009/2010 Nazwa przedmiotu: Kierunek: Specjalność: Tryb studiów: GRAFIKA KOMPUTEROWA INFORMATYKA Kod/nr GK PRZEDMIOT OBOWIĄZKOWY DLA WSZYSTKICH
Obrót wokół początku układu współrzędnych o kąt φ można wyrazić w postaci macierzowej następująco
Transformacje na płaszczyźnie Przesunięcie Przesunięcie (translacja) obrazu realizowana jest przez dodanie stałej do każdej współrzędnej, co w postaci macierzowej można przedstawić równaniem y'] = [ x
Autodesk 3D Studio MAX Teksturowanie modeli 3D
Autodesk 3D Studio MAX Teksturowanie modeli 3D dr inż. Andrzej Czajkowski Instyt Sterowania i Systemów Informatycznych Wydział Informatyki, Elektrotechniki i Automatyki 25 kwietnia 2017 1 / 20 Plan Wykładu
Cieniowanie. Mirosław Głowacki
Cieniowanie Mirosław Głowacki Jasnym jest, że możemy pocieniować dowolną powierzchnię obliczając normalną do powierzchni w każdym widocznym punkcie i stosując odpowiedni model oświetlenia w tym punkcie.
Kalibracja kamery. Kalibracja kamery
Cel kalibracji Celem kalibracji jest wyznaczenie parametrów określających zaleŝności między układem podstawowym a układem związanym z kamerą, które występują łącznie z transformacją perspektywy oraz parametrów
Synteza i obróbka obrazu. Algorytmy oświetlenia globalnego
Synteza i obróbka obrazu Algorytmy oświetlenia globalnego Algorytmy oświetlenia Algorytmy oświetlenia bezpośredniego (direct illumination) tylko światło poadające bezpośrednio na obiekty, mniejszy realizm,
HDR. Obrazy o rozszerzonym zakresie dynamiki
Synteza i obróbka obrazu HDR Obrazy o rozszerzonym zakresie dynamiki Dynamika obrazu Zakres dynamiki (dynamicrange) to różnica między najciemniejszymi i najjaśniejszymi elementami obrazu. W fotografice
GRK 2. dr Wojciech Palubicki
GRK dr Wojciech Palubicki Macierz wektor produkt jako Transformacja T: R n R m T Ԧx = A Ԧx Przemieszczanie wierzchołków - Transformacje Skalowanie Rotacja Translacja -y -y Macierz rotacji M wobec punktu
a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna?
1. Oświetlenie lokalne a. Czym różni się sposób liczenia odbicia zwierciadlanego zaproponowany przez Phonga od zaproponowanego przez Blinna? b. Co reprezentują argumenty i wartość funkcji BRDF? Na czym
Interferencja. Dyfrakcja.
Interferencja. Dyfrakcja. Wykład 8 Wrocław University of Technology 05-05-0 Światło jako fala Zasada Huygensa: Wszystkie punkty czoła fali zachowują się jak punktowe źródła elementarnych kulistych fal
Synteza i obróbka obrazu HDR. Obrazy o rozszerzonym zakresie dynamiki
Synteza i obróbka obrazu HDR Obrazy o rozszerzonym zakresie dynamiki Dynamika obrazu Zakres dynamiki (dynamicrange) to różnica między najciemniejszymi i najjaśniejszymi elementami obrazu. W fotografii
Techniki animacji komputerowej
Techniki animacji komputerowej 1 Animacja filmowa Pojęcie animacji pochodzi od ożywiania i ruchu. Animować oznacza dawać czemuś życie. Słowem animacja określa się czasami film animowany jako taki. Animacja
Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest
KARTA GRAFICZNA Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest odbiór i przetwarzanie otrzymywanych od komputera
1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu
1. Czym jest rendering? a. Komputerowa analiza modelu danej sceny i utworzenie na jej podstawie obrazu 2D. b. Funkcja umożliwiająca kopiowanie obrazu pomiędzy warstwami. c. Sposób tworzenia modeli 2D d.
Skrócona instrukcja obsługi darmowego programu do grafiki 3D. Anim8or. Wykonał: Rafał Wojszczyk
Skrócona instrukcja obsługi darmowego programu do grafiki 3D Anim8or Wykonał: Rafał Wojszczyk 1 Spis treści I. Wstęp... 3 Autor programu... 3 Licencja FreeWare... 3 II. Opis menu... 4 Okno główne programu...
RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski
RENDERING W CZASIE RZECZYWISTYM Michał Radziszewski Plan wykładu Opóźnione cieniowanie wprowadzenie Koszt obliczeniowy cieniowania Cieniowanie jedno- i wieloprzebiegowe Cieniowanie opóźnione Schemat opóźnionego
Jak tworzyć dobre wizualizacje? Porady do wykorzystania w programie KD Max. MTpartner s.c.
Jak tworzyć dobre wizualizacje? Porady do wykorzystania w programie KD Max MTpartner s.c. 1. Ustawienie widoku 1.1 Zasada mocnych punktów. Jeśli poprowadzimy 2 linie dzielące obraz w pionie na 3 równe
Przykładowe pytania na teście teoretycznym
Przykładowe pytania na teście teoretycznym Przedmiot: Informatyka I Rok akademicki: 2014/2015 Semestr : zimowy Studia: I / Z W grafice wektorowej obraz reprezentowany jest: przez piksele przez obiekty
Śledzenie promieni w grafice komputerowej
Dariusz Sawicki Śledzenie promieni w grafice komputerowej Warszawa 2011 Spis treści Rozdział 1. Wprowadzenie....... 6 1.1. Śledzenie promieni a grafika realistyczna... 6 1.2. Krótka historia śledzenia
WSTĘP DO GRAFIKI KOMPUTEROWEJ
WSTĘP DO GRAFIKI KOMPUTEROWEJ Miłosz Michalski Institute of Physics Nicolaus Copernicus University Październik 2015 1 / 15 Plan wykładu Światło, kolor, zmysł wzroku. Obraz: fotgrafia, grafika cyfrowa,
Zaawansowana Grafika Komputerowa
Zaawansowana Komputerowa Michał Chwesiuk Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Wydział Informatyki 28 Luty 2017 Michał Chwesiuk Zaawansowana Komputerowa 28 Luty 2017 1/11 O mnie inż.
Przekształcenia geometryczne w grafice komputerowej. Marek Badura
Przekształcenia geometryczne w grafice komputerowej Marek Badura PRZEKSZTAŁCENIA GEOMETRYCZNE W GRAFICE KOMPUTEROWEJ Przedstawimy podstawowe przekształcenia geometryczne na płaszczyźnie R 2 (przestrzeń
Grafika realistyczna. Oświetlenie globalne ang. global illumination. Radosław Mantiuk
Oświetlenie globalne ang. global illumination Radosław Mantiuk Generowanie obrazów z uwzględnieniem oświetlenia globalnego Cel oświetlenia globalnego obliczenie drogi promieni światła od źródeł światła
Grafika 3D program POV-Ray - 1 -
Temat 1: Ogólne informacje o programie POV-Ray. Interfejs programu. Ustawienie kamery i świateł. Podstawowe obiekty 3D, ich położenie, kolory i tekstura oraz przezroczystość. Skrót POV-Ray to rozwinięcie
RYSUNEK TECHNICZNY BUDOWLANY RZUTOWANIE PROSTOKĄTNE
RYSUNEK TECHNICZNY BUDOWLANY MOJE DANE dr inż. Sebastian Olesiak Katedra Geomechaniki, Budownictwa i Geotechniki Pokój 309, pawilon A-1 (poddasze) e-mail: olesiak@agh.edu.pl WWW http://home.agh.edu.pl/olesiak
OpenGL Światło (cieniowanie)
OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);
WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ
WPROWADZENIE DO GRAFIKI KOMPUTEROWEJ Dr inż.. Jacek Jarnicki Doc. PWr. Instytut Cybernetyki Technicznej p. 226 C-C 3, tel. 320-28-2323 jacek@ict.pwr.wroc.pl www.zsk.ict.pwr.wroc.pl 1. Układ przedmiotu
OpenGL i wprowadzenie do programowania gier
OpenGL i wprowadzenie do programowania gier Wojciech Sterna Bartosz Chodorowski OpenGL i wprowadzenie do programowania gier Autorstwo rozdziałów: 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 Wojciech Sterna
Grafika komputerowa Wykład 4 Geometria przestrzenna
Grafika komputerowa Wykład 4 Geometria przestrzenna Instytut Informatyki i Automatyki Państwowa Wyższa Szkoła Informatyki i Przedsiębiorczości w Łomży 2 0 0 9 Spis treści Spis treści 1 Geometria 3D - podstawowe
Julia 4D - raytracing
i przykładowa implementacja w asemblerze Politechnika Śląska Instytut Informatyki 27 sierpnia 2009 A teraz... 1 Fraktale Julia Przykłady Wstęp teoretyczny Rendering za pomocą śledzenia promieni 2 Implementacja
OpenGL Światło (cieniowanie)
OpenGL Światło (cieniowanie) 1. Oświetlenie włączanie/wyłączanie glenable(gl_lighting); - włączenie mechanizmu oświetlenia gldisable(gl_lighting); - wyłączenie mechanizmu oświetlenia glenable(gl_light0);
GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza i obróbka obrazu
Synteza i obróbka obrazu GRAFIKA KOMPUTEROWA Rozwiązania sprzętowe i programowe Przyspieszanie sprzętowe Generowanie obrazu 3D wymaga złożonych obliczeń, szczególnie jeżeli chodzi o generowanie płynnej
Algorytmy oświetlenia globalnego
Synteza i obróbka obrazu Algorytmy oświetlenia globalnego Opracowanie: dr inż. Grzegorz Szwoch Politechnika Gdańska Katedra Systemów Multimedialnych Algorytmy oświetlenia Algorytmy oświetlenia bezpośredniego
gdzie (4.20) (4.21) 4.3. Rzut równoległy
4.3. Rzut równoległy 75 gdzie (4.20) Punkt zbiegu, określony wzorami (4.19) (4.20), leży na prostej przechodzącej przez środek rzutowania i równoległej do wektora u. Zauważmy, że gdy wektor u jest równoległy
Grafika komputerowa i wizualizacja
Grafika komputerowa i wizualizacja Radosław Mantiuk ( rmantiuk@wi.zut.edu.pl, p. 315 WI2) http://rmantiuk.zut.edu.pl Katedra Systemów Multimedialnych Wydział Informatyki, Zachodniopomorski Uniwersytet
Grafika komputerowa. Zajęcia IX
Grafika komputerowa Zajęcia IX Ćwiczenie 1 Usuwanie efektu czerwonych oczu Celem ćwiczenia jest usunięcie efektu czerwonych oczu u osób występujących na zdjęciu tak, aby plik wynikowy wyglądał jak wzor_1.jpg
Zamiana reprezentacji wektorowej na rastrową - rasteryzacja
MODEL RASTROWY Siatka kwadratów lub prostokątów stanowi elementy rastra. Piksel - pojedynczy element jest najmniejszą rozróŝnialną jednostką powierzchniową, której własności są opisane atrybutami. Model
Obraz cyfrowy. Radosław Mantiuk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie
Obraz cyfrowy Radosław Mantiuk Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Obraz Funkcja dwuwymiarowa. Wartością tej funkcji w dowolnym punkcie jest kolor (jasność). Obraz
Architektura Komputerów
Architektura systemów Architektura Komputerów komputerowych Wykład nr. 9 dr Artur Bartoszewski Grafika 3D Grafika 3D Obiekty 3D istnieją w matematycznie opisanej wirtualnej przestrzeni za ekranem. Ekran
Aleksandra Zając. Raport. Blender. Pokemon: Eevee
Aleksandra Zając Raport Blender Pokemon: Eevee 1. Modelowanie Przed rozpoczęciem modelowania do Blendera załadowałam obraz przedstawiający wybranego pokemona, aby podczas modelowania jak najlepiej odwzorować