Podręcznik Grafika komputerowa i wizualizacja

Strona: SEZAM - System Edukacyjnych Zasobów Akademickich i Multimedialnych
Kurs: Część 4. Dążenie do realizmu
Książka: Podręcznik Grafika komputerowa i wizualizacja
Wydrukowane przez użytkownika: Gość
Data: niedziela, 6 lipca 2025, 21:12

Opis

 

Rozdział 14. TEKSTURY I PROBLEMY PERCEPCJI

Rozdział czternasty zawiera podstawowe informacje dotyczące zagadnień związanych z teksturowaniem. Jest to  technika pozwalająca dodać szczegóły rysowanych powierzchni co daje możliwość zwiększenia stopnia realizmu generowanych obrazów. Zostały omówione rodzaje tekstur i sposoby ich generacji. Przedstawiono mapowanie nierówności i przesunięć jako techniki manipulacji wektorem normalnym i położeniem punktu powierzchni.


14.1. W poszukiwaniu realizmu

Techniki realizacji oświetlenia opisane w poprzednich rozdziałach są niezbędne dla zapewnienia realizmu obrazów. Jednak w większości przypadków są niewystarczające. O odbiorze obrazu i możliwości przypisania cechy realności przedstawianemu światu decyduje poprawność oddania szczegółów rysowanych obiektów. Sprawdza się generalna zasada, że im więcej dobrze opracowanych (zgodnych z oczekiwaniem) szczegółów tym lepiej (rys.14.1). Dopiero połączenie poprawnej geometrii kształtu obiektu, dobrze opisanego rozchodzenia się światła i właściwości optycznych oraz odpowiedniej liczby dobrze zamodelowanych szczegółów powierzchni obiektu daje możliwość zapewnienia oczekiwanego odbioru obrazu.


Rys.14.1. Poprawna geometria nie wystarczy, dopiero odpowiednia liczba dobrze
narysowanych szczegółów zapewnia widok obiektu zgodny z oczekiwaniem.
Na podstawie rysunków Jeremy Birna © ze strony http://www.3drender.com/jbirn/productions.html


Powstaje pytanie: w jaki sposób efektywnie zamodelować (zasymulować) właściwości materiałowe oraz właściwości optyczne, a co za tym idzie szczegóły wyglądu obiektu ? Można tego dokonać poprzez zamodelowanie dokładnej (odpowiadającej rzeczywistości) powierzchni obiektu. Wymaga to zastosowania odpowiedniego opisu kształtu (mikrogeometria powierzchni) oraz opisu fizycznych/optycznych właściwości. Może to dać oczekiwane wrażenie, jednak jest to zadanie bardzo trudne i bardzo złożone obliczeniowo. W praktyce jest to zazwyczaj niewykonalne i/lub nieopłacalne. Alternatywnym rozwiązaniem jest użycie tekstur dających podobny efekt. Jest to o wiele efektywniejsze realizacyjnie. Jednak powstające w tym przypadku problemy wymagają dodatkowej analizy i rozwiązania.


14.2. Tekstury i problemy ich stosowania

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.

Zastosowania tekstur

  • Barwa (i wzór – tapeta, obraz) na powierzchni materiału, także zmiany luminancji.
  • Właściwości związane z obróbką i wykończeniem powierzchni, właściwości materiałowe – zmiana lokalnego wektora normalnego lub przesunięcia powierzchni, parametry geometryczne.
  • Właściwości związane z odbiciem lub przenikaniem światła – zmiana odpowiednich współczynników.
  • Przezroczystość.
  • Cienie.

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.

W tym zestawieniu warto wyróżnić trzy kategorie odwzorowania.

  • Odwzorowanie wzoru – przeniesienie mapy barw (np. zdjęcia) na powierzchnię. Od takiej realizacji oczekujemy tylko, aby nałożona mapa była związana z obiektem.
  • Odwzorowanie cech zależnych od obserwatora. W tym przypadku dodatkowo tekstura powinna zachowywać właściwości zależne od pewnych kierunków związanych ze sceną (np. położenie źródeł światła) i kierunków związanych z obiektem (np. anizotropia).
  • Odwzorowanie zmieniające geometrię powierzchni materiału. Oczywiście zmiana może być w tym przypadku pozorna (np. przy zastosowaniu mapowania nierówności) ale realizacja powoduje powstanie wrażenia zgodnego z oczekiwaniem.

Jak widać nakładanie tekstury może obejmować szeroki zestaw zagadnień. Formalnie należałoby więc definiować teksturę jako pewną wektorową funkcję wielu zmiennych. Liczba zmiennych jest zależna od właściwości odwzorowania.

 

Pierwszym problemem, jaki pojawia się przy odwzorowaniu tekstur jest ich pozyskiwanie. 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. Bezpośrednio z nakładaniem tekstury, a także z rzutowaniem perspektywicznym są związane problemy próbkowania, powodujące, że trudno jest w prosty sposób uzyskać zawsze dobrą jakość odwzorowanej tekstury mimo posiadania znakomitych wzorców. Problem ten można rozwiązać stosując filtrowanie tekstur.

 

 


14.3. Rodzaje tekstur i sposoby ich generowania

Stosowane rodzaje tekstur:

  • Jednowymiarowe  (np. symulacja zmian barwy skały).
  • Dwuwymiarowe (np.  powierzchnia wody, fale morskie, tapeta ścienna).
  • Trójwymiarowe (np. drewno – właściwości materiałowe).

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.


Rys.14.2. a) Miedź – mapowanie barwy – tekstura jednowymiarowa. 
b) Marmur – mapowanie rozkładu barw wzoru – tekstura dwuwymiarowa.


Wyróżnia się sposoby opisu parametrów tekstur:

  • Proceduralne, funkcyjne.
  • Tablice parametrów tekstur – mapy (zdjęcia).

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.

Stosując niezależny podział można wyróżnić generowanie:

  • Deterministyczne (tekstury makroskopowe).
  • Stochastyczne (tekstury mikroskopowe).

Deterministyczne, w którym istnieją reguły rozmieszczania wzorca tekstury na powierzchni materiału. Barwa czy inne parametry zdeterminowane są określonymi wzorami opisu lub parametrami mapy. Generowanie stochastyczne nie zapewnia informacji o ustalonej strukturze wzorca. Pozwala natomiast na tworzenie lokalnych zmian parametru (np. barwy) powierzchni wynikających z pewnego prawdopodobieństwa.

Często zachodzi potrzeba łączenia różnych technik, aby uzyskany efekt jak najlepiej odpowiadał rzeczywistości. Przykładem może być generowanie trójwymiarowej tekstury słojów drewna. Można to zrobić przyjmując opis proceduralny deterministyczny opierając się na modelu zawierającym koncentrycznie umieszczone walce. Średnicę walca zmienia się dodatkowo przez deterministyczne zaburzenie w postaci harmonicznych. Ale aby zwiększyć podobieństwo do rzeczywistego obiektu dodaje się niewielkie zaburzenia stochastyczne zarówno do średnicy walców i położenia ich osi obrotu, jak również do barwy słojów.

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.).
  • W modelach o losowym rozmieszczeniu na powierzchni przestrzeni tekstury pojawiają się losowo rozmieszczone elementy („bomby”), o określonej barwie i kształcie.
  • Modele mozaikowe są generowane bezpośrednio w przestrzeni tekstury w postaci rozrastających się, losowo ułożonych komórek. Każda z nich rozrasta się, aż do napotkania innej komórki.
  • Modele syntaktyczne generowane są bezpośrednio w przestrzeni tekstury z wykorzystaniem języków formalnych i reguł gramatycznych.

 


14.4. Parametryzacja i odwzorowanie tekstur

Nakładanie tekstury wymaga operacji, która przeniesie parametry tekstury na powierzchnię obiektu. Stosowane są:

  • Parametryzacja – odwzorowanie dziedziny tekstury na powierzchnię obiektu
    • w przestrzeni obiektu,
    • w przestrzeni świata.
  • Projekcja – odwzorowanie obiektu na przestrzeń ekranu.

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 jest nazywane przekształceniem prosty.

Ten typ parametryzacji jest najwygodniejszy do stosowania w metodzie śledzenia promieni.

Parametryzacja w przestrzeni świata określa odwzorowanie przestrzeni tekstury na przestrzeń świata. Jest to nazywane często przekształceniem odwrotnym.

Projekcja jest przekształceniem przestrzeni obiektu na przestrzeń ekranu (rzutu).  Ponieważ najczęściej w rzutowaniu jest wykorzystywane rzutowanie perspektywiczne więc również projekcja tekstury jest realizowana w postaci przekształcenia perspektywicznego.

