CryENGINE

W pełni grywalny benchmark

W pełni grywalny benchmark

W pełni grywalny benchmark, CryENGINE

Kiedy w roku 2004 na rynku pojawiła się gra mało znanego wówczas studia Crytek, miłośnicy elektronicznej rozrywki oniemieli z zachwytu. To, co ukazało się ich oczom, podczas zabawy z Far Cry – taki bowiem tytuł nosiła rzeczona gra – było nieporównywalne z czymkolwiek wcześniej przez nich widzianym. Tropikalna wyspa, na której toczyła się akcja, na najmocniejszych pecetach wyglądała w taki sposób, że aż prosiła się o robienie screenów i wysyłanie ich znajomym, jako zdjęć z egzotycznych wakacji. Dodatkowo, jak się okazało, silnik gry był w stanie w czasie rzeczywistym renderować płynnie grafikę całej wyspy – w grze nie było charakterystycznych dla innych strzelanek poziomów. Po dramatycznym lądowaniu na wyspie i uwolnieniu się cały teren był do naszej dyspozycji, mieliśmy pełną swobodę, ograniczoną tylko naszymi własnymi umiejętnościami przetrwania w dość sceptycznie do naszej wizyty nastawionym środowisku.

Nie da się ukryć, że był to na rynku gier komputerowych niezwykły fenomen. Gracze, z niecierpliwością oczekujący na długo zapowiadane i szeroko reklamowane drugą część Half-Life i mrocznego Dooma 3, nagle otrzymali produkt studia, które pojawiło się właściwie znikąd. Wydana przez Ubisoft gra przeniosła ich do świata, jakiego dotąd nie widzieli – archipelag na którym się znaleźli był po prostu przepiękny, świat żywy, pełen fauny i flory, z bardzo dużymi możliwości interakcji z otoczeniem. Wszystko to zaś dzięki możliwościom, jakie oferował nam autorski, napisany od podstaw przez programistów Cryteka, silnik napędzający nową grę - nazwany po prostu CryENGINE. Samą grę przypomnimy Wam w osobnym artykule, dziś natomiast chcielibyśmy skupić się właśnie na możliwościach, jakie zaoferował nam engine tejże gry.

Obrazki i dźwięki

Jeśli chodzi o genezę powstania CryENGINE, to jest ona, prawdę powiedziawszy, bardzo ciekawa. Otóż silnik ten - w momencie rozpoczęcia prac - tak naprawdę nie był pisany z myślą o użyciu go w jakiejkolwiek grze. Miało to być po prostu technologiczne demo, napisane na potrzeby prezentacji możliwości najnowszych chipsetów firmy nVidia. Kiedy jednak firma dostrzegła możliwości, jakie w nim drzemią, zdecydowano się na stworzenie w oparciu o jego niebywały potencjał pełnoprawnej gry komputerowej. W czasie pisania kodu powstało kilka wersji tegoż silnika, uzupełnianych po prostu o pojawiające się nowinki techniczne. I tak na przykład w wersji 1.2 wprowadzono sprzętową obsługę wersji 3.0 pixel i vertex shaderów, czy też Polybump, czyli zaawansowaną technikę pokazywania wypukłości, zaś odsłona oznaczona 1.3 miała już zaimplementowaną technikę renderowania światła HDR.

Spójrzmy więc, jakimi to możliwościami dysponuje pierwsze dzieło ekipy Crytek. Renderowanie grafiki może odbywać się zarówno przy użyciu bibliotek OpenGL, jak i DirectX w wersjach 8 i 9, dla których silnik oferuje pełne wsparcie. Co najważniejsze, odbywa się ono zarówno dla środowiska zewnętrznego, jak i wszelakich wnętrz, które zostały płynnie zintegrowane – w grze nie doświadczymy znanego skądinąd efektu ładowania podpoziomów. Zaimplementowano również zaawansowany system obsługujący fizykę. Dzięki temu możliwe było zastosowanie takich technik, jak kinematyka odwrotna, rag doll, naturalne zachowanie pojazdów i innych obiektów otoczenia, czy tez choćby efektu zesztywnienia ciał zabitych wrogów. Dzięki zastosowaniu kinematyki odwrotnej (inverse kinematics) – czyli najprościej mówiąc wprowadzeniu algorytmów ograniczających ruchy modelu lub jego części - uzyskano efekt niezwykle naturalnego zachowania się wszelkich animowanych modeli 3D, co najlepiej widać na przykładzie wszelkiej maści przeciwników i fauny „zamieszkującej” archipelag.

Realizmu grafice przydaje również zastosowanie możliwości wynikających z techniki pixel i vertex shader, dzięki którym możemy oglądać między innymi rozświetlenia wypukłości, wszelkiego rodzaju szyby, dziury po kulach, animowane tekstury, czy błyszczące powierzchnie. Odpowiednie zastosowanie kombinacji technik oświetlenia i generowania cieni, dało bardzo naturalny efekt, co zaowocowało niezwykłym realizmem renderowanego w grze świata. Cienie zmieniają swój kształt i położenie dynamicznie, w zależności od źródeł światła oraz kształtu, a także struktury otoczenia i obiektów, na które aktualnie powinny padać. Dzięki zaawansowanym technikom mapowania wysokości i głębi pola oraz redukcji polygonów, możliwe jest uzyskanie rozległych i masywnych, realistycznie wyglądających terenów. Pozwoliło to na przedstawienie otoczenia o bardzo naturalnym wyglądzie z głębią sięgającą do około 2 kilometrów.

