GKIW Moduł 10: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
Linia 1: | Linia 1: | ||
__TOC__ | |||
= Wykład = | |||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd1.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd1.png|thumb|500px]] | ||
Linia 13: | Linia 16: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd3.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd3.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Nakładanie tekstury jest jednym z najważniejszych zadań grafiki realistycznej. Pozwala zwiększyć stopień realizmu generowanych obrazów, dodając pewne cechy obiektom, które bez tego wyglądałyby nienaturalnie. Jednocześnie ponieważ jest to nakładanie – odwzorowanie obrazu na powierzchni materiału, to jest to technika szybsza i efektywniejsza niż realizacja rzeczywistego definiowania właściwości powierzchni obiektu. | ||
Nakładanie tekstury jest jednym z najważniejszych zadań grafiki realistycznej. Pozwala zwiększyć stopień realizmu generowanych obrazów, dodając pewne cechy obiektom, które bez tego wyglądałyby nienaturalnie. Jednocześnie ponieważ jest to nakładanie – odwzorowanie obrazu na powierzchni materiału, to jest to technika szybsza i efektywniejsza niż realizacja rzeczywistego definiowania właściwości powierzchni obiektu. | |||
Przedstawione zastosowania pokazują możliwości jakie daje tekstura. Nie jest to tylko nałożenie obrazu – zdjęcia, ale może to być także zmiana pewnych postrzeganych właściwości materiałowych. Możliwa jest także zmiana pewnych cech związanych z otoczeniem – tekstura jest także stosowana do przyspieszenia lub uproszczenia wyznaczania oświetlenia. | Przedstawione zastosowania pokazują możliwości jakie daje tekstura. Nie jest to tylko nałożenie obrazu – zdjęcia, ale może to być także zmiana pewnych postrzeganych właściwości materiałowych. Możliwa jest także zmiana pewnych cech związanych z otoczeniem – tekstura jest także stosowana do przyspieszenia lub uproszczenia wyznaczania oświetlenia. | ||
Linia 32: | Linia 33: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd4.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd4.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Pierwszym problemem jaki pojawia się przy odwzorowaniu tekstur jest pozyskiwanie tekstur. Znane są „banki” tekstur w Internecie zawierające wzory o różnej rozdzielczości i jakości (a także różnej cenie). Można także pokazać metody generowania wzorów. | ||
Pierwszym problemem jaki pojawia się przy odwzorowaniu tekstur jest pozyskiwanie tekstur. Znane są „banki” tekstur w Internecie zawierające wzory o różnej rozdzielczości i jakości (a także różnej cenie). Można także pokazać metody generowania wzorów. | |||
Odwzorowanie geometryczne jest operacją, która musi zapewnić możliwość nałożenia wzorca na powierzchnię, w taki sposób żeby nie stracić jakości wzorca. | Odwzorowanie geometryczne jest operacją, która musi zapewnić możliwość nałożenia wzorca na powierzchnię, w taki sposób żeby nie stracić jakości wzorca. | ||
Linia 45: | Linia 44: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd5.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd5.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Tekstury dwuwymiarowe w postaci prostokątnego wzoru są najczęściej spotykane. Również właściwości trójwymiarowe materiałów spotykane są w postaci zestawów dwuwymiarowych wzorców – na przykład przecięć pod różnymi kątami. | ||
Tekstury dwuwymiarowe w postaci prostokątnego wzoru są najczęściej spotykane. Również właściwości trójwymiarowe materiałów spotykane są w postaci zestawów dwuwymiarowych wzorców – na przykład przecięć pod różnymi kątami. | |||
|} | |} | ||
Linia 54: | Linia 51: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd6.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd6.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Opis proceduralny pozwala generować tekstury za pomocą odpowiednio dobranych funkcji matematycznych lub zestawu parametrów dla wybranej klasy funkcji. | ||
Opis proceduralny pozwala generować tekstury za pomocą odpowiednio dobranych funkcji matematycznych lub zestawu parametrów dla wybranej klasy funkcji. | |||
Tablicowanie parametrów tekstury daje gotowy zestaw wartości dla realizacji obrazowania. Stosując opis proceduralny można dostosować wybrany podzbiór dziedziny dla konkretnego rozwiązania. Jest to bardzo istotne, gdyż gęstość próbkowania daje z jednej strony określony poziom szczegółów, a z drugiej strony zapewnia możliwość minimalizacji zniekształceń związanych z nakładaniem próbkowanego obrazu. Parametry tablicowane są realizacją funkcyjną dla określonej gęstości próbkowania. Ponieważ parametr ten nie może być zmieniany w trakcie odwzorowania, stosuje się zestawy takiej samej tekstury tablicowane dla różnej gęstości próbkowania. | Tablicowanie parametrów tekstury daje gotowy zestaw wartości dla realizacji obrazowania. Stosując opis proceduralny można dostosować wybrany podzbiór dziedziny dla konkretnego rozwiązania. Jest to bardzo istotne, gdyż gęstość próbkowania daje z jednej strony określony poziom szczegółów, a z drugiej strony zapewnia możliwość minimalizacji zniekształceń związanych z nakładaniem próbkowanego obrazu. Parametry tablicowane są realizacją funkcyjną dla określonej gęstości próbkowania. Ponieważ parametr ten nie może być zmieniany w trakcie odwzorowania, stosuje się zestawy takiej samej tekstury tablicowane dla różnej gęstości próbkowania. | ||
Linia 68: | Linia 63: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd7.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd7.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Modele deterministyczne można podzielić na cztery grupy.: | ||
Modele deterministyczne można podzielić na cztery grupy.: | |||
Modele okresowe, w których wzorzec jest nakładany na przestrzeń tekstury w ramach siatki. Okna siatki odpowiadają rozmiarom wzorca. Wzorzec może być powielony na wszystkie okna siatki lub tylko na ich część. Źródłem wzorca mogą być obiekty naturalne (skanowane, fotografowane) lub wygenerowane obrazy (edytory graficzne itp.). | Modele okresowe, w których wzorzec jest nakładany na przestrzeń tekstury w ramach siatki. Okna siatki odpowiadają rozmiarom wzorca. Wzorzec może być powielony na wszystkie okna siatki lub tylko na ich część. Źródłem wzorca mogą być obiekty naturalne (skanowane, fotografowane) lub wygenerowane obrazy (edytory graficzne itp.). | ||
Linia 85: | Linia 78: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd8.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd8.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Parametryzacja w przestrzeni obiektu zakłada, że obiekty są generowane w swoich własnych układach współrzędnych. Odwzorowanie tekstury jest opisem przekształcenia układu współrzędnych obiektu na układ współrzędnych tekstury. Takie odwzorowanie jest nazywane przekształceniem prosty. | ||
Parametryzacja w przestrzeni obiektu zakłada, że obiekty są generowane w swoich własnych układach współrzędnych. Odwzorowanie tekstury jest opisem przekształcenia układu współrzędnych obiektu na układ współrzędnych tekstury. Takie odwzorowanie jest nazywane przekształceniem prosty. | |||
Ten typ parametryzacji jest najwygodniejszy do stosowania w metodzie śledzenia promieni. | Ten typ parametryzacji jest najwygodniejszy do stosowania w metodzie śledzenia promieni. | ||
Linia 99: | Linia 90: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd9.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd9.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Prezentowane przykłady są parametryzacjami w przestrzeni obiektu. Pierwsza funkcja przekształca sferę obiektu na prostokąt tekstury. | ||
Prezentowane przykłady są parametryzacjami w przestrzeni obiektu. Pierwsza funkcja przekształca sferę obiektu na prostokąt tekstury. | |||
Drugi przykład jest funkcją przekształcającą powierzchnię boczną walca (powierzchnia obiektu) na prostokąt tekstury. | Drugi przykład jest funkcją przekształcającą powierzchnię boczną walca (powierzchnia obiektu) na prostokąt tekstury. | ||
Linia 110: | Linia 98: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd10.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd10.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Prezentowane przykłady opisane są jako modele okresowe, przy czym w przypadku zdjęcia budynku Metropolita prostokąt tekstury jest nałożony dokładnie jeden raz, natomiast w pozostałych dwóch przypadkach prostokątny wzorzec jest powielany wielokrotnie. | ||
Prezentowane przykłady opisane są jako modele okresowe, przy czym w przypadku zdjęcia budynku Metropolita prostokąt tekstury jest nałożony dokładnie jeden raz, natomiast w pozostałych dwóch przypadkach prostokątny wzorzec jest powielany wielokrotnie. | |||
|} | |} | ||
Linia 119: | Linia 105: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd11n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd11n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Modelowanie nierówności powierzchni jest przykładem tekstury dwuwymiarowej. Metoda ta (ang. bump mapping) została zaproponowana przez Blinna w 1978 roku. Pozwala uzyskiwać widok powierzchni o zmodyfikowanym kształcie bez modyfikowania samej geometrii powierzchni. | ||
Modelowanie nierówności powierzchni jest przykładem tekstury dwuwymiarowej. Metoda ta (ang. bump mapping) została zaproponowana przez Blinna w 1978 roku. Pozwala uzyskiwać widok powierzchni o zmodyfikowanym kształcie bez modyfikowania samej geometrii powierzchni. | |||
Przy zastosowaniu tekstury Blinna zmianę kierunku wektora normalnego uzyskuje się przez dodatkową funkcje zaburzenia. Zmodyfikowany wektor normalny jest wykorzystywany w modelu oświetlenia, dzięki czemu są postrzegane lokalne zmiany oświetlenia. Oczywiście wektor zmieniony funkcją zaburzenia może, tak naprawdę, tworzyć dowolny kąt z powierzchnią obiektu, w związku z tym głównym problemem jest dobranie funkcji zaburzenia w taki sposób, aby zmiana wektora odpowiadała rzeczywistej zmianie kształtu powierzchni. | Przy zastosowaniu tekstury Blinna zmianę kierunku wektora normalnego uzyskuje się przez dodatkową funkcje zaburzenia. Zmodyfikowany wektor normalny jest wykorzystywany w modelu oświetlenia, dzięki czemu są postrzegane lokalne zmiany oświetlenia. Oczywiście wektor zmieniony funkcją zaburzenia może, tak naprawdę, tworzyć dowolny kąt z powierzchnią obiektu, w związku z tym głównym problemem jest dobranie funkcji zaburzenia w taki sposób, aby zmiana wektora odpowiadała rzeczywistej zmianie kształtu powierzchni. | ||
Linia 130: | Linia 114: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd12n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd12n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Niech <math>S(u,v)=[x_S(u,v), y_S(u,v), z_S(u,v)]</math> opisuje parametrycznie powierzchnię, która będzie odkształcona. Analogicznie niech <math>B(u,v)=[x_B(u,v), y_B(u,v), z_B(u,v)]</math> opisuje zaburzenie (teksturę). Wektor normalny <math>\vec{N}\,</math> do powierzchni <math>S(u,v)\,</math> można wyznaczyć jako: | ||
Niech <math>S(u,v)=[x_S(u,v), y_S(u,v), z_S(u,v)]</math> opisuje parametrycznie powierzchnię, która będzie odkształcona. Analogicznie niech <math>B(u,v)=[x_B(u,v), y_B(u,v), z_B(u,v)]</math> opisuje zaburzenie (teksturę). Wektor normalny <math>\vec{N}\,</math> do powierzchni <math>S(u,v)\,</math> można wyznaczyć jako: | |||
:<math>\displaystyle \vec{N}=\frac{\partial S(u,v)}{\partial u}\times\frac{\partial S(u,v)}{\partial v}</math> | :<math>\displaystyle \vec{N}=\frac{\partial S(u,v)}{\partial u}\times\frac{\partial S(u,v)}{\partial v}</math> | ||
Linia 166: | Linia 148: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd13n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd13n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Przykłady pokazują nałożenie tekstury Blinna (mapowania nierówności) na sferę. Warto zwrócić uwagę na linię brzegową rzutu sfery. W obu przypadkach jest ona okręgiem, niezniekształconym ! Mapowanie nierówności pozwala uzyskać wrażenie zmian krzywizny bez zmiany geometrii powierzchni. Możliwość niezależnego modelowania kształtu obiektu i drobnych zaburzeń powierzchni jest jedną z podstawowych zalet mapowania nierówności. | ||
Przykłady pokazują nałożenie tekstury Blinna (mapowania nierówności) na sferę. Warto zwrócić uwagę na linię brzegową rzutu sfery. W obu przypadkach jest ona okręgiem, niezniekształconym ! Mapowanie nierówności pozwala uzyskać wrażenie zmian krzywizny bez zmiany geometrii powierzchni. Możliwość niezależnego modelowania kształtu obiektu i drobnych zaburzeń powierzchni jest jedną z podstawowych zalet mapowania nierówności. | |||
|} | |} | ||
---- | ---- | ||
Linia 174: | Linia 154: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd14n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd14n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Mapowanie nierówności Blinna (bump mapping) daje znakomite wrażenie nierówności powierzchni, ale nie zmienia w rzeczywistości jej kształtu. Takie postępowanie przynosi dobre efekty pod warunkiem, że nie występuje wzajemne zasłanianie między poszczególnymi nierównościami powierzchni (lub jest ono pomijalne z punktu widzenia obserwatora). Jeśli ten warunek nie jest spełniony wtedy pojawiają się problemy. | ||
Mapowanie nierówności Blinna (bump mapping) daje znakomite wrażenie nierówności powierzchni, ale nie zmienia w rzeczywistości jej kształtu. Takie postępowanie przynosi dobre efekty pod warunkiem, że nie występuje wzajemne zasłanianie między poszczególnymi nierównościami powierzchni (lub jest ono pomijalne z punktu widzenia obserwatora). Jeśli ten warunek nie jest spełniony wtedy pojawiają się problemy. | |||
Techniką dającą dobre efekty w takiej sytuacji jest mapowanie przesunięć. | Techniką dającą dobre efekty w takiej sytuacji jest mapowanie przesunięć. | ||
Linia 190: | Linia 168: | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd14.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd14.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Rysunek ilustruje problem próbkowania, na który warto zwrócić uwagę, gdyż jest on jednym z poważniejszych problemów występujących w prawie wszystkich dziedzinach związanych z generacją i obróbką obrazów cyfrowych. Częściowo było to omawiane w związku z metodą śledzenia promieni w wariancie śledzenia stochastycznego. | ||
Rysunek ilustruje problem próbkowania, na który warto zwrócić uwagę, gdyż jest on jednym z poważniejszych problemów występujących w prawie wszystkich dziedzinach związanych z generacją i obróbką obrazów cyfrowych. Częściowo było to omawiane w związku z metodą śledzenia promieni w wariancie śledzenia stochastycznego. | |||
Jeśli przeprowadzimy analizę próbkowania ciągłego sygnału dwuwymiarowego, jakim jest obraz, to okaże się, że w efekcie na przykład nakładania tekstury pojawiają się składowe o częstotliwości wyższej niż częstotliwość próbkowania (Nyquista). Może to być spowodowane zbyt dużą liczba szczegółów na danej powierzchni w efekcie rzutowania perspektywicznego lub nałożeniem tekstury o rozmiarach tekseli (pojedynczych elementów wzorca – pikseli tekstury) dużo mniejszych niż rozmiary piksela ekranu. Powszechnie rozwiązuje się ten problem za pomocą filtrowania dolnoprzepustowego i stosowania nadpróbkowania uśredniającego (rysunek b – szachownica pozbawiona większości artefaktów). Oczywiście efektywniejszym nadpróbkowaniem całego obrazu będzie nadpróbkowanie adaptacyjne, w którym gęstość próbkowania będzie uzależniona od szybkości zmian lokalnych. | Jeśli przeprowadzimy analizę próbkowania ciągłego sygnału dwuwymiarowego, jakim jest obraz, to okaże się, że w efekcie na przykład nakładania tekstury pojawiają się składowe o częstotliwości wyższej niż częstotliwość próbkowania (Nyquista). Może to być spowodowane zbyt dużą liczba szczegółów na danej powierzchni w efekcie rzutowania perspektywicznego lub nałożeniem tekstury o rozmiarach tekseli (pojedynczych elementów wzorca – pikseli tekstury) dużo mniejszych niż rozmiary piksela ekranu. Powszechnie rozwiązuje się ten problem za pomocą filtrowania dolnoprzepustowego i stosowania nadpróbkowania uśredniającego (rysunek b – szachownica pozbawiona większości artefaktów). Oczywiście efektywniejszym nadpróbkowaniem całego obrazu będzie nadpróbkowanie adaptacyjne, w którym gęstość próbkowania będzie uzależniona od szybkości zmian lokalnych. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd15.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd15.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|W przypadku nakładania tekstury zamiast filtrować cały obraz można zrobić tę operację na samej teksturze przed jej nałożeniem. Ponieważ konieczne jest przy tym uwzględnienie odwzorowania tekstury więc operacja staje się czasochłonna. Stosuje się techniki splotu bezpośredniego (filtrowanie w przestrzeni tekstury) lub filtrowanie w przestrzeni widma z wykorzystaniem analizy fourierowskiej. | ||
W przypadku nakładania tekstury zamiast filtrować cały obraz można zrobić tę operację na samej teksturze przed jej nałożeniem. Ponieważ konieczne jest przy tym uwzględnienie odwzorowania tekstury więc operacja staje się czasochłonna. Stosuje się techniki splotu bezpośredniego (filtrowanie w przestrzeni tekstury) lub filtrowanie w przestrzeni widma z wykorzystaniem analizy fourierowskiej. | |||
Najefektywniejszą techniką jest mip-mapping – technika polegająca na przygotowaniu przefiltrowanych tekstur o różnych rozdzielczościach. Metodę tę zaproponował Williams w 1983 roku. W efekcie przefiltrowania dla każdej tekstury uzyskujemy zestaw wzorów odpowiadających przeskalowaniu z uwzględnieniem filtracji na odpowiednim poziomie rozdzielczości. Nakładanie takiej tekstury jest bardzo efektywne, gdyż nie wymaga bieżącego filtrowania. Jedyną operacją, jaka jest konieczna to wybór wzoru o właściwej rozdzielczości. W najprostszym przypadku celem jest nałożenie tekstury, której teksel będzie jak najmniejszy, ale większy od piksela. | Najefektywniejszą techniką jest mip-mapping – technika polegająca na przygotowaniu przefiltrowanych tekstur o różnych rozdzielczościach. Metodę tę zaproponował Williams w 1983 roku. W efekcie przefiltrowania dla każdej tekstury uzyskujemy zestaw wzorów odpowiadających przeskalowaniu z uwzględnieniem filtracji na odpowiednim poziomie rozdzielczości. Nakładanie takiej tekstury jest bardzo efektywne, gdyż nie wymaga bieżącego filtrowania. Jedyną operacją, jaka jest konieczna to wybór wzoru o właściwej rozdzielczości. W najprostszym przypadku celem jest nałożenie tekstury, której teksel będzie jak najmniejszy, ale większy od piksela. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd16n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd16n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Obiekty naturalne podlegają różnego typu metamorfozom. Dotyczy to zarówno przyrody ożywionej jak i nieożywionej. | ||
Obiekty naturalne podlegają różnego typu metamorfozom. Dotyczy to zarówno przyrody ożywionej jak i nieożywionej. | |||
Możemy mieć do czynienia ze zmianami kształtu i ze zmianami atrybutów wizualnych. | Możemy mieć do czynienia ze zmianami kształtu i ze zmianami atrybutów wizualnych. | ||
Linia 228: | Linia 201: | ||
Warto zwrócić uwagę na rezultat działania czynników mechanicznych: może on być trwały (np. ściskanie obiektów nieelastycznych) oraz czasowy (np. ściskanie obiektów elastycznych). | Warto zwrócić uwagę na rezultat działania czynników mechanicznych: może on być trwały (np. ściskanie obiektów nieelastycznych) oraz czasowy (np. ściskanie obiektów elastycznych). | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd17n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd17n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Deformacje dokonywane są: | ||
Deformacje dokonywane są: | |||
*W przestrzeni sceny, a więc deformacje obiektu (jego modelu). | *W przestrzeni sceny, a więc deformacje obiektu (jego modelu). | ||
Linia 247: | Linia 219: | ||
Morfing jest operacją pozwalającą wygenerować deformacje kształtu odpowiadające stanom pośrednim pomiędzy danymi obrazami. | Morfing jest operacją pozwalającą wygenerować deformacje kształtu odpowiadające stanom pośrednim pomiędzy danymi obrazami. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd18n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd18n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Definicja animacji jest dzisiaj bardzo szeroka. Obejmuje zarówno proces tworzenia jak i jego efekt. Odnosi się do filmu, przedstawień teatralnych, gier komputerowych reklam. Współczesna definicja animacji obejmuje także szereg różnych operacji wykonywanych na obrazach cyfrowych. | ||
Definicja animacji jest dzisiaj bardzo szeroka. Obejmuje zarówno proces tworzenia jak i jego efekt. Odnosi się do filmu, przedstawień teatralnych, gier komputerowych reklam. Współczesna definicja animacji obejmuje także szereg różnych operacji wykonywanych na obrazach cyfrowych. | |||
Wyróżnia się dwa rodzaje animacji.: | Wyróżnia się dwa rodzaje animacji.: | ||
Linia 263: | Linia 234: | ||
Warto zwrócić uwagę na fakt, że w animacji klasycznej każda klatka jest niezależnie realizowana, a każda scena filmu musi być konsekwentnie zbudowana klatka po klatce. W animacji komputerowej można spotkać realizacje wykonane na tej samej zasadzie, jednak częściej sposób i możliwości uzyskania pewnych efektów zmieniają całkowicie ten systematyczny schemat. Szczególnie ma to miejsce w grach komputerowych gdzie trudno mówić o tradycyjnym schemacie kolejnych scen i klatek, natomiast poszczególne obrazy są generowane na bieżąco w zależności od sytuacji, przy czy jednocześnie mogą wykorzystywać elementy wykreowane wcześniej, niezależnie od kolejności sekwencji obrazowych. | Warto zwrócić uwagę na fakt, że w animacji klasycznej każda klatka jest niezależnie realizowana, a każda scena filmu musi być konsekwentnie zbudowana klatka po klatce. W animacji komputerowej można spotkać realizacje wykonane na tej samej zasadzie, jednak częściej sposób i możliwości uzyskania pewnych efektów zmieniają całkowicie ten systematyczny schemat. Szczególnie ma to miejsce w grach komputerowych gdzie trudno mówić o tradycyjnym schemacie kolejnych scen i klatek, natomiast poszczególne obrazy są generowane na bieżąco w zależności od sytuacji, przy czy jednocześnie mogą wykorzystywać elementy wykreowane wcześniej, niezależnie od kolejności sekwencji obrazowych. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd16.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd16.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Podobnie jak w filmie aktorskim, film animowany zanim rozpocznie się jego produkcja powstaje w postaci szeregu różnych opisów. Dotyczy to zarówno akcji filmu, jak i bohaterów. W pierwszej fazie planuje się treść z wykorzystaniem przykładowych rysunków ilustrujących najważniejsze momenty akcji. Projektuje się postaci, scenografię, podział na plany pierwszy i dalsze. Ważne jest aby na tym etapie uwzględnić możliwości techniczne studia oraz jego wszystkich urządzeń (przede wszystkim rejestrujących). | ||
Podobnie jak w filmie aktorskim, film animowany zanim rozpocznie się jego produkcja powstaje w postaci szeregu różnych opisów. Dotyczy to zarówno akcji filmu, jak i bohaterów. W pierwszej fazie planuje się treść z wykorzystaniem przykładowych rysunków ilustrujących najważniejsze momenty akcji. Projektuje się postaci, scenografię, podział na plany pierwszy i dalsze. Ważne jest aby na tym etapie uwzględnić możliwości techniczne studia oraz jego wszystkich urządzeń (przede wszystkim rejestrujących). | |||
Animatorzy tworzą rysunki (lub sceny czy postaci np. kukiełkowe) kluczowe. Sceny pośrednie są wykonywane zgodnie z założeniami scenopisu – zgodnie z przebiegiem i tempem akcji. | Animatorzy tworzą rysunki (lub sceny czy postaci np. kukiełkowe) kluczowe. Sceny pośrednie są wykonywane zgodnie z założeniami scenopisu – zgodnie z przebiegiem i tempem akcji. | ||
Linia 281: | Linia 251: | ||
Komputer jest wykorzystywany w animacji tradycyjnej do modelowania ruchu i tworzenia precyzyjnego planu, do sterowania urządzeniami laboratorium oraz w postprodukcji do prac związanych z montażem i synchronizacją dźwięku. | Komputer jest wykorzystywany w animacji tradycyjnej do modelowania ruchu i tworzenia precyzyjnego planu, do sterowania urządzeniami laboratorium oraz w postprodukcji do prac związanych z montażem i synchronizacją dźwięku. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd17.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd17.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Pierwsza zasadnicza różnica charakteryzująca animację komputerową występuje już na etapie planowania filmu, gdyż możliwości techniczne odgrywają większą rolę niż w animacji tradycyjnej. Scenariusz powstaje tutaj na drodze kompromisu między oczekiwaniami, możliwościami realizacyjnymi, czasem wykonania i związanymi z tym kosztami. Wybór formy filmu jest wyborem konkretnych możliwości technicznych. | ||
Pierwsza zasadnicza różnica charakteryzująca animację komputerową występuje już na etapie planowania filmu, gdyż możliwości techniczne odgrywają większą rolę niż w animacji tradycyjnej. Scenariusz powstaje tutaj na drodze kompromisu między oczekiwaniami, możliwościami realizacyjnymi, czasem wykonania i związanymi z tym kosztami. Wybór formy filmu jest wyborem konkretnych możliwości technicznych. | |||
Główny etap tworzenia filmu obejmuje cykl modelowania obiektów (bohaterów, scenografii), ruchu i oświetlenia oraz tworzenia obrazów w uproszczonej formie oraz oceny efektów. Postać uproszczona może obejmować zarówno mniejszą rozdzielczość, jak też brak mniej istotnych szczegółów, czy mniejszą liczbę klatek na sekundę. Ponieważ na tym etapie produkcji, w zasadzie, prawie wszystkie parametry można zmienić (w przeciwieństwie do filmu tradycyjnego), więc do końcowego generowania z docelową rozdzielczością przechodzi się dopiero po sprawdzeniu wszystkich istotnych elementów kompozycyjnych filmu. | Główny etap tworzenia filmu obejmuje cykl modelowania obiektów (bohaterów, scenografii), ruchu i oświetlenia oraz tworzenia obrazów w uproszczonej formie oraz oceny efektów. Postać uproszczona może obejmować zarówno mniejszą rozdzielczość, jak też brak mniej istotnych szczegółów, czy mniejszą liczbę klatek na sekundę. Ponieważ na tym etapie produkcji, w zasadzie, prawie wszystkie parametry można zmienić (w przeciwieństwie do filmu tradycyjnego), więc do końcowego generowania z docelową rozdzielczością przechodzi się dopiero po sprawdzeniu wszystkich istotnych elementów kompozycyjnych filmu. | ||
Linia 293: | Linia 262: | ||
Innego znaczenia może nabierać postprodukcja, gdzie montaż końcowy filmu może obejmować łączenie obrazów czy scen pochodzących na przykład z sieci komputerowej zapewniającej szybkie tworzenie niezależnych fragmentów. Przy czym niezależność może oznaczać nie tylko podział na sceny filmu, ale także osobne tworzenia tła i scenografii, podział na plany, niezależne kreowanie postaci itp. | Innego znaczenia może nabierać postprodukcja, gdzie montaż końcowy filmu może obejmować łączenie obrazów czy scen pochodzących na przykład z sieci komputerowej zapewniającej szybkie tworzenie niezależnych fragmentów. Przy czym niezależność może oznaczać nie tylko podział na sceny filmu, ale także osobne tworzenia tła i scenografii, podział na plany, niezależne kreowanie postaci itp. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd19n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd19n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Animacja oparta na klatkach kluczowych składa się z następujących etapów: | ||
Animacja oparta na klatkach kluczowych składa się z następujących etapów: | |||
*Wyszczególnienie i synteza klatek kluczowych charakteryzujących najważniejsze momenty ruchu lub sceny. | *Wyszczególnienie i synteza klatek kluczowych charakteryzujących najważniejsze momenty ruchu lub sceny. | ||
Linia 323: | Linia 291: | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd20.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd20.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Uwzględnienie zjawisk fizycznych w zachowaniu się obiektów na scenie daje możliwość uzyskania realizmu odbieranej animacji. Nawet najlepiej zaprojektowane szczegóły postaci nie zagwarantują poprawnego odbioru jeśli zachowanie się postaci będzie odbiegało od naszych oczekiwań. Z drugiej strony odbiór tradycyjnych filmów animowanych pokazuje, że jesteśmy skłonni zaakceptować nawet bardzo duży poziom umowności szczegółów i uproszczeń postaci jeśli będzie się ona poruszała w sposób naturalny. | ||
Uwzględnienie zjawisk fizycznych w zachowaniu się obiektów na scenie daje możliwość uzyskania realizmu odbieranej animacji. Nawet najlepiej zaprojektowane szczegóły postaci nie zagwarantują poprawnego odbioru jeśli zachowanie się postaci będzie odbiegało od naszych oczekiwań. Z drugiej strony odbiór tradycyjnych filmów animowanych pokazuje, że jesteśmy skłonni zaakceptować nawet bardzo duży poziom umowności szczegółów i uproszczeń postaci jeśli będzie się ona poruszała w sposób naturalny. | |||
Ponieważ opis zgodny z prawami fizyki jest bardzo złożony, więc stosuje się metody upraszczające obliczenia. Przykładem może być opis ruchu układu mechanicznego będący układem liniowych równań różniczkowych stopnia drugiego. Do rozwiązania stosuje się albo metodę wektorów stanu sprowadzającą równania do rzędu pierwszego, albo metodę różnic skończonych pozwalającą sprowadzić układ równań różniczkowych do układu równań nieliniowych. | Ponieważ opis zgodny z prawami fizyki jest bardzo złożony, więc stosuje się metody upraszczające obliczenia. Przykładem może być opis ruchu układu mechanicznego będący układem liniowych równań różniczkowych stopnia drugiego. Do rozwiązania stosuje się albo metodę wektorów stanu sprowadzającą równania do rzędu pierwszego, albo metodę różnic skończonych pozwalającą sprowadzić układ równań różniczkowych do układu równań nieliniowych. | ||
Linia 333: | Linia 299: | ||
Obiekty sztywne przegubowe modeluje się w postaci zestawu prostych sztywnych elementów połączonych ze sobą złączami mechanicznymi o zadanym zestawie stopni swobody. Dla obiektów deformowalnych opisuje się odpowiednimi równaniami takie zjawiska jak sprężystość, plastyczność, zrywanie, topnienie, lepkość itd. | Obiekty sztywne przegubowe modeluje się w postaci zestawu prostych sztywnych elementów połączonych ze sobą złączami mechanicznymi o zadanym zestawie stopni swobody. Dla obiektów deformowalnych opisuje się odpowiednimi równaniami takie zjawiska jak sprężystość, plastyczność, zrywanie, topnienie, lepkość itd. | ||
|} | |} | ||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd21n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd21n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|Symulacja kolizji jest jednym z ważniejszych problemów pojawiających się w grach komputerowych i filmach animowanych. Rozwiązanie tego problemu wymaga rozwiązania kilku zagadnień. Najważniejszym jest wykrycie kolizji. Zadanie to jest podobne do wykrycia przecięcia w metodzie śledzenia promieni. Przy czym tam było to przecięcie prosta – obiekt, tutaj natomiast jest to obiekt – obiekt. Niemniej jednak metody przyspieszające są podobne. Stosowana jest metoda brył ograniczających, wykrycie przecięcia sfera – sfera jest równie łatwe jak prosta – sfera. Od rodzaju powierzchni (sztywne, odkształcalne) zależy geometria kolizji – odkształcenia obiektów. Od rodzaju powierzchni zależą także efekty kolizji. Zastosowanie odpowiedniego modelu fizycznego opisu zjawiska pozwoli uzyskać wrażenie zgodne z naszym wyobrażeniem i oczekiwaniem. | ||
|} | |||
---- | ---- | ||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" | ||
|width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd22n.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:GKIW_M10_Slajd22n.png|thumb|500px]] | ||
|valign="top"| | |valign="top"|W modelowaniu postaci wykorzystuje się modele mieszane. Sztywny szkielet jako typowy model obiektu sztywnego przegubowego. Szkielet jest otoczony warstwą deformowalną. Deformacja powierzchni tej warstwy zależy zarówno od struktury szkieletu i jego odkształcenia jak i bieżącego stanu warstwy deformowalnej. Kinematyka odwrotna jest stosowana do opisu ruchu kończyn. | ||
W modelowaniu postaci wykorzystuje się modele mieszane. Sztywny szkielet jako typowy model obiektu sztywnego przegubowego. Szkielet jest otoczony warstwą deformowalną. Deformacja powierzchni tej warstwy zależy zarówno od struktury szkieletu i jego odkształcenia jak i bieżącego stanu warstwy deformowalnej. Kinematyka odwrotna jest stosowana do opisu ruchu kończyn. | |||
Zestaw składowych jednej postaci jest zazwyczaj modelowany w postaci hierarchicznej. | Zestaw składowych jednej postaci jest zazwyczaj modelowany w postaci hierarchicznej. | ||
Linia 353: | Linia 317: | ||
Animacja twarzy jest traktowana jako odrębne zagadnienie ze względu na złożoność problemu oraz ze względu na fakt, że człowiek szybciej identyfikuje twarz na obrazie | Animacja twarzy jest traktowana jako odrębne zagadnienie ze względu na złożoność problemu oraz ze względu na fakt, że człowiek szybciej identyfikuje twarz na obrazie | ||
|} | |} | ||
---- | ---- | ||
= Literatura = | |||
{| border="0" cellpadding="4" width="100%" | {| border="0" cellpadding="4" width="100%" |
Wersja z 09:09, 6 lut 2007
Wykład
![]() |
![]() |
Literatura
![]() |