Przykładowa parametryzacjami w przestrzeni obiektu, jako funkcja przekształcająca prostokąt tekstury na sferę obiektu jest opisana w następujący sposób: 
        

Układ równań przekształca prostokąt tekstury   na sferę o promieniu RS.

 

Drugi przykład jest parametryzacją powierzchni bocznej walca:
                  

Układ równań przekształca prostokąt tekstury  na powierzchnię boczną walca o promieniu RW i wysokości HW.


Przykłady nakładania tekstur

Prezentowane przykłady opisane są jako modele okresowe, przy czym w przypadku zdjęcia budynku Metropolitan prostokąt tekstury jest nałożony dokładnie jeden raz (rys.14.3 a), natomiast w pozostałych dwóch przypadkach (rys.14.3 b)c) prostokątny wzorzec jest powielany wielokrotnie.


Rys.14.3. a) Zdjęcie budynku Metropolita nałożone na sferę. b) Obraz ściany na sferze. c) Mozaika drewniana.



14.5. Problemy próbkowania, filtrowanie tekstur

Wydaje się, że najprostszym sposobem nałożenia tekstury na powierzchnię byłoby przeniesienie obrazu z zastosowaniem odpowiedniej kalkulacji współrzędnych, bez żadnych dodatkowych (zbędnych?!) operacji.

Najprostszy algorytm mógłby wyglądać następująco:

  • Potraktować efekt mapowanie tekstury jako obraz w przestrzeni odpowiednich parametrów.
  • Wyznaczyć odpowiednią parametryzację lub projekcję.
  • Mapować teksturę na powierzchnię obiektu.

Problem jaki w tym przypadku się pojawia sprowadza się do pytania. Jak transformować wzór tekstury bez utraty jakości? Jest to związane z rozmiarami obiektów i nakładanych na nie tekstur. Przeskalowanie tekstury (dopasowanie do wymiarów powierzchni obiektu) prowadzi do utraty jakości. W analizie tego problemu rozpatruje się obiekt nazwany tekselem, będący najmniejszym fragmentem tekstury (analogicznie do piksela, tylko że w przestrzeni tekstury).

Aby więc poprawić ten najprostszy (i jak widać naiwny) algorytm, można zaproponować następujące postępowanie:

  • Potraktować teksturę jako obraz będący zbiorem tekseli.
  • Wyznaczyć odpowiednią parametryzację lub projekcję.
  • Mapować teksturę na powierzchnię obiektu.
  • Przeanalizować transformację teksela na piksel.
    • Jeśli piksel jest większy niż teksel, uśrednić jego barwę z sąsiednich tekseli.
    • Jeśli piksel jest mniejszy niż teksel, interpolować barwę z sąsiednich tekseli.
    • Jeśli rozmiar piksela  >>  rozmiar teksela, skopiować barwę teksela (lub uśrednić z sąsiadów).

 Taki algorytm zakłada, że teksel i piksel są całkowicie niezależne. Do realizacji potrzebne jest skalowanie (w ramach parametryzacji/rzutowania niezależnie). Dla wyznaczania odpowiedniego fragmentu tekstury wymagane jest powiększanie i zmniejszanie co jest związane z interpolacją i uśrednianiem. Powstaje problem antyaliasingu, będący typowym problemem próbkowania.


Rys.14.4. Nałożona tekstura typu szachownica.
a) bez dodatkowej obróbki – widoczne zakłócenia (szczególnie w górnej części obrazu),
b) szachownica poprawiona.


Rysunek 14.4 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 dożo mniejszych niż rozmiary piksela ekranu. Powszechnie rozwiązuje się ten problem za pomocą filtrowania dolnoprzepustowego i stosowania nadpróbkowania uśredniającego (rysunek.14.4 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ść będzie uzależniona od szybkości zmian lokalnych.

Algorytm nakładania tekstury z zastosowaniem filtrowania:

  • Zastosować mapę tekstury jako regularną siatkę tekseli, zrekonstruować „ciągłość tekstury” używając filtrowania dolnoprzepustowego.
  • Mapować taką teksturę na powierzchnię obiektu.
  • Filtrować (dolnoprzepustowo) rezultat zgodnie z określoną rozdzielczością (aby uniknąć aliasingu)

Takie postępowanie wymaga rozwiązania problemu przydzielania barw przy powiększaniu tekstury (barwa sąsiedniego piksela jest najmniej szczęśliwym rozwiązaniem, lepszą metodą jest interpolacja, chociaż może dawać nieoczekiwaną barwę). Warto także pamiętać, że przy zmniejszaniu tekstury, jeśli obiekt jest bardzo daleko, to wiele tekseli jest mapowanych na jeden piksel. Prowadzi to niepotrzebnego i czasochłonnego filtrowania.

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 szeregów Fouriera.

Najefektywniejszą techniką jest mip-mapping – technika polegająca na przygotowaniu przefiltrowanych tekstur o różnych rozdzielczościach (rysunki 14.5. i 14.6.). Przechowywane są tekstury w kilku przeskalowanych wersjach (2 razy mniejsza, 4 razy mniejsza itd). Na mapie tekstury rozpatruje się teksele – podstawowe elementy tekstury (analogicznie do pikseli). Metodę tę zaproponował L.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 na bieżąco filtrowania. Jedyną operacją jaka jest konieczna to wybór wzoru o właściwej rozdzielczości Dobór mipmapy jest zależny od relacji tekseli do pikseli (liczby tekseli odpowiadających pikselowi). W najprostszym przypadku celem jest nałożenie tekstury, której teksel będzie jak najmniejszy, ale większy od piksela.


Rys.14.5. Mip-mapping :  przeskalowane obrazy tekstury.  Skalowanie wiąże się także z mieszaniem barw.



Rys.14.6. Mip-mapping :  przykład zestawu 8 rysunków tekstury muru.

14.6. Mapowanie nierówności

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 – rysunek 14.7.

Rys.14.7. Powstawanie  tekstury  Blinna: a) powierzchnia i jej wektory normalne,
b) zaburzenie, c) zaburzenie powierzchni i jej wektory  normalne,
d) zmodyfikowane wektory normalne  odniesione do powierzchni pierwotnej.


Przy zastosowaniu tekstury Blinna zmianę kierunku wektora normalnego uzyskuje się poprzez 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..

 

Niech   opisuje parametrycznie powierzchnię, która będzie odkształcona. Analogicznie niech  opisuje zaburzenie (teksturę). Wektor normalny   do powierzchni   można wyznaczyć jako:

Jeśli nałożymy teksturę na powierzchnię to powstanie powierzchnia zniekształcona:


Blinn założył, że powstające zaburzenie jest niewielkie, a następnie analizując położenia odpowiednich wektorów wykazał, że aproksymowany wektor normalny do zniekształconej powierzchni można opisać jako

 .

 Przy czym   jest wektorem zaburzenia:


gdzie  i     są wektorami stycznymi do powierzchni    .

 

Rys.14.8. Modyfikacja wektora normalnego w mapowaniu Blinna.


Takie rozwiązanie daje bardzo prostą możliwość definicji wektora normalnego odkształconej powierzchni za pomocą wektorów zaburzenia. Wadą zaproponowanej przez Blinna metody jest aproksymacja wektora normalnego. Stąd powstało wiele różnych realizacji tej metody, wykorzystujących różne warianty uproszczenia. Znane są również próby aplikacji sprzętowych mapowania nierówności Blinna.


Rys.14.9. Przykłady zmiany kształtu (wrażenia) za pomocą mapowania nierówności.
a) W sposób uporządkowany. b) W sposób losowy.


Przykłady na rysunku 14.9 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.


14.7. Mapowanie przesunięć

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ęć. Jest to zmiana postrzegania kształtu przez deformację kształtu powierzchni - mapowanie przesunięć (ang. displacement mapping). Przesunięcie punktów powierzchni powoduje deformację (rzeczywistą) kształtu.


Niech     opisuje parametrycznie powierzchnię,    P   będzie punktem na tej powierzchni, a     będzie wektorem normalnym do powierzchni .   Niech funkcja     opisuje przesunięcie punktu powierzchni    .
Wtedy dla każdego punktu P


Taka modyfikacja kształtu daje możliwość uzyskania rzeczywistego przesunięcia i efektów z tym związanych (np. wzajemne zasłanianie) – rysunek 14.10.

Rys.14.10. Przykład mapowania przesunięć. Przesunięcie punktów powierzchni powoduje
rzeczywistą deformację kształtu – linia brzegowa rzutu sfery jest również zmodyfikowana.


