PIKSEL piksel - element obrazu raster - zbiór komórek pamięci, które mają być traktowane jako piksele rozdzielczość monitorów - n x m, gdzie n-liczba pikseli w linii oraz m-liczba linii obrazu pamięć obrazu potrzebna do zapisania mapy bitowej, wynosi (n x m)*b bitów, gdzie (n x m)-rozdzielczość monitora a b-głębokość bitowa, np.: 800*600*1 bitów = 60000B = 6000/1024kB = 58,6kB (obraz dwubarwny - Bitmapa) Parametry piksela: położenie - współrzędne (x, y) na ekranie wartość barwy - liczba całkowita reprezentująca barwę piksela głębokość bitowa - liczba bitów przeznaczona do zapisu wartości barwy Barwa światła: Światło białe składa się ze wszystkich długości fal elektromagnetycznych z zakresu widzialnego (700nm - 400nm), występujących w nim w pełnych ilościach. Barwa piksela: Grupa trzech plamek luminoforów emituje światło o barwach R, G, B. Barwa piksela jest mieszaniną tych barw. R, G, B - barwy addytywne Mieszanina addytywna RGB jest dodatnio ważoną sumą świateł R, G, B docierających bezpośrednio do oczu człowieka. Y(yellow) = R + G C(cyan) = G + B M(magenta) = R + B W(white) = R + G + B Obraz dwubarwny: 1. liczba możliwych do uzyskania kolorów: 2 2. wartość barwy: {0, 1} 3. głębokość bitowa: 1 Paleta barw: 1. liczba możliwych do uzyskania kolorów: wybrana z określonej gamy barw, np.: 28 = 256 2. wartość barwy: {0, 1, 2, ..., 255} 3. głębokość bitowa: 8 True Color: 1. liczba możliwych do uzyskania kolorów: 28x3 = 16 777 216 2. wartość barwy: {RGB}, gdzie RGB(0, 255) 3. głębokość bitowa: 24 Hi Color: 1. liczba możliwych do uzyskania kolorów: 215 lub 216 = 32 768 lub 65 536 2. wartość barwy: {RGB} - na każdą składową przeznacza się 8 bitów 3. głębokość bitowa: 15 lub 16 RENDERING rendering - proces przekształcający trójwymiarową scenę w dwuwymiarowy obraz. Dane dla potoku renderingu: - źródła światła (Light Source) - obiekty dynamiczne (Dynamic Object) - obiekty statyczne (Static Object) - punkt obserwacji (POV - Point Of View) Etapy potoku renderingu: - przekształcenia (kamery, parametry rzutowania i obcinania) - oświetlenie (źródła światła, materiały) - rasteryzacja (tekstury, przezroczystość) Obiekty: Każdy obiekt jest aproksymowany (przybliżany) zbiorem trójkątnych ścianek (Face). Każda ściana jest zdefiniowana przez uporządkowany zbiór wierzchołków (Vertex). Każdy wierzchołek jest zdefiniowany przez współrzędne X, Y, Z oraz wektor normalny. KARTA GRAFICZNA Wspomagane sprzętowo operacje graficzne: Operacje rasteryzacji wykonywane przez procesor podsystemu rasteryzachi (Raster Manager): Z - zasłanianie niewidocznych powierzchni metodą Z-bufora. Szukanie dla każdego piksela współrzędnej Z ścianki leżącej najbliżej rzutni G - cieniowanie trójkątów metodą Gourauda Etapy cieniowania kolejnej linii przeglądania: - interpolacja liniowa między kolorami wierzchołków 1, 2 oraz 1, 3. Otrzymujemy barwy odpowiednio na prawej i lewej krawędzi. - interpolacja liniowa na linii przeglądania między barwami na krawędziach DB - podwójne buforowanie obrazów (np. dla animacji) W danej chwili na ekranie wyświetlana jest zawartość pierwszego bufora, w drugim buforze renderowany jest następny obraz. Po zakończeniu rysowania bufory są przełączane i cykl rozpoczyna się od nowa. A - przezroczystość i kompoziting przy uwzględnieniu kanału alfa, tryb RGBA z głębokością bitową 32 Kanał Alfa: Pamięć związana z każdym pikselem, wykorzystywana do pamiętania wartości nieprzezroczystości (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ść (transparency): Kolor piksela: (RGB) = * (RGB)obiektu + (1 - ) * (RGB)tła - ułamkowa wartość nieprzezroczystości szkła/pleksi Składanie obrazów i kompoziting (compoziting): A over B = cA + (1 - A) cB A = 1 - dla domków A = 0 - dla tła obrazu A AA - usuwanie artefaktów (anti-aliasing) Schodkowa linia rysowana na urządzeniu o mniejszej lub większej rozdzielczości. Kolor piksela: (RGB) = * (RGB)linii + (1 - ) * (RGB)tła T - odwzorowanie tekstury na powierzchnie trójkątów OSWIETLENIE Typy źródeł światła: - źródło punktowe, np. żarówka (point light, omni) - źródło światła równoległego, np. słońce (directional light) - źródło reflektorowe (spot light) - światło otaczające (ambient light) Parametry źródeł światła: - kolor światła - Cźr - natężenie światła (multipler) - kźr - blaknięcie (attenuation) - półcienie Iźr = kźr * Cźr barwa światła = natężenie * kolor 2 fatt(d) = 1/(qd + 1d +c) Iźr = fatt(d) * kźr * Cźr Hotspot - "gorący punkt", czyli obszar o maksymalnym natężeniu światła Fallof Spot Light - obszar rozchodzenia się światła od wartości maksymalnej do całkowitego zaniku Oddziaływanie światła z materiałem: Kolor przedmiotu zależy od barwy światła, które na niego pada i zdolności odbijania, absorbowania i przepuszczania światła z określonych części widma. Ilość odbitego światła zależy od rodzaju powierzchni. Gładka, biała powierzchnia odbija więcej światła niż ciemna i szorstka. Komputer oblicza barwę w określonym punkcie obiektu na podstawie modelu oświetlenia - wzoru matematycznego opisującego sposób oddziaływania światła na obiekt. Modele oświetlenia: lokalne modele oświetlenia: - model Phonga - model Cooka - Torrance'a globalne modele oświetlenia: - metody śledzenia promieni - metody energetyczne - połączona metoda energetyczna i śledzenia promieni Lokalne modele oświetlenia biorą pod uwagę jeden punkt powierzchni i oświetlające go bezpośrednio źródła światła; światło bezpośrednie. Globalne modele oświetlenia biorą pod uwagę odbicia światła między powierzchniami sceny; światło pośrednie. Lokalny model oświetlenia Phonga: Postrzegana przez obserwatora barwa dowolnego punktu powierzchni obiektu jest sumą: - rozpraszania światła otaczającego - odbicia rozproszonego - odbicia zwierciadlanego - samoświecenia światło otaczające (ambient):I= Ia * ka I - obserwowany kolor obiektu Ia - światło źródła ka - współczynnik odbicia (ambient color) odbicie rozproszone (diffuse):I= Ij * kd * (N L) Ij - światło źródła kd - współczynnik odbicia (diffuse color) odbicie zwierciadlane (specular): I= Ij * (k * ks * cosn) Ij - światło źródła ks - kolor rozbłysku k - natężenie rozbłysku n - rozmiar rozbłysku Metody cieniowania ścianek: - cieniowanie płaskie - cieniowanie Gourauda - cieniowanie Phonga Rzutowanie w układzie obserwatora: Aby wykonać rzutowanie należy określić tzw. punkt widzenia: - położenie obserwatora (kamery) - kierunek, w którym patrzy obserwator - rozmiar płaszczyzny rzutowania Tworzenie obrazu monoskopowego. Tworzenie obrazu stereoskopowego. TEKSTURY