Rozdział 13. OŚWIETLENIE GLOBALNE: METODA BILANSU ENERGETYCZNEGO

13.8. Grafika nierealistyczna

Metody i algorytmy prezentowane w tym i poprzednich rozdziałach były opracowywane w celu jak najwierniejszego oddania fizycznych właściwości opisujących rozchodzenie się światła. Taki cel przyświecał opracowywaniu kolejnych modeli odbicia światła, algorytmów opisu oświetlenia globalnego. Porównania metody śledzenia promieni i metody energetycznej uwzględniają, przede wszystkim, ich wierność oddania barw w stosunku do widoku rzeczywistych obiektów. Do tego wierność geometrii zapewniona regułom odpowiedniego rzutowania. Porównujemy te efekty do wrażeń związanych z obserwacją rzeczywistości – wrażeń wzrokowych. A także do wrażeń związanych z odbiorem fotografii – niedoskonałej przecież. Warto jednak pamiętać, że grafika realistyczna to tylko jeden z nurtów rozwoju grafiki komputerowej. Co prawda rzeczywiście liczne zastosowania sprawiają, że grafika realistyczna jest chyba najważniejszą i najszybciej rozwijającą się częścią grafiki. Jednak nie zawsze potrzebne są obrazy realistyczne. Często ważniejsze są obrazy symboliczne, uproszczone i schematyczne. Oprogramowanie pozwalające kreować takie obrazy jest stosowane do ilustracji książek, prezentacji czy instrukcji obsługi. W ten sposób rozwinęła się technika zwana grafiką (lub renderingiem) nierealistycznym (Non-Photorealistic Rendering – NPR). Formalnie można próbować podzielić NPR na różne obszary zastosowań:

  • Wizualizacje danych, a więc wykresy 2D i 3D w różnych formach. Tego typu rysunki mogą być generowane np. programami obliczeniowymi i arkuszami kalkulacyjnymi.
  • Rysunki dokumentujące rozwiązania techniczne na potrzeby określonej technologii lub np. pokazujące działanie urządzeń. Proste symulacje wybranych funkcji urządzeń lub nawet zdarzeń rzeczywistych. Także instrukcje obsługi.
  • Rysunki ilustracyjne na potrzeby reklamy lub wykorzystania w dowolnych mediach. Ilustracje w książkach i czasopismach. Czasami wyróżnia się w tej kategorii ilustracje do książek dla dzieci, gdyż zwraca się szczególną uwagę na ich jakość.
  • Elementy systemów komunikacji człowiek – komputer. Od pojedynczych ikon do całej „zabudowy” graficznej okien. Tworzeniu tych rysunków towarzyszy specyficzne podejście: realistyczność nie tylko nie jest konieczna ale wręcz unikana. Najważniejsza jest jednoznaczność interpretacji pozwalająca przyspieszyć komunikację.
  • Animacja pseudo tradycyjna. Kiedy twórcy celowo posługują się określonym poziomem umowności lub symboliki. Współczesne filmy animowane często nawiązują stylem do produktów największych twórców animacji z początków kina. Oczywiście wykorzystując grafikę komputerową a nie tradycyjne malowanie na celuloidzie.
  • Sztuka. Twórca posługując się grafiką komputerową może uzyskać efekty jakie daje określona technika. Obrazy (także w postaci odpowiednich rzutów świata trójwymiarowego) zgodnie z wyobrażeniami dowolnego stylu ilustracyjnego (malarstwo, szkic, rysunek ołówkiem, akwaforta, litografia, itp. itd.). Znane są przykłady programów umożliwiających przetworzenie np. zdjęcia na obraz wykonany określoną techniką (np. olej lub akwarela) lub też na obraz namalowany w określonym stylu (np. impresjonizm).

 


Rys.13.7. Przykłady grafiki nierealistycznej (Non-Photorealistic Rendering – NPR)
wszystkie rysunki są udostępniane w domenie publicznej wikimedia i wikipedia
 na licencji Creative Commons


Z drugiej strony można zastanawiać się nad rozwojem różnych technik grafiki komputerowej. Grafika typu NPR wymusiła określone metody renderowania. Wydaje się że najciekawszymi przykładami są dwie techniki cieniowania, niestosowane w renderowaniu realistycznym:

Cieniowanie kwantyzowane (cel shading lub toon shading) [7]. W cieniowaniu tym wykorzystywany jest standardowy model obiektu 3D dla którego wyznacza się barwy elementów (docelowo poszczególnych pikseli rysunku) zgodnie z przyjętym modelem odbicia światła. Jednak w końcowej fazie definiowania barwy stosuje się bardzo mały zbiór różnych dostępnych barw. Barwy zostają skwantyzowane. Daje to efekt bardzo podobny do uproszczonego ręcznego rysowania obiektów 3D. Nazwa cel shading pochodzi od arkuszy celuloidu stosowanych do przygotowywania obrazów w tradycyjnej animacji. Arkusze takie potocznie nazywane były cel.

Cieniowanie Goocha (Gooch shading) [8] polega na powiązaniu barwy, jaka jest wyznaczana dla każdego elementu obiektu 3D (docelowo piksela) od kierunku wektora normalnego. Przyjmuje się, że dostępna jest skala barw od ciepłej (np. barwa żółta) do zimnej (np. niebieska/granatowa). Dla każdego punktu obiektu wyznaczany jest iloczyn skalarny wektora normalnego i wektora skierowanego do źródła światła. Im wyższa wartość tego iloczynu tym cieplejsza barwa jest przypisana danemu punktowi. Oznacza to, że elementy skierowane w kierunku źródła światła są pokazane jako cieplejsze a skierowane w stronę przeciwną jako zimniejsze. Cieniowanie Goocha stosuje się także w przypadku cieniowania płaskiego, wtedy cała ściana obiektu przyjmuje tę samą barwę. Oczywiście także ze skali ciepła - zimna.

Rys.13.8. a) Porównanie grafiki realistycznej (powierzchnia plastikowa)
i cieniowania kwantyzowanego (cel shading),
b) Przykład cieniowania kwantyzowanego,  c) przykład cieniowania Goocha.  
wszystkie rysunki są udostępniane w domenie publicznej wikimedia i wikipedia
 na licencji Creative Commons.


Książki [5,6] są w całości poświęcone technice Non-Photorealistic Rendering. Dobry przegląd technik i narzędzi programistycznych stosowanych w NPR można znaleźć w artykule [9]. Jest to również publikacja, w której autorzy na wielu przykładach pokazali rozwój NPR jako działu grafiki komputerowej od początku tej techniki (lata sześćdziesiąte ubiegłego stulecia) do czasów współczesnych.