Warto zwrócić uwagę na możliwość zastosowania mapowania przesunięć do modelowania kształtu w szczególnych warunkach. Proporcjonalnie większe przesunięcie przestaje być tylko modyfikacją tekstury, może natomiast wpłynąć na kształt obiektu (rys.14.11). Oczywiście jest to modelowanie w ograniczonym zakresie, gdyż nie umożliwia uzyskania dowolnego kształtu w wyniku, tylko i wyłącznie, przesunięcia powierzchni wzdłuż normalnej.

Rys.14.11. Próba zastosowania mapowania przesunięć do modelowania
kształtu (obiektu) a nie tylko jego faktury.
Rysunki opracowane przez Aleksandrę Wójcik i Bartosza Papisa ©.  Publikowane za zgodą autorów.



14.8. Mapowanie otoczenia

Właściwości odbiciowe powierzchni obiektu zapewniają nie tylko powstanie refleksów światła. Odwzorowują odbicie całego otaczającego obiekt świata. W szczególności możemy obserwować lustrzane odbicie na powierzchni na przykład metalowych przedmiotów. Aby zapewnić taki obraz należy wyznaczyć rzut wybranego fragmentu sceny, a następnie odwzorować go na powierzchni przedmiotu. Oczywiście operacja ta powinna uwzględniać właściwości odbiciowe powierzchni. Lustro zapewni szczegóły odbitego obrazu, lakierowana powierzchnia mebla pozwoli dostrzec zarysy przedmiotów i zmiany rozkładu świateł. Techniką stosowaną w opisywanych przypadkach jest mapowanie otoczenia. Technika ta pozwala  uzyskać realistyczne odbicia światła (refleksy) na gładkich powierzchniach. Jest to realizowana metodą teksturowania. Generowanie takiej specyficznej „tekstury” odbywa się przez analizę odbicia, geometrii powierzchni (odbicie lustrzane) i kierunku (położenia) obserwatora. Następnie „tekstura” odbicia jest w tradycyjny sposób nakładana na powierzchnię przedmiotu (rys.14.12).


Rys.14.12. a) Mapa świateł i jej obraz nałożony na powierzchnię czajnika. 
Jeden z pierwszych rysunków mapowania otoczenia: Blinn i Newell 1976.
b) Odbicie mapowane na powierzchnię robota („płynny metal”) – Terminator 2.
Rysunki pochodzą z https://www.pauldebevec.com/ReflectionMapping/.




14.9. Deformacje obiektów

Obiekty naturalne podlegają różnego typu zmianom. 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. Czynnikiem decydującym dla obiektów ożywionych będzie proces wzrostu oraz proces starzenia się. Dla przyrody nieożywionej decydującym czynnikiem będą zjawiska środowiskowe (erozje). Obiekty sztuczne poza naturalnymi procesami starzenia się podlegają przede wszystkim czynnikom mechanicznym. 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).

Deformacje w grafice komputerowej dokonywane są:

  • W przestrzeni sceny, a więc deformacje obiektu (jego modelu). Zmianie może podlegać geometria (kształt) obiektu oraz jego atrybuty (barwa, tekstura, właściwości odbijania światła itd.). Dobrym przykładem zmian geometrii są operacje ściskania, rozciągania lub skręcenia.
  • W przestrzeni rzutu – deformacje obrazu obiektu. Zmiana dokonywana jest z wykorzystaniem transformacji afinicznych (lub dowolnych).

Warping jest przykładem operacji deformacji kształtu stosowanej zarówno w odniesieniu do obiektu jak i jego obrazu. Odbywa się to przez nałożenie siatki na obraz (lub obiekt trójwymiarowy – siatki przestrzennej) i przekształcenie położenia węzłów siatki zgodnie z określoną funkcją. Klasycznymi efektami uzyskiwanymi tą metodą jest zmiana wyrazu twarzy na zdjęciu – uśmiech (rys.14.13), przymknięcie oczu itp. Warping daje oczywiście możliwość wprowadzenia większych zmian obrazu (rys.14.14).


Rys.14.13. Zdjęcie autora niniejszego podręcznika (w środku) oraz dwa przykłady wykorzystania warpingu  do zmiany wyrazu twarzy – zmiany układu ust.  Z lewej usta bardziej uśmiechnięte, z prawej poważne.



Rys.14.14. Z wilka osioł. Warping opracowany przez Łukasza Stelmacha ©.  Rysunki publikowane za zgodą autora.



Morfing (morphing) jest operacją pozwalającą wygenerować deformacje kształtu odpowiadające stanom pośrednim pomiędzy danymi obrazami. Umożliwia kreowanie zestawu obrazów przetworzonych warpingiem. Morfing stosuje się najczęściej do prostych obiektów geometrycznych (rys.14.15), można go jednak wykorzystać także do obiektów bardziej skomplikowanych (rys.14.16).

Rys.14.15. Od    A    do    Z    w siedmiu krokach.

Rys.14.16. Modele pośrednie. Morfing opracowany przez Łukasza Stelmacha ©.
Rysunki publikowane za zgodą autora.



Rozdział 15. ANIMACJA

W rozdziale piętnastym zostały omówione podstawowe zagadnienia animacji komputerowej. Przedstawiono historię animacji i rozwój technik  z tym związanych w kinematografii. Pokazano różnice między animacją klasyczna i animacją komputerową. Zostały omówione podstawowe zasady i metody animacji.


15.1. Wstęp

Definicja animacji jest dzisiaj bardzo szeroka. Obejmuje zarówno proces tworzenia jak i jego efekt. Odnosi się do filmu, przedstawień teatralnych, gier komputerowych reklam. Pojęcie animacji obejmuje dzisiaj także szereg różnych operacji wykonywanych na obrazach cyfrowych.

Animacja to:

  • Technika pozwalająca uzyskiwać wrażenie obrazu ruchomego, polegająca na fotografowaniu rysunków lub obiektów trójwymiarowych a następnie ich projekcji z określoną częstotliwością.
  • Proces generowania obrazów tworzących serię, w której każdy kolejny obraz przedstawia pewną zmianę w stosunku do obrazu poprzedniego.
  • Efekt działanie takiej techniki lub procesu.

 

Biorąc pod uwagę historię animacji można wyróżnić dwa rodzaje animacji lub właściwie dwa etapu jej rozwoju.:

  • Klasyczną (tradycyjną) polegającą na ręcznym wytworzeniu wszystkich elementów niezbędnych do powstania kolejnych klatek filmu, a następnie sfotografowaniu ich. Tą techniką zostały zrobione filmy opowiadające przygody Kaczora Donalda, Myszki Miki, Królewny Śnieżki i Siedmiu Krasnoludków oraz innych bohaterów naszego dzieciństwa.
  • Animację komputerową, gdzie wykorzystanie grafiki komputerowej pozwala uzyskać gotowe klatki filmu lub odpowiednie efekty znacząco wpływające na odbiór wrażeń wizualnych.

 

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 animacja komputerowa nie musi być tylko „powieleniem animacji klasycznej” – ułatwieniem pracy przy realizacji filmu animowanego. Znane są współczesne przypadki łączenia różnych technik zarówno tradycyjnych jak i komputerowych. A możliwości jakie daje zastosowanie grafiki komputerowej powodują, że animacja komputerowa staje się odrębnym środkiem wyrazu. Z drugiej strony współczesne, praktycznie nieograniczone możliwości animacji komputerowej sprawiają, że znacznie poszerza się krąg jej zastosowań. To nie tylko produkcja filmów rysunkowych dla dzieci. Dzisiejsze zastosowania to przede wszystkim gry komputerowe, reklamy oraz wspomaganie tradycyjnej kinematografii poprzez kreowanie efektów specjalnych, uzupełnianie scenografii lub inne „poprawianie” obrazu dające możliwość wcielenia w życie wizji reżysera. Daje to olbrzymie możliwości realizacji filmów. Dodatkowo jest to często łatwiejsze i tańsze niż budowanie olbrzymich dekoracji

 


15.2. Percepcja obrazów ruchomych, historia animacji

Szybko zmieniające się (następujące po sobie) obrazy odbieramy jako ciągły ruch. Nawet jeśli występują przerwy pomiędzy wyświetlanymi obrazami. Oko daje się bardzo łatwo oszukać. Jednak bardzo istotna jest szybkość odświeżania            (liczba wyświetlanych klatki na sekundę). Przy źle dobranej częstotliwości pojawiają się problemy wizualne.