Równie niesamowite jak wzrokowe są wrażenia słuchowe, których doświadczamy posiadając kartę dźwiękową obsługującą dźwięk przestrzenny oraz odpowiedni zestaw głośników. Silnik zapewnia pełne wsparcie dla standardów Dolby Digital 5.1 oraz EAX 2.0. Dzięki temu doświadczać możemy płynnych i łagodnych zmian jego natężenia oraz zniekształceń, wynikających ze zmiany środowiska w którym znajduje się gracz. Odpowiednią atmosferę i klimat buduje również interaktywny dynamiczny system muzyczny, który odpowiada za zmianę i płynne przejścia pomiędzy motywami muzycznymi, uzależnione nie tylko od lokacji, ale głównie od działań podejmowanych w danym momencie przez gracza.

Zaimplementowane w silniku, zaawansowane skrypty sztucznej inteligencji, pozwalają na grupowe i skoordynowane działania przeciwników. Istnieje więc możliwość współpracy pomiędzy postaciami niezależnymi, dzięki tym skryptom są oni w stanie wzajemnie „informować się” o naszym położeniu, czy działaniach oraz wspólnie atakować. Daje to w samej grze rewelacyjny efekt pełnej współpracy i naturalnego zachowania wszystkich przeciwników, pozostających w kontakcie wzrokowym i głosowym. Również indywidualne zachowanie poszczególnych modeli nacechowane jest dużą dozą realizmu: nasi wrogowie starają się korzystać z osłon, po wykryciu zmieniać stanowisko strzeleckie, czy też właśnie zwracać się po wsparcie do swych wirtualnych sprzymierzeńców.

GramTV przedstawia:

Sandbox

Warto również wspomnieć o wbudowanym edytorze nazwanym Sandbox, dzięki któremu kreatywna część społeczności fanowskiej ma możliwość projektowania i wykonywania własnych map i modów do gry. Narzędzie to skonstruowane jest na zasadzie modułowej budowy w oparciu o modele, skrypty i efekty oferowane przez silnik CryENGINE. Dzięki takiej właśnie formie, pozwalającej na tworzenie map bez konieczności samodzielnego pisania kodu, jest to narzędzie przystępne nawet dla osób nie mających fachowej wiedzy na temat języków programowania. Pozwala ono chociażby na losowe wygenerowanie trójwymiarowego terenu, który możemy następnie dowolnie zmodyfikować, wygładzając jego powierzchnie, czy też zmieniając jego wysokość. Po uzyskaniu zaś zadowalającego nas efektu, mamy możliwość pokrycia go dowolnymi teksturami i trójwymiarowymi obiektami, takimi jak drzewa, kamienie, czy budynki. Podobnie jest z ustawieniem takich szczegółów, jak pora dnia, czy aktualna pogoda.

Podobnie rzecz ma się z dźwiękiem – wystarczy wybrać odpowiadający nam sample z bogatej biblioteki, określić umiejscowienie źródła dźwięku, jego natężenie, zasięg i po prostu wstawić w odpowiednim miejscu mapy. Również zaludnienie naszego świata nie powinno być problemem – wystarczy wybrać odpowiedni obiekt, na przykład najemnika, określić za pomocą wyboru odpowiednich skryptów cechy jego zachowania i umiejętności, następnie wybrać wyposażenie, ustalić między innymi zasięg i teren działania, na koniec zaś przenieść stworzonego w ten sposób przeciwnika na odpowiednie miejsce naszej mapy.

CryENGINE był kilka lat temu silnikiem, który narobił sporego zamieszania w świecie wirtualnej rozrywki, czemu zresztą trudno się dziwić, gdyż skupiał w sobie praktycznie wszystkie dostępne wówczas technologie, oferując niespotykane dotąd możliwości. Nie powinno więc być dla nikogo zaskoczeniem, że tak zaawansowana produkcja, jaką był powstały w oparciu o niego Far Cry, bardzo szybko stała się popularnym benchmarkiem, potrafiącym na najwyższych ustawieniach wycisnąć ostatnie poty z najnowszych modeli kart graficznych i procesorów. Jego następca, opatrzony dla porządku liczbą 2, zapowiadany jest jako kolejna rewolucja w renderowanej w czasie rzeczywistym grafice komputerowej. Jutro przyjrzymy się bliżej jego możliwościom, a już wkrótce, po premierze Crysis, przekonamy się naocznie ile w tym stwierdzeniu jest prawdy.

Komentarze
36
Usunięty
Usunięty
17/11/2007 21:54

Ostatnio kupiłem sobie Far Cry''a i gra zrobiła na mnie duże wrażenie jak na te czasy. Crysis będzie jego godnym następcą :D

Usunięty
Usunięty
15/11/2007 21:33

Pierwsza wersja tego silnika w 2004 roku robiła wrażenie, ale nigdy CryEngine nie był fotorealistyczny ponieważ jest zbyt rysunkowy.

Usunięty
Usunięty
13/11/2007 21:35

Więcej się dowiedziałem o cryENGINE i o FarCry''u, niż o Crysis''ie :P




Trwa Wczytywanie