W pogoni za kinem


Source ukierunkowany jest na współpracę z pakietami SOFT-IMAGE|XSI, Maya i 3ds max, ma rozbudowany system dźwiękowy i narzędzia sieciowe. Całość uzupełniają narzędzia wysokiego poziomu: Faceposer do prac nad mimiką i synchronizacją głosu, Valve Hammer Editor, zawierający m.in. edytory sceny i terenu, Half-Life Model Viewer, służący do przeglądania i edytowania obiektów z gry, oraz drobniejsze narzędzia programowe.

SpeedTreeRT

SpeedTreeRT jest odmianą samodzielnego pakietu SpeedTreeCAD firmy Interactive Data Visualization (http://www.idvinc.com/ ), dostępnego także w postaci rozszerzenia SpeedTreeMAX do pakietu 3ds max (w przygotowaniu wersja do Maya). SpeedTreeRT nie jest silnikiem gry, raczej może stanowić jego istotny element. To w zasadzie API (C++) umożliwiające wyświetlanie trójwymiarowej roślinności w czasie rzeczywistym. Modele 3D są wczytywane z wykorzystaniem odpowiedniej klasy C++, która zarządza następnie geometrią obiektów, oświetleniem, wierzchołkami. Wszystkie niezbędne do wyrenderowania dane są dostępne z poziomu API i mogą być następnie przekazane do dowolnego układu renderującego za pomocą DirectX czy OpenGL. Pozwala to wykorzystać SpeedTreeRT nie tylko w scenach z oświetleniem statycznym, ale także dynamicznym. Modele oświetlenia uwzględniają zmiany jasności liści w funkcji odległości od pnia drzewa, co umożliwia symulację efektu samocieniowania.

Zaletą oprogramowania jest m.in. automatyczne tworzenie poziomów szczegółowości obiektów (Levels of Detail, LOD) oraz możliwość symulowania wiatru. SpeedTreeRT generuje dla każdego modelu określoną przez grafika liczbę poziomów szczegółowości (uwzględniających efekt wiatru!) i używa ich zależnie od odległości obiektu w scenie od obserwatora, przy czym aby uniknąć łatwych do zauważenia przeskoków między poszczególnymi poziomami, można użyć maskowania. Z kolei parametry związane z wiatrem pozwalają określić (interaktywnie) jego siłę i sposób oddziaływania z liśćmi.

Niezależny od systemu renderującego SpeedTreeRT może być wykorzystany na dobrą sprawę w każdym programie i silniku 3D. Ponieważ jest wydajny, został wbudowany m.in. w silnik Unreala, przy czym cena wymaganej wówczas licencji wynosi 9995 dolarów za każdy wydany tytuł.

Havok

W pogoni za kinem

Dzięki silnikowi Source w grze "Half Life 2" zobaczymy scenografię o niespotykanym dotychczas poziomie realizmu.

Havok Game Dynamics SDK firmy Havok (http://www.havok.com/ ) zasłynął m.in. przy okazji premiery drugiej części Matriksa, kiedy okazało się, że był wykorzystywany w niektórych sekwencjach z efektami specjalnymi. Ten silnik zajmuje się wyłącznie symulacją dynamiki i zjawisk fizycznych. Zakres symulacji obejmuje detekcję kolizji, dynamikę ciała sztywnego i ruch pojazdów (głównie kołowych, ale nie tylko). W obszarze animacji postaci Havok pozwala pracować na szkieletach animacyjnych podlegających interaktywnej kinematyce odwrotnej (tzw. ragdoll), dzięki czemu postacie mogą realistycznie reagować na zdarzenia w świecie gry. Przy tym możliwe jest ograniczanie zakresu oddziaływania na przykład do jednej kończyny, podczas gdy reszta szkieletu jest animowana za pomocą standardowych, przygotowanych wcześniej sekwencji ruchowych. Oprogramowanie umożliwia płynne przechodzenie pomiędzy sekwencjami ruchowymi przygotowanymi przez animatorów lub pobranymi z systemów motion capture a ruchami wynikającymi z użycia efektu ragdoll. Dodatkowo możliwe jest rozdzielanie szkieletów animacyjnych na części - funkcja z pewnością przydatna szczególnie producentom horrorów lub zwolennikom nadmiernej eksploatacji wirtualnych pojazdów. W przypadku pojazdów Havok może uwzględniać wpływ ich ruchu na zachowanie szkieletu animacyjnego kierowcy. Użytkownik ma pełną kontrolę nad zakresem symulacji i może określać, które obiekty i z jaką siłą podlegają oddziaływaniom. Możliwe jest nawet definiowanie odrębnych dla różnych obiektów częstotliwości detekcji kolizji.

Dane przygotowane za pomocą Havoka mogą być eksportowane do pakietów 3ds max i Maya, co pozwala na przykład na animowanie postaci i nanoszenie poprawek w środowisku doskonale znanym grafikom i animatorom. Moduły eksportujące wyposażone są w działający w czasie rzeczywistym podgląd, a dodatkową kontrolę nad zachowaniem symulacji w grze zapewnia Visual Debugger. Ponad 60 producentów gier już używa Havoka, a na targach E3 w 2004 roku zaprezentowano 29 tytułów korzystających z tego silnika. Najbardziej znane gry wykorzystujące ten produkt to: "Deus Ex: Invisible War", "Painkiller", "Medal Of Honor Pacific Assault" oraz naturalnie "Half Life 2".

Carmack się nie myli

W pogoni za kinem

Efekty pracy działającego w czasie rzeczywistym systemu generowania roślinności SpeedTreeRT.

O roli silnika w produkcji gry świadczą ceny licencji, w niektórych przypadkach sięgające 250 tysięcy dolarów. Jednocześnie coraz więcej firm oferuje silniki zadziwiająco tanie. Najbardziej znany jest Torque, który w niespełna rok po premierze strzelanki internetowej "Tribes 2" można było kupić za 100 dolarów. Trzeba jednak pamiętać, że kupowanie silnika wiąże się zwykle i tak z koniecznością wprowadzenia rozszerzeń i modyfikacji z uwagi na 2-3-letni czas przygotowywania gry. Bez prac rozwojowych uzyskalibyśmy produkt w chwili premiery mało atrakcyjny pod względem wizualnym.

Czego można się spodziewać po silnikach graficznych w ciągu najbliższych lat? Nie tak dawno wspomniany John Carmack, jeden z szefów id Software, stwierdził, że w ciągu 10 lat grafika w grach komputerowych dorówna temu, co obecnie widzimy w kinowym Władcy pierścieni. Prowokacyjne stwierdzenie, lecz Carmack ryzykował z pewnością mniej niż Bill Gates wypowiadający swoje słynne "640 KB pamięci wystarczy każdemu". Pierwsze gry wykorzystujące prymitywną grafikę 3D o niskiej rozdzielczości i bez obsługi sprzętowej pojawiły się na dobrą sprawę właśnie 10 lat temu, a pierwsza komercyjna, prosta karta graficzna ze sprzętowym wspomaganiem 3D to połowa 1996 roku. Różnica jakości pomiędzy grą z 1996 roku (np. "Duke Nukem 3D" albo "Quake") a czekającym na premierę "Doom 3" jest kolosalna. Dodatkowymi łącznikami między światem gry a animacją i kinem stały się animowane sekwencje fabularne, tzw. intro, outro i przerywniki, przygotowywane za pomocą pakietów uznanych w branży postprodukcji kinowej, takich jak 3ds max, SOFTIMAGE|XSI czy Maya, bądź reżyserowane za pomocą silnika samej gry. Pojawiły się nawet tendencje odwrotne, tworzenia filmów za pomocą gier - przykładem może być działalność Academy of Machinima Arts and Sciences (AMAS) oraz studia ILL Clan, które do tworzenia filmów animowanych wykorzystują silniki graficzne gier z serii "Quake". Samo Hollywood dawno już doceniło znaczenie gier: praktycznie każdej większej premierze kinowej towarzyszy równoległa premiera powiązanej tematycznie gry. Coraz popularniejszy staje się też kierunek odwrotny: przechodzenie gier do kina. Pierwszą, może nie wybitną, lecz z pewnością w miarę udaną ekranizacją był Mortal Kombat, a nie tak dawne przeboje w rodzaju Tomb Raider czy Resident Evil pokazują, że filmowa wersja może się podobać, zwłaszcza młodszej widowni. Już planowane są publikacje na dyskach DVD, pozwalające widzowi płynnie przechodzić od filmu do interaktywnej gry, automatycznie uruchamianej w scenografii odpowiadającej oglądanej przed chwilą scenie filmu.

Tymczasem silniki gier coraz bardziej upodabniają się do narzędzi używanych dotychczas wyłącznie w drogich produkcjach kinowych. Pakiety Maya, Softimage|XSI oraz 3ds max już od kilku lat zawierają narzędzia pozwalające na użycie ich podczas produkcji gier wykorzystujących ściankowe modele o relatywnie małej liczbie wielokątów. Ekstremalnym przykładem inwazji narzędzi "kinowych" do świata gier może być silnik wspomnianego "Painkillera", który w zasadzie nie dysponuje wyspecjalizowanymi narzędziami do konstrukcji map, gdyż przygotowuje się je w pakiecie Maya. Z kolei wciąż powiększa się obszar, w którym jest miejsce na wyspecjalizowane narzędzia, odpowiedzialne za wysokopoziomową konstrukcję świata gry, np. dystrybucję roślinności czy symulowanie inteligentnych zachowań przez postacie NPC. Z jednej strony będziemy więc obserwowali unifikację narzędzi w grach i kinie (w aspekcie całości procesu produkcyjnego), z drugiej - postępującą specjalizację (z uwagi na niezbędne zadania podczas generowaniu świata gry).

Bliżej kina

Gdy różnice między produkcją gry a produkcją filmu zacierają się, należy oczekiwać upraszczania rozwiązań bardziej zaawansowanych technologicznie i dotychczas stosowanych wyłącznie w drogich przedsięwzięciach. Tak dzieje się w przypadku silników gier, w których można znaleźć rozwiązania jeszcze kilka lat temu stosowane w postprodukcji filmów o budżetach na poziomie setek milionów dolarów. Widać to zwłaszcza w przypadku animowania postaci. Początkowo były one przedstawiane w grach jako dwuwymiarowe grafiki, tzw. sprajty. Obecnie mają od tysiąca do 10 tysięcy wielokątów i 100 KB do kilku MB tekstur. Należy oczekiwać dalszego zwiększenia złożoności modelu i tekstur, jak również stopnia skomplikowania szkieletów animacyjnych uwzględniających oddziaływania fizyczne. Współcześnie interaktywnej kinematyki odwrotnej używa się niemal wyłącznie w sekwencjach śmierci postaci, a i to z nie najlepszym skutkiem, gdyż umierający lub wręcz martwy organizm w nieco inny sposób podlega prawom fizyki niż drewniana lalka.