Najczęściej stosowane częstotliwości odświeżania:

  • 60 interlaced (59.94) – 29.97 kl/s NTSC TV.
  • 50 interlaced – 25 kl/s video, PAL, SECAM TV.
  • 30 noninterl. –  ok.30 kl/s kamery, video (coraz rzadziej używany standard).
  • 24 noninterl. ok. (25 przy przechodzeniu do PAL lub SECAM, 23.976 do NTSC) standard filmowy (film dźwiękowy) od ok. 1920 r.
  • 25 noninterl. video.
  • 50 lub 60 noninterl. high-end HDTV.
  • 72 noninterl. (też 75 noninterl.) standard eksperymentalny TV dużej rozdzielczości.

 

Pierwszy film bracia Lumière pokazali w 1895 roku (Wyjście robotników z fabryki). Jednak próby rejestracji ruchu lub jego odtworzenia były podejmowane o wiele wcześniej. Warto wspomnieć o eksperymentach J.A.Plateau z 1832 oraz o pierwszych pokazach publicznych E.Reynauda w tym samym roku. Fenakitoskop skonstruowany przez J.A.Plateau był pierwszym stroboskopowym urządzeniem pozwalającym demonstrować sekwencje ruchu wykorzystując odpowiednio przygotowane zestawy rysunków. Pierwszą osobą, która podjęła próby rejestracji ruchu technikami fotograficznymi był Eadweard Muybridge (1830-1904). Za pomocą specjalnie opracowanego systemu 24 aparatów fotograficznych zarejestrował ruch galopującego konia (rys.15.1). Zestaw tych zdjęć został opublikowany w 1878 roku.



Rys.15.1. Zestaw zdjęć galopującego konia wykonany przez E Muybridge’a,
animacja opracowana później na podstawie zestawu zdjęć.
Zestaw rysunków z wikimedii dostępny w domenie publicznej.


Stuart Blackton zrealizował pierwsze filmy animowane: Enchanted Drawing w 1900 i Humorous Phases of Funny Faces w 1906 roku. Wykorzystał w nich ręcznie rysowaną animację. W latach 20. XX wieku. Walt Disney zorganizował w Hollywood pierwsze studio rysunkowych filmów animowanych. W studiu tym powstały, znane do dzisiaj, filmy opowiadające o przygodach Mickey Mouse, Kaczora Donalda, Pluto i Goofy’iego. W 1937 roku W.Disney zrealizował  Królewnę Śnieżkę i Siedmiu Krasnoludków - pierwszy pełnometrażowy animowany film rysunkowy. A potem powstały kolejne wytwórnie i mniej lub bardziej znane dzisiaj filmy.

W ramach subiektywnego przeglądu filmów animowanych wspomnę jeszcze o dwóch. W 2001 roku w wytwórni DreamWorks powstał Shrek. Jeden z tych filmów, w których praktycznie wszystkie elementy od scenariusza, poprzez dialogi, aż po muzykę są na najwyższym poziomie. Drugim filmem jest Katedra. Polska produkcja zrealizowana w 2002 roku przez Tomasza Bagińskiego z wykorzystaniem stosunkowo prostego systemu komputerowego. Film ten był nominowany do nagrody Amerykańskiej Akademii Sztuki i Wiedzy Filmowej (Oscara) w 2003.

Większość współczesnych filmów animowanych jest realizowana z użyciem grafiki komputerowej. Aby zdać sobie sprawę z problemów jakie towarzyszą powstawaniu takich filmów, warto przytoczyć dane pierwszego filmu w całości zrealizowanego techniką komputerową. Toy Story został zaprezentowany w 1995 roku. Film trwa 77 minut; zawiera 110064 klatek. Wymagał 800000 godzin renderingu – pracy komputerów. Tygodniowo realizowano przeciętnie ok. 3,5 minuty animacji. Czas realizacji 1 klatki wynosił od 45 min do 20 godz. W realizacji filmu wykorzystano 110 wieloprocesorowych komputerów Sun (łącznie 300 CPU) pracujących 24 godziny na dobę przez 7 dni w tygodniu. Cały proces produkcji od pomysłu do powstania wersji końcowej trwał ok. 4 i pół roku. Współczesne komputery są, co prawda, o wiele szybsze, ale zadania stawiane produkcji filmów są dzisiaj znacznie bardziej skomplikowane.


15.3. Proces produkcji filmu animowanego

Animacja tradycyjna a komputerowa

Podobnie jak w filmie aktorskim, zanim rozpocznie się produkcja filmu animowanego powstaje on 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.

Po poprawkach i naniesieniu szczegółów obraz trafia na taśmę filmową lub video.

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.

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.

Rys.15.2. Proces powstawania filmu tradycyjnego i cyfrowego.


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.

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.

Warto zwrócić uwagę na rejestrację obrazu. Kamera wirtualna musi dawać możliwość uzyskania obrazu zgodnego z oczekiwaniem odbiorcy. Jest to szczególnie istotne przy łączeniu grafiki komputerowej z filmem tradycyjnym. W takiej sytuacji kamera wirtualna musi pracować całkowicie zgodnie z kamerą rzeczywistą:


Scenopis

Scenariusz filmu animowanego przedstawia jego treść w postaci planu przebiegu akcji (szkicu fabuły) z uwzględnieniem  opisu scenerii i charakterystyki bohaterów. Zawiera także pełny zestaw dialogów, jeśli film nie jest niemy. To wszystko musi zostać przełożone na język filmu ze wszystkimi ograniczeniami realizacyjnymi. Ułatwia to scenopis (rys. 15.3), zawierający opis kolejnych (lub czasem wybranych) ujęć filmu. Ujęcie jest najmniejszym, niezależnym (i niepodzielnym) fragmentem trwającym, w filmie animowanym, najczęściej kilka sekund. Scenopis zawiera uproszczony rysunek (projekt) danego ujęcia, oraz opis treści, dialogi i inne niezbędne szczegóły. Może zawierać także warianty projektu (ostatnie ujęcie prezentowanego przykładu), a także szczegóły związane na przykład ze scenerią lub tłem (rysunek szezlongu w prezentowanym scenopisie).


Rys.15.3. Strona scenopisu film Mano (2005). Zdjęcie scenopisu dzięki uprzejmości
Studia Miniatur Filmowych © w Warszawie.


Warto zwrócić uwagę, że powstawanie scenopisu jest, w pewnym zakresie, procesem bardzo dynamicznym. Scenariusz filmu raczej nie zmienia się w trakcie jego realizacji, ale pewne szczegóły tak. Stad w scenopisie mogą pojawić się zmiany lube nowe elementy.

Na podstawie scenopisu reżyser tworzy zestaw szkiców poszczególnych ujęć dla animatorów, którzy przygotują wstępne projekty ujęć.

 


15.4. Metody animacji

Wyróżnia się następujące metody animacji:

  • Animacja poklatkowa i oparta na klatkach kluczowych.
  • Animacja proceduralna.
  • Animacja wykorzystująca przechwytywanie ruchu.

 

Animacja poklatkowa polega na zestawieniu klatek zawierających kolejne fazy ruchu. Zarówno w animacji tradycyjnej jak i komputerowej, metoda ta wymaga stworzenia wszystkich kolejnych klatek filmu. Pierwotnie rysowano rzeczywiście niezależnie poszczególne klatki. Szybko jednak zauważono, że część z nich można traktować jako stany pośrednie między ważniejszymi punktami (momentami) w przebiegu akcji filmu – powstaje w ten sposób animacja oparta na klatkach kluczowych.

Animacja oparta na klatkach kluczowych składa się z następujących etapów:

  1. Wyszczególnienie i synteza klatek kluczowych charakteryzujących najważniejsze momenty ruchu lub sceny.
  2. Określenie sposobu przejścia pomiędzy klatkami – może to być realizowane w postaci równań ruchu.
  3. Wyznaczenie klatek pośrednich – na przykład za pomocą morfingu.
  4. Kontrola efektu końcowego i ewentualne poprawki.


Dzisiaj trudno formalnie rozróżnić te dwie metody  - w obu przypadkach generowane są klatki istotne dla akcji filmu oraz klatki pośrednie. Można jednak mówić o metodzie klatek kluczowych gdy rzeczywiście są one kluczowe dla akcji, ruchu, czy ujęcia. Natomiast jeśli wybór klatek był związany tylko i wyłącznie z ich liczbą lub potrzebą podzielenia fragmentu, po prostu, na mniejsze części, aby zrezygnować ze skomplikowanego generowania każdej klatki, to powiemy raczej, że mamy do czynienia z animacją poklatkową. Oczywiście trudno mówić w tym przypadku o wyraźnej granicy.

