Post on 28-Feb-2019
Plan
� Grafika rastrowa / wektorowa� Rozdzielczość obrazu � Barwy� Barwy� Grafika 3D
� Modelowanie i renderowanie obiektów
� Animacja komputerowa� Dwuwymiarowa / trójwymiarowa� Techniki
Definicja
� Grafika komputerowa – dział informatyki zajmujący się wykorzystaniem komputerów do generowania obrazów oraz generowania obrazów oraz wizualizacją rzeczywistych danych.
Klasyfikacja
� Kryterium: technika tworzenia obrazów/ reprezentacja danych� Grafika rastrowaGrafika rastrowa� Grafika wektorowa
Grafika rastrowa� Obraz zapisywany jest w postaci
dwuwymiarowej tablicy pikseli (bitmapie), którym przypisywane są odpowiednie kolorykolory
b - białyz – zielonyc - czerwony
10 10 b b z b b b b b b b c c c z c ...
Grafika wektorowa� Obraz opisywany za pomocą figur
geometrycznych (ciągu matematycznych wzorów)
P(0,1,4,6) c brakL(2,0,9,7) zE(4,5,5,5) n Ŝ
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć ( wraz z wzrostem liczby pikseli
mała zajętość pamięci (niezaleŜna od rozmiaru, funkcja ilości i złoŜoności wzrostem liczby pikseli
szybko rośnie wielkość plików)
funkcja ilości i złoŜoności opisu elementów składowych obrazu)
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji (płynne transformacje � trudna modyfikacja
(nie pozwala na dokonywanie transformacji geometrycznych na elementach składowych obrazu)
(płynne transformacje całości obrazu i jego elementów bez utraty jakości prezentacji)
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji (płynne transformacje
Źródł: http://pl.wikipedia.org/
� trudna modyfikacja (nie pozwala na dokonywanie transformacji geometrycznych na elementach składowych obrazu)
(płynne transformacje całości obrazu i jego elementów bez utraty jakości prezentacji)
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji� konieczność konwersji � trudna modyfikacja
dopasowanie do urządzeń wyjściowych
� konieczność konwersji do urządzeń wyjściowych (wyświetlacze rastrowe)
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji� konieczność konwersji � trudna modyfikacja
dopasowanie do urządzeń wyjściowych łatwość implementacji umoŜliwia uzyskanie duŜego realizmu kolorystycznego poprzez indywidualne określenie barwy kaŜdego elementu
� konieczność konwersji do urządzeń wyjściowych (wyświetlacze rastrowe)analityczny opis doskonale nadaje się do reprezentowania obrazów zawierających elementy strukturalne
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji� konieczność konwersji � trudna modyfikacja
dopasowanie do urządzeń wyjściowych łatwość implementacji
� konieczność konwersji do urządzeń wyjściowych (wyświetlacze rastrowe)analityczny opis
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji� konieczność konwersji � trudna modyfikacja
dopasowanie do urządzeń wyjściowych łatwość implementacji
� konieczność konwersji do urządzeń wyjściowych (wyświetlacze rastrowe)analityczny opis
PorównanieGrafika rastrowa Grafika wektorowa� duŜe zapotrzebowanie na pamięć� trudna modyfikacja
mała zajętość pamięci łatwość modyfikacji� konieczność konwersji � trudna modyfikacja
dopasowanie do urządzeń wyjściowych łatwość implementacji
� konieczność konwersji do urządzeń wyjściowych (wyświetlacze rastrowe)analityczny opis
Przykłady zastosowania
� Grafika wektorowa� Rysunek techniczny� Komputerowe wspomaganie � Komputerowe wspomaganie
projektowania (Computer Aided Design CAD)
Przykłady zastosowania� Grafika wektorowa
� Rysunek techniczny� Komputerowe wspomaganie projektowania
(Computer Aided Design CAD)(Computer Aided Design CAD)
Źródło: Z. Postawa – „Grafika Komputerowa”
Przykłady zastosowania
� Grafika wektorowa� Rysunek techniczny� Komputerowe wspomaganie � Komputerowe wspomaganie
projektowania (Computer Aided Design CAD)
� Programy rysujące wykresy� Animacje Macromedia Flesh (WWW)
Przykłady zastosowania
� Grafika rastrowa� Grafika fotorealistyczna� Telewizja cyfrowa i wideo� Telewizja cyfrowa i wideo� Internet� Fotografia cyfrowa� Cyfrowa obróbka obrazu
Rozdzielczość� Piksel – najmniejszy element
obrazu, któremu moŜna przyporządkować dowolny kolorPunkt –najmniejszy element obrazu � Punkt –najmniejszy element obrazu urządzenia wyjściowego (drukarki, naświetlarki etc.)
� 800x600 – rozdzielczość obrazu
Rozdzielczość� Piksel – najmniejszy element
obrazu, któremu moŜna przyporządkować dowolny kolorPunkt –najmniejszy element obrazu � Punkt –najmniejszy element obrazu urządzenia wyjściowego (drukarki, naświetlarki etc.)
� 800x600 – rozmiar obrazu
Rozdzielczość� Rozdzielczość najczęściej wyraŜamy w:
� dpi (dot per inch) liczba punktów na cal, wyraŜająca rozdzielczość urządzenia (skanera, drukarki).
� ppi (pixel per inch) liczba pikseli na cal, wyraŜająca rozdzielczość obrazu cyfrowego
� Drukarki i urządzenia naświetlające mają najczęściej ustaloną rozdzielczość.
� Rozdzielczość monitora zaleŜy od jego przekątnej oraz od ustawionych rozmiarów obrazu
Rozdzielczość monitora
� Rozdzielczość monitora zaleŜy od jego przekątnej oraz od ustawionych rozmiarów obrazu
Źródło: Jacek Tarasiuk - Wprowadzenie do grafiki komputerowej v.2006
Rozdzielczość� Rozdzielczość obrazu przeznaczonego do
wydruku� 1 cal = 2,54 cm� Przykład: � Przykład:
10x15 cm, 300 ppi3,937 x 5,906 cali1181 x 1772 pikseli
Źródło: Jacek Tarasiuk - Wprowadzenie do grafiki komputerowej v.2006
Rozdzielczość� Rozdzielczość obrazu przeznaczonego do
wyświetlania w przeglądarce internetowej� Rozdzielczość obrazu przeznaczonego do
wydrukuwydruku� 1 cal = 2,54 cm� Przykład:
10x15 cm, 300 ppi3,937 x 5,906 cali1181 x 1772 pikseli
72 ppi41,66 x 62,51 cm
Źródło: Jacek Tarasiuk - Wprowadzenie do grafiki komputerowej v.2006
Barwa
� Pojęcie barwy jest pojęciem subiektywnym. WraŜenie związane z odbiorem barwy jest zaleŜne (poza warunkami obserwacji) od warunkami obserwacji) od indywidualnych cech obserwatora. Z tego względu trudno jest opracować teorię jednolicie opisującą wszystkie zjawiska związane z pojęciem barwy
Modele Barw� Ukierunkowane na uŜytkownika –
HSV interaktywna metoda doboru odpowiedniej barwyodpowiedniej barwy
� Ukierunkowane na sprzęt - RGB, CMY, CMYK
� NiezaleŜne od urządzenia - CIE XYZ, CIE La*b*
HSV
� W modelu HSV kaŜdą barwę opisuje trójka liczb� Odcień (kolor, ton) – Hue - róŜnica Odcień (kolor, ton) – Hue - róŜnica
jakościowa barwy (np. czerwony, zielony) określana w fizyce przez dominującą długość fali.
� Nasycenie - Saturation
� Jaskrawość – Value / Brightness
Munsell model – koło kolorów
� Sposób reprezentacji przestrzeni kolorów
OdcieńOdcień
NasycenieJaskrawość
HSV� W modelu HSV kaŜdą barwę opisuje
trójka liczb� Odcień (kolor, ton) – Hue
Nasycenie - Saturation - KaŜda barwa moŜe � Nasycenie - Saturation - KaŜda barwa moŜe posiadać róŜny stopień nasycenia. Od zera, dla którego odnosimy jedynie wraŜenie jasności i nie potrafimy rozróŜnić koloru do jeden, gdy barwa jest w pełni nasycona (np. biel, róŜ, czerwień)
HSV
� W modelu HSV kaŜdą barwę opisuje trójka liczb� Odcień (kolor, ton) – HueOdcień (kolor, ton) – Hue
� Nasycenie - Saturation
� Jaskrawość – Value / Brightness -Stopień zawartości światła białego w danej barwie
Munsell model – koło kolorów
� Sposób reprezentacji przestrzeni kolorów
OdcieńOdcień
NasycenieJaskrawość
Modele Barw� Ukierunkowane na uŜytkownika –
HSV interaktywna metoda doboru odpowiedniej barwyodpowiedniej barwy
� Ukierunkowane na sprzęt- RGB, CMY, CMYK
� NiezaleŜne od urządzenia - CIE XYZ, CIE La*b*
RGB� W modelu RGB barwa przedstawiana jest
jako trójka liczb r, g i b. KaŜda liczba reprezentuje intensywność barwy składowejskładowej� czerwonej ( Red )� zielonej ( Green )� niebieskiej ( Blue )RBG(0,0,0) - czarnyRGB(1,1,1) – biały
� Model barw stosowany w monitorach ekranowych
CMY
� W modelu CMY barwa przedstawiana jest jako trójka liczb c, m i y. KaŜda liczba reprezentuje intensywność barwy:barwy:� seledynowy ( Cyan )� purpurowy ( Magenta )� Ŝółty ( Yellow )
CMYK
� PoniewaŜ w praktyce trudno jest otrzymać prawdziwie czarny kolor mieszając barwy podstawowe CMY często dodaje się dodatkowo kolor często dodaje się dodatkowo kolor czarny (blacK). Mówimy wówczas o modelu CMYK.
� Model barw stosowany w drukarkach, ploterach i poligrafii
CMY, CMYK
� CMY → CMYKk= min(c,m,y)CMYK(c-k,m-k,y-k,k)=CMY(c,m,y)CMYK(c-k,m-k,y-k,k)=CMY(c,m,y)
(
(
(
+
0.2
0.4
0.4
0.4
0.5
0.6
0.4
0.9
C M Y
)
)
)
(
(
(
+
0.2
0.4
0.5
0.2 0.5
C M Y
K
)
)
)0.4
Głębia kolorów� Głębokość bitowa - liczba bitów
przeznaczona do zapisu wartości barwy. Najczęściej spotykane ustawienia:� Najczęściej spotykane ustawienia:� Obraz czarno-biały (maks. 2 barwy).
Głębokość bitowa: 1 bit� Obraz w odcieniach szarości
(maks. 256 odcieni szarości). Głębokość bitowa: 1 bajt
Głębia kolorów – c.d.� Obraz kolorowy w 256 kolorach
(maks. 256 barw)Głębokość bitowa: 1 bajtKaŜdy bajt obrazu nie opisuje koloru tylko wskazuje na miejsce w tablicy kolorówwskazuje na miejsce w tablicy kolorów
ObrazTablica kolorów
Głębia kolorów – c.d.
� „Hi Color” ( maks. 23x5 lub 25+6+5 == 32 768 lub 65 536 )Głębokość bitowa: 15 lub 16 bitów
� „True Color”(maks. 23x8≈16milionów)
Głębokość bitowa: 24 bity
Zajętość pamięciowa obrazu
� (n×m) × głębokość bitowa barwy
Obraz True Color:Obraz True Color:1000x1000x24 bity = 24 000 000 B = 24000000/220 MB ≈ 22,888 MB
.JPG: 709,71 KB
Zajętość pamięciowa obrazu
� (n×m) × głębokość bitowa barwy
Obraz czarno-biały:Obraz czarno-biały:1000x1000 bity =1 000 000 B =1000000/1024 KB=976,5625 KB
Formaty zapisu grafiki
� Grafika rastrowa� BMP, GIF, PNG, PCX, JPG, TIFF...
� Grafika wektorowa� Grafika wektorowa� WMF, EPS, CDR, DXF...
Kanał alfa� MoŜe być podawany dla kaŜdego
piksela obrazu. Zawiera informacje o przezroczystości. Nakładanie częściowo � Nakładanie częściowo przezroczystego obrazu na tło:RGB(a�rT+(1-a)�rO , a�gT+(1-a)�gO , a�bT + (1-a)�bO ),a∈<0,1> - stopień przezroczystości
Kanał alfa
� RGB(0.2�200+0.8�100, 0.2�100+0.8�200,0.2�100+0.8�100)= RGB(40+80,20+160,20+80)=RGB(120,180,100)=RGB(120,180,100)
Grafika komputerowa-Klasyfikacja
� Kryterium: charakter danych� Grafika dwuwymiarowa (2D)� Grafika trójwymiarowa (3D)� Grafika trójwymiarowa (3D)
Grafika dwuwymiarowa� Grafika 2D moŜe zawierać w sobie
� modele geometryczne (grafikę wektorową),� obrazy cyfrowe (grafikę rastrową), � tekst (zdefiniowany przez styl i rozmiar � tekst (zdefiniowany przez styl i rozmiar
czcionki, kolor, pozycję, i orientację), � funkcje i równania matematyczne.
� Składowe te mogą być modyfikowane i manipulowane przez dwuwymiarowe transformacje geometryczne takie jak translacja, rotacja, skalowanie.
Grafika trójwymiarowa
� Obiekty obrazu są umieszczone w przestrzeni trójwymiarowej i celem programu komputerowego jest przede wszystkim przedstawienie przede wszystkim przedstawienie trójwymiarowego świata na dwuwymiarowym obrazie.
Grafika 3D� Modelowanie – tworzony jest opis sceny
3D - kształtu i wyglądu obiektów, połoŜenia i charakterystyk źródeł światła,... światła,...
� Renderowanie (rendering) – tworzenie dwuwymiarowego obrazu na podstawie modelu 3D.
Reprezentacja obiektów 3D
� Chmura punktów – niestrukturalny zbiór punktów o współrzędnych (x,y,z) otrzymanych z systemów akwizycji obiektów 3Dakwizycji obiektów 3D
� Powierzchnie 3D� Bryły
Reprezentacja obiektów 3D� Chmura punktów� Powierzchnie 3D – opis
powierzchni obiektów 3DBryły� Bryły
Siatka wielokątowa� Siatka wielokątowa / siatka wielokątów (mesh)
Zbiór wierzchołków (vertex / vertices), krawędzi (edge) i wielokątów (polygon, face) tak połączonych, Ŝe� kaŜda krawędź jest wspólna przynajmniej dla dwóch � kaŜda krawędź jest wspólna przynajmniej dla dwóch
wielokątów� krawędź łączy dwa wierzchołki� wielokąt jest zamkniętą sekwencją krawędzi� wierzchołek jest wspólny dla przynajmniej dwóch
krawędzi� kaŜda krawędź jest częścią jakiegoś wielokąta
Najczęściej siatka składa się z trójkątów (łatwość przekształceń).
BryłyNajczęstsze reprezentacje:� z przesuwaniem lub obrotem� brzegowa� brzegowa� z podziałem przestrzennym
� dekompozycja na komórki� wokselowa� drzewa ósemkowe
� konstruktywna geometria brył (CSG)
Bryły przesuwane i obrotoweModelowanie prostych, symetrycznych brył� Bryły przesuwane („wyciągane”)
– przesuwanie płaskiego obiektu wzdłuŜ trajektorii w przestrzenitrajektorii w przestrzeni
� bryły obrotowe – obracanie płaskiego wzorca wokół osi
� Np. z prostokąta moŜna uzyskać:� bryłę przesuwaną
– prostopadłościan� bryłę obrotową
– walec
Reprezentacja brzegowa brył (b-rep)� Prosta metoda reprezentacji brył.� Opisuje bryłę za pomocą:
� powierzchni ograniczających� wierzchołków� wierzchołków� krawędzi� ścian
� Stosowana jest np. przy tworzeniu brył złoŜonych z wielościanów.
� Powierzchnie mogąbyć krzywoliniowe.
Reprezentacje z podziałem przestrzennym
Reprezentacja bryły za pomocą jej podziału na mniejsze bryły składowe.
� Dekompozycja na komórki� Reprezentacja wokselowa� Drzewa ósemkowe
Dekompozycja na komórki
� Podział bryły na „prymitywy” –proste bryły róŜnego typu składane na zasadzie sklejania
Reprezentacja wokselowa� Podział bryły na „woksele” – identyczne
elementy przestrzeni (najczęściej sześciany), uporządkowane wg stałej regularnej siatkiregularnej siatki
� Reprezentacja:woksel jest zajęty lub nie w kaŜdym miejscu siatki
Reprezentacja wokselowa�Łatwość kodowania obiektu�Nie ma miejsca na częściową zajętość –
wiele brył moŜe być tylko aproksymowanychaproksymowanych
�Woksele mogą być zmniejszane dla zwiększenia dokładności opisu
�Ograniczenie pamięciowe (do reprezentowania obiektu o rozdzielczości n wokseli w kaŜdym kierunku trzeba n3 wokseli )
Drzewa ósemkowe� Reprezentacja wokselowa jest
nadmiarowa. Konieczny jest opis wszystkich wokseli płaszczyzny. DuŜa zajętość pamięci.zajętość pamięci.
� Modyfikacja metody wokselowej –wykorzystanie drzew ósemkowych.
� Drzewa ósemkowe wywodzą się z drzew czwórkowych, słuŜących do kodowania obrazów na płaszczyźnie.
Drzewa czwórkowe� Podział obszaru płaszczyzny na 4
kwadranty.� Kodowanie kaŜdego kwadrantu:
czarny – cały kwadrant naleŜy do obiektu� czarny – cały kwadrant naleŜy do obiektu� biały – cały kwadrant nie naleŜy do obiektu� szary – kwadrant częściowo naleŜy do obiektu
� Kwadranty szare są rekurencyjnie dzielone i sprawdzane według tej samej metody.
Drzewa czwórkoweP
PPP P
E E P
EE FF
P P
E F FFEEF F
E E E P PE E PE P P
EEF F E F FF EEF F EE FF EEF E
Drzewa ósemkowe
� Przestrzeń jest dzielona na 8 sześcianów.
� Kodowanie sześcianów za pomocą � Kodowanie sześcianów za pomocą liczb.
� Metoda rekurencyjna, tak jak dla drzew czwórkowych.
Drzewa binarnego podziału przestrzeni (BSP)
� Dzielą rekurencyjnie przestrzeń na parę podprzestrzeni płaszczyzną o dowolnej orientacji i połoŜeniu
Konstruktywna geometria brył (CSG)� Reprezentacja w postaci drzewa� Liście drzewa - proste prymitywy –
elementarne bryły � Węzły drzewa - operatory boolowskie � Węzły drzewa - operatory boolowskie
(suma, iloczyn, róŜnica)oraz przekształcenia (przesunięcie, obrót, skalowanie)
� Uporządkowane krawędzie drzewa
Odwzorowanie szczegółów powierzchni� Odwzorowanie tekstury
- odwzorowanie szczegółów obiektu za pomocą nakładania tekstury na powierzchnie obiektu.powierzchnie obiektu.
� Tekstura – dwuwymiarowa mapa bitowa zawierająca pewien obraz.
� Teksel – kaŜdy piksel tekstury
Modelowanie� Pełny model trójwymiarowy zawiera
informację o:� Kształcie obiektu (zbiór werteksów)
Wyglądzie obiektu (kolor, tekstury)� Wyglądzie obiektu (kolor, tekstury)� PołoŜeniu i rodzaju źródeł światła� PołoŜeniu obserwatora (kamery)
Grafika 3D� Modelowanie – tworzony jest opis sceny
3D - kształtu i wyglądu obiektów, połoŜenia i charakterystyk źródeł światła, itp.itp.
� Renderowanie (rendering) – tworzenie dwuwymiarowego obrazu na podstawie modelu 3D.
Renderowanie� Na podstawie opisu sceny:
� Wyznaczenie widoku dla połoŜenia obserwatora
� Obcięcie widoku do wielkości obrazu� Obcięcie widoku do wielkości obrazu� Wyznaczenie powierzchni widocznych� Cieniowanie i teksturowanie obrazu
Model oświetlenia globalnego
� Wyznacza barwę piksela obrazu na podstawie promieni świetlnych:� bezpośrednio od źródeł światłabezpośrednio od źródeł światła� odbitych od powierzchni� przepuszczonych przez powierzchnie
przezroczyste i półprzezroczyste (załamanych)
Modelowanie oświetleniaŚwiatło otoczenia pada jednakowo na wszystkie powierzchnie ze wszystkich kierunków.
Obiekty oświetlane są jednolicie na całej powierzchni.
Modelowanie oświetlenia� Światło otoczenia.� Światło rozproszone.
Punktowe źródło światła – promienie rozchodzą się równomiernie we Punktowe źródło światła – promienie rozchodzą się równomiernie we wszystkich kierunkach z jednego punktu.Jasność obiektów w róŜnych punktach zaleŜy od kierunku padania promieni i odległości od źródła światła.
Światło otoczenia + światło rozproszone
światłootoczenia
światło rozproszone
światło otoczenia+światło rozproszone
Modelowanie oświetlenia� Światło otoczenia.� Światło rozproszone.� Odbicie zwierciadlane.� Odbicie zwierciadlane.
Odbicie zwierciadlane� Promienie światła padające na
powierzchnię błyszczącą powodują jej rozświetlenie:� zmianę jasności� zmianę jasności� zmianę barwy (zaleŜnie od barwy światła)
Cieniowanie� Ustalanie barwy obiektów na
podstawie:� Światła odbitego
Powierzchni obiektów� Powierzchni obiektów
� Szybkość – Jakość� Zastosowanie
Wyznaczaniapowierzchni widocznych
� Algorytm bufora głębokości (Z-Buffer)
� Metoda śledzenia promieni� Metoda śledzenia promieni� Algorytm malarski� Eliminacja tylnych ścian
Algorytm bufora głębokości� Potrzebne dwa obszary pamięci o takim
samym rozmiarze:� pamięć obrazu
–piksele-wartość barwy–piksele-wartość barwy� bufor z – wartość z
(głębokość) dla kaŜdegopiksela
� Działanie algorytmu polega na szukaniu największej wartości zidla kaŜdego punktu obrazu
Animacja� Szybka projekcja sekwencji
indywidualnych obrazów (klatek animacji) zmieniających się stopniowo z upływem czasu. czasu.
Obrazy wyświetlane najczęściej z szybkością: 24 lub 30 klatek na sekundę
Animacja komputerowa
� Generacja obrazów animacji odbywa się z wykorzystaniem specjalistycznego oprogramowania komputerowego, a ruch obiektów komputerowego, a ruch obiektów pomiędzy dwoma klatkami często oblicza się na podstawie matematycznych wzorów.
Animacja komputerowa� Oceniając technikę tworzenia animacji lub
aplikację trzeba uwzględnić� Szybkość generowania klatek (obrazów)
animacjianimacji� Łatwość kontrolowania wyglądu animacji� Wymagania w stosunku do animatora� MoŜliwość interaktywnego generowania
animacji� Zastosowanie określa wymagania (np.
róŜne dla gier i filmu)
Animacja komputerowa� Wspomaganie tradycyjnego procesu
tworzenia animacji – automatyczna generacja części klatek animacji
� Łączenie róŜnych warstw sceny� Łączenie róŜnych warstw sceny� Renderowanie obrazów w oparciu o
geometryczny opis sceny� Komputer dostarcza nowych zastosowań
dla animacji:� animacja w czasie rzeczywistym ( wirtualna
rzeczywistość, gry, interaktywne media)
Animowane obiekty� Swobodne, doskonale sztywne (ang. rigid)
- brak poruszających się części� Przegubowe (ang. articulated) – posiadają
części, pomiędzy którymi moŜliwy jest ruchczęści, pomiędzy którymi moŜliwy jest ruch� Deformowalne (ang. deformable) – np.
ubranie� Obiekty wykorzystujące prawa fizyki do
symulacji ruchu (ang. dynamics) � Systemy cząsteczkowe (ang. particle
system)� Behawioralne (ang. behavioral) – opis
zachowania
Animacja dwuwymiarowa
� Animacja sprite'ów (ang. sprite animation)
� Morphing� Morphing� Dodawanie i usuwanie obiektów
obrazów (klatek animacji)
Animacja sprite'ów� Sprite (dosł. duszek) – dwuwymiarowy
obrazek lub zbiór obrazków umieszczony na większej scenie, wywołujący wraŜenie ruchuruchu
Źródło: pl.wikipedia.org
Animacja sprite’ów� Zastosowanie
� Dwuwymiarowe gry, animacje (sprite sheet)
Źródło: http://www.spriters-resource.com
Animacja sprite’ów� Zastosowanie
� Dwuwymiarowe gry, animacje (sprite sheet)� Internet (strony www)� Trójwymiarowe gry (do przedstawienia ognia, � Trójwymiarowe gry (do przedstawienia ognia,
dymu, bardzo małych obiektów, małych roślin (np. źdźbło trawy)
� Efekty specjalne w filmie (ogień Balrog’a –Władca pierścieni)
� GUI – np. wskaźnik myszy
Animacja dwuwymiarowa
� Animacja sprite'ów (ang. sprite animation)
� Morphing� Morphing� Dodawanie i usuwanie obiektów
obrazów (klatek animacji)
Morphing
� Technologia przekształcania obrazu polegająca na płynnej zmianie jednego obrazu w inny.
� Kluczowe punkty początkowego i końcowego obrazu są ustawiane
Źródło: http://ictlab.tyict.vtc.edu.hk/~nelsonc/hcimc/Notes/
Animacja dwuwymiarowa
� Animacja sprite'ów (ang. sprite animation)
� Morphing� Morphing� Dodawanie i usuwanie obiektów
obrazów (klatek animacji)
Animacja trójwymiarowa Modelowanie� Pełny model trójwymiarowy zawiera
informację o:� Kształcie obiektu (zbiór wierzchołków)� Wyglądzie obiektu (kolor, tekstury)� Wyglądzie obiektu (kolor, tekstury)� PołoŜenie i orientacje obiektu� PołoŜeniu i rodzaju źródeł światła� PołoŜeniu obserwatora (kamery)
Źródło: pl.wikipedia.org
Animacja szkieletowa
� Szkielet – hierarchiczny system składający się z kości połączonych za pomocą stawów.Dla kaŜdej kości przechowywana Dla kaŜdej kości przechowywana jest transformacja kości w układzie współrzędnych wyznaczonym przez rodzica
Animacja szkieletowa
� Animacja szkieletowa - ruch jednej lub więcej kości modelu, czyli zmiana modelu, czyli zmiana jej transformacji
Animacja szkieletowa� Dla kaŜdej kości
przechowywana jest transformacja kości w układzie współrzędnych wyznaczonym przez rodzicawyznaczonym przez rodzica
� Relacje między wierzchołkami modelu a jego szkieletem są stałe i zaprojektowane przez grafikaPozycja kaŜdego wierzchołka modelu zaleŜy od co najmniej jednej kości szkieletu modelu.
Animacja szkieletowa� Zalety
� Animując niewielki zestaw punktów – kości poruszamy całym, nieraz bardzo złoŜonym modelemmodelem
� Oprócz warstwy szkieletu i siatki wielokątów stosuje się dodatkowe warstwy (np. mięśni/tkanki , ubrań, włosów, futra, zorientowanych prostopadłościanów ograniczających)
Animacja komputerowa� Podział
� Dwuwymiarowa � Trójwymiarowa
Techniki� Techniki� Technika klatek kluczowych� Systemy przechwytywania ruchu� Kinematyka� Dynamika� Animacja behawioralna
Technika klatek kluczowych� Tradycyjna metoda animacji
� Główny animator rysuje najwaŜniejsze sceny -klatki kluczowe (ang. keyframe)
� Asystenci domalowują klatki pośrednie (ang. � Asystenci domalowują klatki pośrednie (ang. tweens)
� Animacja komputerowa� Animator określa klatki kluczowe� Komputer (program) wylicza klatki pośrednie
Technika klatek kluczowych
� Klatki kluczowe
Źródło: http://ictlab.tyict.vtc.edu.hk/~nelsonc/hcimc/Notes/
Technika klatek kluczowych
� Klatki kluczowe
� Klatki pośrednie
Źródło: http://ictlab.tyict.vtc.edu.hk/~nelsonc/hcimc/Notes/
Technika klatek kluczowych
� Klatki kluczowe
� Klatki pośrednie
Źródło: http://ictlab.tyict.vtc.edu.hk/~nelsonc/hcimc/Notes/
Technika klatek kluczowych� Zalety
� Względnie łatwa w uŜyciu� Animator posiada nisko-poziomową kontrolę
Wady � Wady � śmudna i powolna� Animator – artysta� Trudno wykorzystać otrzymaną animację
ponownie lub poprawić� Interpolacja niezgodna z oczekiwaniami
Animacja komputerowa� Podział
� Dwuwymiarowa � Trójwymiarowa
Techniki� Techniki� Technika klatek kluczowych� Systemy przechwytywania ruchu� Kinematyka� Dynamika� Animacja behawioralna
Systemy przechwytywania ruchu (motion capture)� Rejestracja ruchu obiektu w oparciu o
czujniki, markery umieszczone na obiekcie
� Czujniki� Czujniki� Sensory
magnetyczne� Mechaniczne� Optyczne
Systemy przechwytywania ruchu� Zalety
� Realistyczna animacja
� WadyTrudne do wykorzystania do� Trudne do wykorzystania do• sytuacji zmienionych w niewielkim stopniu • innych obiektów
� Wykorzystywane technologie stawiają ograniczenia na ruch moŜliwy do wykonania
� Względnie drogie
Animacja komputerowa� Podział
� Dwuwymiarowa � Trójwymiarowa
Techniki� Techniki� Technika klatek kluczowych� Systemy przechwytywania ruchu� Kinematyka� Dynamika� Animacja behawioralna
Kinematyka� Opis ruchu abstrahuje od
działających sił i bezwładności ciał.� Określane są dla animowanych
obiektów:obiektów:� Pozycja � Szybkość� Przyspieszenie
� Odnosi się do obiektów przegubowych (ang. articulated )
Kinematyka odwrotnaSzukamy obrotów stawów obiektów wyŜej w hierarchii. Uwzględniamy ograniczenia nałoŜone na kąty obrotów stawówkąty obrotów stawów
Kinematyka odwrotnaSzukamy obrotów stawów obiektów wyŜej w hierarchii. Uwzględniamy ograniczenia nałoŜone na kąty obrotów stawówkąty obrotów stawóworaz kolizje.
Animacja komputerowa� Podział
� Dwuwymiarowa � Trójwymiarowa
Techniki� Techniki� Technika klatek kluczowych� Systemy przechwytywania ruchu� Kinematyka� Dynamika� Animacja behawioralna
Dynamika
Wykorzystuje się prawa fizyki.Ustala się takie wielkości jak:
waga, masa, bezwładność, waga, masa, bezwładność, elastyczność obiektu, grawitacja, tarcie, itd.
Dynamika� Zalety
� Względnie łatwo generować podobne ruchy� UmoŜliwia opisanie realistycznej, złoŜonej
animacjianimacji� UmoŜliwia generowanie odtwarzalnego ruchu
� Wady� Wymaga uwzględnienia wszystkich sił
działających na obiekt� Słaba kontrola animatora
Animacja komputerowa� Podział
� Dwuwymiarowa � Trójwymiarowa
Techniki� Techniki� Technika klatek kluczowych� Systemy przechwytywania ruchu� Kinematyka� Dynamika� Animacja behawioralna
Animacja behawioralna
Opis zachowania postaci wirtualnych uwzględnia:� Czynniki zewnętrzne Czynniki zewnętrzne � Stan wewnętrzny postaci� Cele postaci
Animacja behawioralnaTRex()
{
jeŜeli(widzisz_człowieka i człowiek_blisko)
zjedź_człowieka()
albo jeŜeli (widzisz_człowieka)albo jeŜeli (widzisz_człowieka)
goń_człowieka()
albo
szukaj_człowieka()
}