Grafika występuje w całym Internecie. Jest poważna lub groteskowa. Jak w przypadku innych dziedzin, także w tej występuje drastyczna różnica poziomu wykonania. W każdym przypadku autor chce przedstawić nam jakąś myśl. Często próbuje użyć głębi. Jakby się nie starał, to zawsze będzie grafika 2D - płaska z iluzją głębi. My zajmiemy się rzadko spotykaną grafiką w pełni 3D. Większość osób kojarzy ją z gier, ale czy o to nam chodzi? Nie do końca. W grach używamy prostych obiektów i ubogich efektów. Oczywiście powstaje przestrzeń często ciekawa i ładna, ale mało realistyczna. Potrzeba niemało umiejętności, by stworzyć przestrzenny projekt. Pójdźmy dalej... By powstała fotorealistyczna wizualizacja, czyli scena przedstawiająca obiekt, potrzebujemy niemal precyzyjnego wykorzystania kilku elementów:
1. Światło - odbijając się, ukazuje nam obraz materii (u nas modeli). Dzięki niemu mamy kolory, cienie, a przede wszystkim głębię. Wbrew pozorom dobranie świateł, mieszanie ich i ustawienia nie są prostą sprawą. Tu trzeba mocno wytężyć wyobraźnię. Gra świateł jest najważniejszym elementem. Chcemy osiągnąć fotorealizm, więc dużo czasu musimy poświęcić na testowanie. W grach niestety występuje przeważnie światło uproszczone lub gotowe/statyczne (nałożone wcześniej/prerenderowane).
2. Modele - światło musi się od czegoś odbijać. Czym dokładniej odwzorujemy i dopracujemy model, tym potężniejszą scenę osiągniemy. W grach modele są wielokrotnie prostsze niż w wizualizacjach.
3. Materiały - materiały symulują rodzaj powierzchni (szkło, chropowatość, lustro itp). Wszelkie refleksy, prześwity, refrakcje itp. wspomagamy teksturami, czyli gotowymi obrazkami 2D, które wcześniej przygotowaliśmy. Rozkładamy odpowiednio na obiekcie. Czasami dodajemy shader, czyli dodatkowy efekt. Stworzenie odpowiedniego materiału i dopasowanie go do sceny jest bardzo trudne. W grach materiały mało kiedy oddziałowują na światło w ciekawy sposób, a textury mają małą rozdzielczość.
4. Dobry projekt sceny. Architektura w grach jest także dobrze przemyślana.
Jest jeszcze wiele elementów, które wpływają na fotorealizm naszej grafiki 3D, np. kamera, dodatkowe efekty itp. Nie są one jednak aż tak ważne, co pierwsze cztery. Tak przygotowaną scenę komputer może przetwarzać dość długo. Rysuje nam jeden kadr, a robić to może nawet kilka tygodni. Co zrobić, by odbierał powyżej 15 takich kadrów na sekundę? Niestety, nie da się poza złożeniem ich w animację. Robimy jednak niewiele gorszej jakości uproszczone sceny, ale lepsze niżeli w grach. Wirtualny spacer czy program szkoleniowy nie ma wielu elementów występujących w grach, które możemy zastąpić lepszą grafiką.
W artykule nie krytykuję tak potężnej multidziedziny, jaką jest gra. Przedstawiam jednak grafikę na dużo wyższym poziomie niż może być użyta w grze. Sam stworzyłem kilka tytułów gier na PC. Dzięki temu poznałem wiele technik optymalizacji.
Oto przykład mojej grafiki:
Jest to mój pierwszy artykuł i dość ogólnie omawiający problem tworzenia i wydajności grafiki przestrzennej. W kolejnych postaram się skupić na mniejszym obszarze, ale za to dogłębniej.
Pozdrawiam