Animacja proceduralna polega na wydzieleniu parametrów sterujących przebiegiem zmian i wyznaczeniu zależności funkcyjnych między opisem parametrów, a wyglądem klatki (lub sceny). Metoda ta jest wygodna do animacji procesów fizycznych i mechanicznych.

Przykładem są kinematyka odwrotna i metoda deformacji swobodnych (FFD – Free Form Deformation).

Kinematyka odwrotna opisuje zależności ruchowe na podstawie wymaganych położeń obiektów. Jest bardzo wygodną forma dla uzyskania ruchu złożonych mechanicznie elementów, jest często wykorzystywana do animacji postaci.

Metoda deformacji swobodnych ma wiele implementacji. Najczęściej stosuje się techniki szkieletowe lub siatkowe, w których pozycje odpowiednich punktów i zależności między węzłami siatki lub szkieletu opisane są równaniami parametrycznymi.

Animacja symulacyjna wykorzystuje opis zachowania obiektów uzyskany na podstawie praw fizyki i sformułowanych na tej zasadzie równań. Rozwiązanie tak uzyskanych równań daje poszukiwaną symulację. Metoda ta jest najbardziej złożona obliczeniowo (i czasochłonna), jednak może dać bardzo dobre efekty. w modelowaniu i animacji zjawisk fizycznych.

Przechwytywanie ruchu pozwala powielić schemat zachowania obiektu na podstawie naturalnego zachowania się obiektu rzeczywistego. Jest wygodna do modelowania ruchu postaci ludzkich, zwierzęcych a także postaci fantastycznych, którym można przypisać pewne właściwości ruchowe podobne do znanych cech zwierząt lub ludzi. Metoda ta daje bardzo dobre efekty, gdyż łatwiej jest skopiować ruch zwierząt niż opisać go równaniami matematycznymi. Wadą jest konieczność stosowania specjalistycznego sprzętu do przechwytywania ruchu. Stosuje się zestawy czujników położenia, skanery trójwymiarowe lub zdjęcia poklatkowe.


Animacja poklatkowa i oparta na klatkach kluczowych

Animacja poklatkowa jest najczęściej stosowaną metodą w tradycyjnych filmach rysunkowych.



Rys.15.4. Dziwne przygody Koziołka Matołka (1969-1971).
Animacja Koziołka oparta na rozłożeniu pełnego cyklu ruchu rąk i nóg biegnącej postaci na 14 klatek.
Rysunki dzięki uprzejmości Studia Miniatur Filmowych ©  w Warszawie.


Pokazany przykład animacji Koziołka Matołka (rys. 15.4) obejmuje 14 klatek pełnego cyklu ruchu. Bardzo często dla uproszczenia wykonywano mniej klatek (na przykład 7) obejmujących ten sam cykl ruchu i aby zachować odpowiedni czas trwania akcji każdą klatkę powielano dwukrotnie. Czasami mogło to prowadzić do pewnego, nienaturalnego „szarpania” ruchu, jednak przy wartkiej (zazwyczaj) akcji całego filmu było to praktycznie niezauważalne.

Warto zwrócić jeszcze uwagę na złożoność całego ujęcia. Ruch postaci musi być skorelowany z przesuwaniem się tła. W ten sposób widz będzie miał na przykład wrażenie, że Koziołek rzeczywiście biegnie przez miasto. Ale z drugiej strony fazy ruchu postaci i fazy ruchu tła (w tym przypadku domków miasta) są całkowicie niezależne – w prezentowanym przykładzie nie ma ciągłości ruch tła. Wynika stąd możliwość niezależnego generowania obrazu postaci i tła. W tradycyjnej animacji realizowane to było na kolejnych warstwach przezroczystego celuloidu. Najwygodniej jest operować niezależnie każdą postacią oraz często niezależnie różnymi fragmentami dekoracji. Taki zestaw (gruby) celuloidu dopiero w ostatniej fazie produkcji był kopiowany na taśmę filmową. W animacji komputerowej mamy do dyspozycji warstwy rysunku, każda animowana i edytowana niezależnie. Daje to bardzo duże możliwości manipulacji obrazem.

Warto przypomnieć, że pomysły „rozwarstwienia” obrazu w technice filmowej pochodzą z początku XX wieku. W 1916 roku Frank Williams zaproponował metodę wędrującej maski (travelling matte), która została w latach 50 przekształcona w jedną z najważniejszych wykorzystywanych dzisiaj technik, występującą pod nazwą kluczowania (CSO – color separation overlay, także występuje jako chroma key, blue screen, lub czasami jako blue-box). Polega ona na filmowaniu aktora na tle jednolitej planszy (np. niebieskiej), a następnie zmontowaniu filmu wstawiając dowolne tło w miejsce barwy planszy. W czasach Williamsa wymagało to powtórnego filmowania, ewentualnie filmowania z wykorzystaniem tylnej projekcji. Dzisiaj wykonuje się to odpowiednim mikserem elektronicznym (kluczowaniem) lub programami komputerowymi na etapie postprodukcji. Dodatkowo współcześnie najczęściej realizuje się takie zadanie techniką  grey-screen – tło ma kolor szary i dobre właściwości odbijające. Dzięki temu za pomocą odpowiedniego oświetlenia można uzyskać prawie dowolny kolor tła w zależności od potrzeb. Autorzy pełnej komputeryzacji tej techniki w 1995 roku otrzymali Oscara.

Dodatkowo warto zwrócić uwagę na sposób rysowania określonych elementów poszczególnych klatek. Rysunki domków tła, w pokazanym przykładzie, są rozmazane w przeciwieństwie do postaci pierwszoplanowej (Koziołka Matołka) rysowanej wyraźną, ostrą kreską. Potęguje to wrażenie ruchu i jednocześnie daje namiastkę głębi ostrości obejmującej tylko pierwszoplanowego bohatera.

Niezależnie od produkcji filmów animowanych, metoda animacji poklatkowej jest dzisiaj dość powszechnie stosowana w postaci prostych animacji wykorzystywanych w prezentacjach lub na stronach internetowych. Realizowane to jest na przykład w postaci animowanych gifów. Oczywiście wymaga to wygenerowania zestawu rysunków obejmujących pełny cykl ruchu i połączeniu ich w jedną animację.

Klatka kluczowa (keyframe) jest związana z charakterystycznym punktem scenariusza, momentem ruchu lub fazą ujęcia (rys.15.5). Klatki kluczowe wyznaczają etapy rozwoju akcji filmu, ale także mogą charakteryzować postaci (na przykład przez mimikę twarzy). Klatki kluczowe zawsze planował i rysował główny animator („keyframer”). Natomiast klatki pośrednie traktowane były jako wypełnienie luk między klatkami kluczowymi – stąd animatorzy rysujący klatki pośrednie nazywani byli „inbetweenerami”. Ich zajęcie, chociaż niezbędne dla całego procesu powstania filmu, traktowane było zawsze jako prostsze i mniej ambitne. Dzisiaj zadanie generowania klatek pośrednich realizuje zazwyczaj komputer.


Rys.15.5. Animacja odbicia piłeczki, rysunek pokazujący zestaw poszczególnych klatek. 
Ciemnozielonym kolorem zaznaczone są położenia piłeczki odpowiadające klatkom kluczowym.


Warto zwrócić uwagę na problem czasu, a właściwie jego kontroli, w powstawaniu filmu animowanego. Film o określonym czasie trwania przekłada się na określoną liczbę klatek, a to z kolei limituje możliwości rysowania określonych faz ruchu, aby sprawiał on wrażenie ciągłego. Zadanie planowania klatek kluczowych jest ściśle związane z rozwojem akcji i związanym z nią upływem czasu. Jest to jednym z najtrudniejszych zadań głównego animatora. Problem komplikuje fakt, że poszczególne etapy akcji, poszczególne fazy ruchu najczęściej nie dają się opisać prostymi zależnościami liniowymi. Rzeczą, która jest zawsze stała w filmie animowanym jest odstęp czasu pomiędzy poszczególnymi klatkami natomiast zawartość klatek musi być dopasowana do upływu czasu. W najprostszym przykładzie animacji odbijającej się piłeczki, jej położenia w określonych momentach określają prawa fizyki. Nieuwzględnienie ich spowoduje nienaturalny ruch, co na pewno zostanie zauważone przez odbiorcę. Aby rozwiązać tego typu problemy, w metodzie klatek kluczowych wykorzystuje się tzw. krzywe (ścieżki lub linie) ruchu. Określają one położenie obiektu w danym momencie. Współczesne programy animacyjne wspomagają realizację klatkami kluczowymi pozwalając na dowolne, nieliniowe manipulowanie krzywą ruchu, a tym samym położeniem obiektu w określonym momencie.

Prezentowany rysunek (rys.15.5) pokazuje odbicie zakładając, że piłeczka nie odkształca się przy kontakcie z przedmiotem, od którego się odbija. Uwzględnienie tego typu parametrów znacznie poprawiłoby odbiór animacji.


Animacja proceduralna i symulacyjna

Animacja proceduralna pozwala opisać zależnościami funkcyjnymi zmiany położeń lub kształtów. Stosuje się kinematykę (prostą i odwrotną) lub metodę deformacji swobodnych.

Ruch złożonych mechanizmów lub postaci wymaga opisania zależności między poszczególnymi segmentami obiektu – powiązania „stawami” segmentów. Na przykład animacja ręki wymaga połączenia ruchów ramienia, przedramienia, dłoni i palców. Połączenie segmentów tworzy łańcuch kinematyczny o skończonej liczbie ogniw. Jest to łączenie hierarchiczne tzn. dla każdego segmentu można wyróżnić segment nadrzędny i podrzędny w łańcuchu. Warto przy tym zwrócić uwagę na sposób wydzielenia segmentów. W przypadku postaci ludzkich czy zwierzęcych znana jest ich budowa anatomiczna i na tej podstawie budowany jest łańcuch kinematyczny. Podobnie dla obiektów mechanicznych o znanej konstrukcji. Natomiast dla postaci fantastycznych lub innych nieznanych obiektów trzeba przeprowadzić modelowanie szkieletu – wydzielenie segmentów i opracowanie zależności mechanicznych pomiędzy nimi. Dla każdego połączenia (stawu) trzeba zdefiniować stopnie swobody segmentów. Stopnie swobody określają liczbę prostych ruchów możliwych do wykonania. Na przykład ciało swobodne ma 6 stopni swobody w układzie kartezjańskim (trzy translacje i trzy obroty).

                                       

Rys.15.6 Przykład zastosowania kinematyki odwrotnej do wyznaczenia kątów położenia ramienia i przedramienia.
Rysunek opracowany przez Z.Huang i A.Elians  © VU.Amsterdam, dzięki uprzejmości Z.Ruttkay, University of Twente.


Kinematyka prosta (forward kinematic) opisuje zależności w łańcuchu kinematycznym od segmentu nadrzędnego do podrzędnego. Aby uzyskać opis ruchów palców dłoni analizujemy ciąg: bark -> ramię-> przedramię-> dłoń-> palce.

Kinematyka odwrotna (inverse kinematic) opisuje zależności w łańcuchu kinematycznym od segmentu podrzędnego do nadrzędnego. W tym przypadku można rozpocząć analizę od docelowego położenia ostatniego (najbardziej podrzędnego w hierarchii) segmentu i na tej podstawie wyznaczyć położenie segmentów pozostałych – np. szukamy położenia ramienia i przedramienia, aby zapewnić położenie dłoni i palców w określonym punkcie.


Animacja wykorzystująca przechwytywanie ruchu

Trudności w wiarygodnym pokazaniu ruchu postaci są znane twórcom filmowym od początku historii filmu animowanego. O wiele łatwiej zaakceptować widzowi umowność rysunku lub brak szczegółów niż, na przykład, nienaturalne poruszanie ręką – poruszanie niezgodne z naszym wyobrażeniem. Naturalnym pomysłem rozwiązania tego problemu było wzorowanie ruchów animowanych postaci na rzeczywistych ruchach ludzi. W tym celu zatrudniano modeli zastygających w pozach (często niewygodnych) odpowiadających klatkom kluczowym.  Jeśli nie było to możliwe, animatorzy musieli wykonać perfekcyjne rysunki na podstawie wyobrażenia postaci.  Pierwszą metodą ułatwiającą to zadanie była otoskopia (rys.15.7). Polega ona na filmowaniu aktora wykonującego sekwencję ruchu, a następnie wykonywaniu rysunków na podstawie zdjęć poklatkowych takiego filmu. Pierwszym znanym filmem, w którym wykorzystano rotoskopię była Królewna Śnieżka Walta Disneya. Metoda ta jest czasem również stosowana współcześnie.


Rys.15.7. a) Rysownik przygotowujący klatkę filmu metodą rotoskopii, b) Koń animowany na zasadach rotoskopii na podstawie zdjęć Eadwearda Muybridge’a. Rysunki  dostępne w domenie publicznej pochodzą z Wikipedii.


W latach osiemdziesiątych XX wieku na Simon Fraser University podjęto badania nad automatycznym przechwytywaniem ruchów postaci (motion capture). W celach komercyjnych metodę tę zastosowano po raz pierwszy w technice filmowej w 1984 roku. Była to 30 sekundowa reklamówka – „Sexy robot” (“Brilliance”) – zrobiona dla firmy National Canned Food Information Council. Do produktów firmy, głosem Kathleen Turner, zachęcał animowany robot. Aby zachować naturalność ruchów postaci, Robert Abel opracował optyczny system przechwytywania ruchu na podstawie położenia markerów umieszczonych na ciele aktorki. Niepowodzenia w 1990 roku przy realizacji filmu „Pamięć absolutna” („Total Recall”) z Arnoldem Schwarzeneggerem zahamowały rozwój systemów przechwytywania ruchu. Do problemu powrócono w 1997 roku podczas produkcji „Titanica”. Od tego czasu większość filmów wymagających efektów specjalnych, a także gier
komputerowych, jest realizowana z wykorzystaniem techniki przechwytywania ruchu (motion capture).


Rys.15.8. Kadr z filmu reklamowego „Sexy robot”.
Kopia pojedynczego kadru filmu dostępnego w domenie publicznej 
na platformie youtube.com
Copyright law as fair use, dozwolony użytek  w celach edukacyjnych


Najprostszym rozwiązaniem realizacji przechwytywania ruchu jest system elektromechaniczny. Aktor zakłada strój (egzoszkielet) w formie sztywnego stelażu. Egzoszkielet zawiera zestaw czujników, pozwalających monitorować wzajemne położenia między jego elementami. Jest to, oczywiście, tak skonstruowane, aby w jak najmniejszym stopniu ograniczać ruchy aktora. Analiza wzajemnych położeń między elementami egzoszkieletu pozwala, w czasie rzeczywistym, określać i rejestrować położenie ciała aktora.  System elektromechaniczny jest najmniej dokładny spośród znanych rozwiązań przechwytywania ruchu. Wadą tego systemu jest także konieczność używania niewygodnego egzoszkieletu. Jest to jednak rozwiązanie praktycznie najtańsze, co jest jego podstawową zaletą. Dodatkowo jest to rozwiązanie niewymagające rozstawiania zestawu czujników zewnętrznych, tak jak w systemach optycznych.

System elektromagnetyczny (magnetyczny) wykorzystuje rejestrację zmian strumienia magnetycznego wywołaną zmianą wzajemnego położenia czujników (nadajników i odbiorników). Aktor zakłada strój z zestawem czujników połączonych kablem (najczęściej) z komputerem. System zawiera zwykle stosunkowo małą liczbę czujników (kilkanaście). Dokładność pomiaru położenia jest lepsza niż systemów mechanicznych, ale gorsza niż optycznych. Analiza położenia jest jednak szybsza niż systemów optycznych. Do podstawowych wad systemu elektromagnetycznego należy zaliczyć wrażliwość na zakłócenia zewnętrzne – na zewnętrzne pole magnetyczne.

Systemy optyczne oparte są na analizie położenia punktu (markera) na podstawie kilku niezależnych rzutów tego punktu. Na stroju aktora jest umieszczony zestaw od kilkunastu do kilkudziesięciu markerów (rys.15.9). Kamery rozmieszczone wokół sceny rejestrują obraz  aktora i markerów. W zależności od liczby aktorów na scenie stosuje się od kilku do kilkudziesięciu kamer. Kamery muszą objąć całą przestrzeń sceny i dawać możliwość rejestracji markerów także przy wzajemnym zasłanianiu się aktorów. Na podstawie rzutów markera komputer wyznacza jego położenie w przestrzeni. System optyczny jest najdroższym ze znanych rozwiązań przechwytywania ruchu. Daje jednak możliwość najbardziej dokładnego pomiaru położenia (rzędu ułamków milimetra). Strój z markerami optycznymi jest najmniej kłopotliwym rozwiązaniem dla aktora spośród wszystkich systemów przechwytywania ruchu. Prezentowany na rysunku 15.9 system jest przykładem systemu przechwytywania z możliwością śledzenia reakcji wirtualnej postaci.


Rys.15.9. Studio przechwytywania ruchu: system optyczny - widoczne kamery (trakery) umieszczone na trójnogach. Poruszający się aktor ubrany w strój z markerami.  Zdjęcia dzięki uprzejmości Virtual Magic ©  i ATM Grupa ©.



Rys.15.10. Aktor w studiu przechwytywania ruchu oraz zdjęcie monitora z obrazem postaci rysowanej
w czasie rzeczywistym na podstawie analizy położenia markerów umieszczonych na kostiumie aktora.
Zdjęcia dzięki uprzejmości Virtual Magic ©  i ATM Grupa ©.


Wyróżnia się systemy optyczne pasywne i aktywne. W systemach pasywnych markery odbijają światło we wszystkich kierunkach – a przede wszystkim w kierunku źródła (odbicie powrotne – retroreflection). Markery są punktami pokrytymi farbą lub tworzywem o odpowiednich właściwościach odbijających.  W pierwszych systemach optycznych stosowano piłeczki pingpongowe. W systemach aktywnych markery emitują światło. Najczęściej stosuje się diody elektroluminescencyjne emitujące promieniowanie podczerwone. Aby ułatwić analizę przy dużej liczbie czujników, często każdy z nich emituje impulsy (błyski) z inną częstotliwością.

Rozpatrzmy dwie kamery K1 i K2 śledzące poruszający się punkt P zgodnie z rysunkiem 15.11. Jeśli znane jest położenie kamer oraz ich ustawienie, to można określić rzuty P’ i P” . Rzuty te definiują proste, których przecięciem jest szukany punkt P. Stąd jego współrzędne można wyznaczyć korzystając z prezentowanych równań. W praktyce, na skutek zakłóceń i błędów pomiarów może się okazać, że proste zdefiniowane przez rzuty P’ i P” wcale się nie przecinają. W takiej sytuacji należy wyznaczyć punkt P będący punktem najbliższym obu prostych.


Rys.15.11. Działanie optycznego systemu przechwytywania ruchu.
Wyznaczenie współrzędnych położenia markera na podstawie jego  rzutów.


Do określenia położenia punktu wystarczą dwie kamery. Jednak aktor poruszając się może zasłaniać markery umieszczone na ubraniu. Na scenie może być także wielu aktorów, którzy zasłaniają się wzajemnie. Z tego powodu stosuje się wiele kamer, aby bez względu na pozę aktora lub ich liczbę, każdy marker był zawsze „widziany” przynajmniej przez dwie kamery.

Dzięki rozwojowi algorytmów rozpoznawania obiektów i przetwarzania obrazów w ostatnich latach. A także dzięki bardzo szybkiemu rozwojowi sprzętu komputerowego systemy optyczne wyparły praktycznie całkowicie pozostałe rozwiązania. Systemy mechaniczne czy magnetyczne są stosowane tylko i wyłącznie w wyjątkowych, specjalizowanych przypadkach. Jednocześnie powstały systemy kamer bezmarkerowych. Oznacza to, że i nie ma konieczności umieszczania markerów na ubraniu lub ciele aktora. Kamery śledzące ruchy aktora dostarczają obrazy bez markerów, a odpowiednie algorytmy pozwalają rozpoznawać odpowiednie elementy ciała aktorów. Analiza kilku obrazów z różnych kamer daje współrzędne określonych charakterystycznych punktów, najczęściej stawów, dłoni, palców i/lub elementów głowy. Dzieję się to na tej samej zasadzie jak w klasycznych systemach markerowych.

Duża szybkość pracy systemów przechwytywania ruchu (optycznych lub magnetycznych) pozwala wygenerować wirtualne postacie w czasie rzeczywistym. Prezentowane zdjęcia pokazują system optyczny aktywny, którego jednym z elementów jest stojący na scenie ekran. Dzięki niemu aktor może na bieżąco śledzić ruchy wirtualnej postaci.

Mimo niezaprzeczalnych zalet stosowania systemów przechwytywania ruchu w kreowaniu realistycznie poruszających się wirtualnych postaci trzeba wspomnieć o ich wadach.

  • Występuje konieczność stosowania bardzo specjalistycznego sprzętu i oprogramowania.
  • Związane jest to z wysokimi kosztami (co najmniej kilkadziesiąt tysięcy dolarów).
  • Koszty te mogą utrudniać powstawanie małych, niskobudżetowych produkcji.
  • Powstają problemy skalowania postaci – wymiary wirtualnych postaci, szczególnie fantastycznych, nie zawsze odpowiadają budowie ciała aktorów, wymaga to dodatkowego przetwarzania ścieżek ruchu,
  • Podobny problem występuje w przypadku scenariusza przewidującego ruchy niezgodne z wyobrażeniami lub niezgodne z fizyką – co często występuje w filmach animowanych.

Pierwsze zastosowania systemów przechwytywania ruchu były związane z kinematografią. Rzeczywiście MoCap upraszcza znacznie kreowanie postaci filmowych i modelowanie ich ruchu. Daje przy tym praktycznie nieograniczone możliwości. Warto jednak zwrócić uwagę także na inne obszary zastosowań systemów przechwytywania ruchu.

Bardzo ważnym zastosowaniem są różnego typu symulatory, wykorzystujące grafikę komputerową do umożliwienia pracy w wirtualną rzeczywistości. Możliwość przechwycenia położenia ciała osoby przebywającej w takiej wirtualnej rzeczywistości daje sprzężenie zwrotne w obsłudze symulowanych obiektów i pozwala bardziej zanurzyć się w wirtualny świat.

Jednak najważniejszym dzisiaj zastosowaniem systemów przechwytywania ruchu są zastosowania medyczne. Precyzyjna kontrola położenia kończyn czy stawów daje możliwość znacznie skuteczniejszej rehabilitacji i poprawy zdrowia pacjentów. Jeśli wejdziemy na strony firmowe najważniejszych producentów sprzętu i oprogramowania do przechwytywania ruchu, to zastosowania medyczne będą dzisiaj dominowały. Odnajdziemy wiele różnych wariantów kamer trakingowych i wiele zestawów różnego sprzętu pomocniczego, który nie jest potrzebny w wytwórniach filmowych ale w szpitalach i ośrodkach rehabilitacyjnych.


15.5. Etapy powstawania klatki współczesnego filmu animowanego

Proces kreowania pojedynczej klatki nie odbiega w zasadzie od standardowego procesu powstawania obrazu w grafice komputerowej. Warto natomiast zwrócić uwagę na modelowanie obiektów na scenie filmu animowanego.  Modelowane są te obiekty, które są widoczne. Pod uwagę brana jest przy tym nie tylko dana scena, ale cały film, lub przynajmniej pewna sekwencja klatek (rys.15.12). Stąd w górnej części rysunku15.12 widoczna jest pełna siatka drzwi, chociaż są one otwarte i niewidoczne. Jednak w jednym z następnych ujęć będą one zamknięte (rysunek dolny) stąd potrzebny jest ich pełny model. Modelowanie obiektów filmu wymaga przeanalizowania całego scenopisu i określenia jakie obiekty i w jakim zakresie powinny zostać w określonej scenie zamodelowane.


Rys.15.12. Kolejne fazy tworzenia jednej klatki filmu animowanego: rysunek szkieletowy,
wypełnienie powierzchni z eliminacją elementów zasłoniętych, nałożenie faktury i barwy.
Na dole jedno z kolejnych ujęć filmu. Klatki filmu Mano (2005).
Rysunki dzięki uprzejmości Studia Miniatur Filmowych © .


 


15.6. Fizyka animacji, wykrywanie kolizji

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.

Zachowanie się obiektów zależy od ich typu. Wyróżnia się modelowanie obiektów sztywnych przegubowych i modelowanie obiektów deformowalnych.

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.

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.

 


15.7. Animacja postaci

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.

Wyrażanie uczuć emocji jest dodatkowym ale bardzo ważnym problemem. Podejmowane są liczne próby, często bardzo udane, przełożenia stanów emocjonalnych na modele animowanych postaci (rys. 15.13). Podobne podejście pozwala modelować twarz z uwzględnieniem uczuć i emocji (rys. 15.14). Jednak 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.


Rys.15.13. Animacja postaci.  Przykład próby animacji gestykulacji z uwzględnieniem emocji.
Górny rząd osoba ekstrawertywna, dolny – introwertywna.
W kolumnach od lewej podkreślenie czegoś, wyszczególnienie, przeproszenie, pozdrowienie.
Rysunki dzięki uprzejmości Z.Ruttkay, University of Twente.


Rys.15.14. Modelowanie twarzy.
a) Koło emocji. b) Przykłady twarzy modelowanych na podstawie koła emocji.
Dzięki uprzejmości Z.Ruttkay, University of Twente


Prezentowany przykład na rys. 15.14. pokazuje modelowanie twarzy wykorzystujące przekaz emocji. Warto podkreślić, że wszystkie uwagi dotyczące animacji w tym rozdziale były związane tylko ze sprawami technicznymi. A tak naprawdę film animowany, bez względu na to czy jest to animacja tradycyjna, czy komputerowa, jest środkiem wyrazu – sposobem wypowiedzi twórcy dzieła i sposobem przekazania pewnych treści odbiorcy. W tym momencie zaczynają odgrywać role emocje, uczucia i wrażliwości, a to nie musi być związane z bardzo wyrafinowaną technicznie formą przekazu. Znane są przykłady znakomitych dzieł sztuki filmowej realizowanych bardzo prostymi środkami.


15.8. Modelowanie i animacja twarzy

Każdy z wymienionych sposobów modelowania twarzy pozwala uzyskać poprawne efekty. Zależnie jednak od potrzeb uzyskania odpowiedniego poziomu szczegółowości wybrane modele mogą być mniej lub bardziej przydatne. Wydaje się, że najlepszym rozwiązaniem byłby model anatomiczny opisujący budowę głowy w sposób jak najbardziej zbliżony do rzeczywistości. Uwzględnienie właściwości fizycznych poszczególnych warstw mięśni i skóry oraz ich wzajemnych powiązań powinno dać w efekcie końcowym rysunki odpowiadające rzeczywistości. Model taki jest jednak bardzo skomplikowany i manipulacja nim w celu uzyskania oczekiwanej mimiki twarzy staje się niezwykle trudna i pracochłonna, a co za tym idzie również kosztowna. Odwzorowanie kształtu samej powierzchni twarzy z wykorzystaniem systemów przechwytywania ruchu może dać równie dobre, a jednocześnie szybsze efekty.  Przechwytywanie ruchu nie jest w ogóle związane z budową anatomiczną natomiast wymaga odpowiedniego „zagrania” sceny przez aktora, którego twarz jest odwzorowywana.

Systemy przechwytywania ruchu są również stosowane do rejestracji mimiki twarzy (facial mocap) – rysunek 15.15. Wymaga to jednak o wiele większej precyzji niż w zwykłych zastosowaniach. Wykorzystuje się systemy optyczne pasywne. Nie wymagają one zasilania tak jak systemy aktywne, wystarczy umieszczenie od kilkunastu do kilkudziesięciu markerów (punktów odbijających światło) na twarzy aktora. Odpowiedni zestaw kamer pozwala wyznaczyć położenie każdego markera (punktu twarzy) z dokładnością do ułamków milimetra.

Są to najdroższe systemy do przechwytywania ruchu, ale pozwalają najszybciej wykreować realistyczne wirtualne postacie i ich twarze.  Systemów przechwytywania mimiki twarzy nie stosuje się do rejestracji ruchów języka oraz gałek ocznych i powiek. Prezentowane rysunki pokazują także siatkę opracowaną na podstawie danych uzyskanych z systemu przechwytywania. Siatka taka zostaje z reguły poddana obróbce: uzupełniane są punkty odpowiadające powiekom i ewentualnie językowi. Dodawane są siatki gałek ocznych i zębów, które w ogóle nie podlegają przechwytywaniu. Jednocześnie można wpłynąć na kształt twarzy poprzez dodatkowe odkształcenie siatki (na przykład uwydatnienie kości policzkowych na rysunku 15.15).


Rys.15.15. Zastosowanie przechwytywania ruchu do modelowania twarzy.
Od lewej: zdjęcie aktora z markerami na twarzy, utworzona siatka, postać wirtualna.
Zdjęcia dzięki uprzejmości Janusza Gajdeckiego http://www.art.dfx.pl/   ; .   


Warto zwróci uwagę na fakt, że podobnie jak systemy do przechwytywania ruchów postaci, tak i systemy do przechwytywania ruchu do modelowania twarzy najczęściej dzisiaj działają w technice bezmarkerowej. Problemem okazało się zapewnienie możliwości ruchów głową, niezależnie od pozycji aktora i niezależnie od pozycji filmującej kamery. Kamery trakingowe wykorzystywane do rejestracji położenia ciała aktorów na planie filmowym z dużej odległości, nie dają możliwości przechwytywania jednocześnie położenia subtelnych elementów twarzy. Rozwiązaniem okazała się miniaturyzacja kamer dedykowanych do analizy obrazu twarzy i umieszczenie takiej kamery na odpowiedniej lekkiej konstrukcji zawieszonej na szyi. W ten sposób kamera rejestruje obraz twarzy zawsze w taki sam sposób (i z tego samego punktu względem twarzy) bez względu na położenia aktora na planie i bez względu jego ruchy głową.


 


15.9.Łączenie filmu fabularnego i grafiki komputerowej

Modelowanie i animacja twarzy jest przykład wykorzystania grafiki komputerowej w filmie fabularnym.

Prezentowane rysunki pokazują, że nawet tak skomplikowane elementy jak ludzkie twarze mogą być „dorysowane” z pomocą grafiki komputerowej. Rysowanie realistycznej ludzkiej twarzy jest jednym z najtrudniejszych zadań. Każdy z nas, od dzieciństwa obcuje z widokiem twarzy i nawet najdrobniejsze błędy – niezgodności z oczekiwaniem będą natychmiast zauważone. Model wykorzystywany w Matrixie opierał się na siatce trójkątów (ok. 10 milionów) uzyskanej na podstawie trójwymiarowego skanowania twarzy aktora. Model składał się z dwóch warstw – warstwy geometrii (kształtu) o małej rozdzielczości i warstwy o dużej rozdzielczości opisującej właściwości odbiciowe powierzchni skóry. Na podstawie zdjęć z 30 kamer umieszczonych wokół głowy aktora zbudowano analityczny model BRDF opisujący odbicie dla każdego trójkąta siatki. Wykorzystano przy tym mapowanie przesunięć (displacement mapping) dla większych szczegółów i mapowanie nierówności (bump mapping) dla mniejszych szczegółów.


Rys.15.16. Modelowanie twarzy. a) Neo, „Matrix reaktywacja”, z lewej grafika komputerowa, z prawej zdjęcia aktora.
b) Agent Smith,  „Matrix reaktywacja”, grafika komputerowa.
Zdjęcia pochodzą z prac: Borshukov G., Lewis J.P.: Realistic Human Face Rendering for „The Matrix Reloaded”,
SIGGRAPH 2003 Sketch #2,
Mihashi T., Tempelaar-Lietz C., Borshukov G.: Generating Realistic Human Hair for „The Matrix Reloaded”,
SIGGRAPH 2003 Sketch #4.
Copyright law as fair use, dozwolony użytek  w celach edukacyjnych.

Jednym z dodatkowych problemów, na który warto zwrócić uwagę jest rysowanie (i modelowanie) włosów postaci. W przypadku postaci Matrixa każdy pojedynczy włos był w pierwszej fazie pracy zamodelowany niezależnie przy użyciu NURBS. Następnie zostały wykreowane prymitywy do modelowania i analizy cienia w rysowaniu układu włosów. Dodatkowo zostało użyte modelowanie wolumetryczne.

Oczywiście warto byłoby wspomnieć także o innych filmach, w których wykorzystano grafikę komputerową. Jedną z najciekawszych realizacji jest trylogia Władca Pierścieni, a szczególnie postać Golluma. Efekt widoczny na ekranie uzyskano dzięki połączeniu zdjęć aktora i symulacji komputerowych. Wielkie sceny batalistyczne we współczesnych filmach powstają raczej dzięki symulacjom komputerowym. We wspomnianej trylogii, w jednej ze scen bitwy gdzie walczy sześciotysięczna armia orków zatrudnionych było tylko 175 statystów.

Bez grafiki komputerowej nie mogłyby powstać nie tylko takie filmy jak Diuna, Avatar, Matrix i Władca Pierścieni, ale także Star Trek, Park Jurajski, Terminator 2, Głębia, Titanic, Wodny Świat, Obcy oraz wiele, wiele innych. I to nie tylko ze względu na kreowanie nieistniejących stworów lub rejestrowanie niemożliwych do wykonania ewolucji. Oglądając w kinie przepiękne widoki, niczym nieskażonej i bajecznie kolorowej roślinności, bezkresne tafle szmaragdowego morza czy perfekcyjnie romantyczne zachody słońca warto zastanowić się, kiedy kończy się filmowanie naturalnych krajobrazów, a kiedy zaczyna komputerowa wizja reżysera.