Retrogram – Rodzina silników Lithtech

Michał Myszasty Nowicki
2010/01/24 19:00
9
0

Niemalże wszystkie gry Monolith Productions powstały w oparciu o silniki z rodziny Lithtech. Dziś zapraszamy was na historyczną wycieczkę po jej historii.

Niemalże wszystkie gry Monolith Productions powstały w oparciu o silniki z rodziny Lithtech. Dziś zapraszamy was na historyczną wycieczkę po jej historii.

Retrogram – Rodzina silników Lithtech

Jak już wiecie, pierwsza część Blood powstała w oparciu o stworzony przez Kena Silvermana, udany, choć nieco już przestarzały silnik Build. Kiedy w 1996 roku zadebiutował przebojowy Quake, szybko stało się jasne, że gry FPS wkroczyły w erę pełnego 3D. John Carmack jednoznacznie udowodnił, że jest możliwe stworzenie w pełni trójwymiarowego silnika, który może działać płynnie na normalnym, domowym komputerze. Wraz z końcem lat dziewięćdziesiątych ostatecznie przemijała oparta na sprite’ach epoka półśrodków, wypierana przez złożone z kilkuset polygonów modele 3D. Carmack udoskonalał swój silnik, Tim Sweeney pracował nad Unreal Engine, własny silnik opracowywał również Monolith. Choć może nie do końca własny...

Rozłam Prace nad nowym silnikiem rozpoczęły się bowiem pod auspicjami wszechmocnego Microsoftu, w ramach mającej już swoją bogatą tradycję współpracy. Tym razem specjalnie wydzielony zespół otrzymał naprawdę poważne zadanie. Miał opracować i skonstruować silnik 3D, kompatybilny i wykorzystujący w pełni możliwości nowych bibliotek DirectX. Koncepcja Microsoftu polegała na stworzeniu uniwersalnego narzędzia deweloperskiego, w pełni zgodnego z systemem Windows i wykorzystującego biblioteki systemowe. Rozważano nawet bardzo poważnie opcję pełnego zintegrowania silnika z DirectX. Widać tutaj wyraźnie politykę giganta z Redmond, który dążył do całkowitego zdominowania rynku komputerów osobistych. Wielu deweloperów, mając w pakiecie z systemem gotowy i całkiem niezły silnik, korzystałoby właśnie z niego, rezygnując z prac nad własnymi rozwiązaniami, czy kupując licencje u innych firm.

Programiści Monolith pracowali więc w pocie czoła nad projektem, który otrzymał roboczą nazwę Direct Engine. Mimo tego, iż prace były na dość zaawansowanym etapie, a studio pracowało jednocześnie nad dwoma grami opartymi na nowym silniku, doszło do rozłamu między deweloperem, a zleceniodawcą. Nie udało mi się niestety dotrzeć do informacji o konkretnych i prawdziwych przyczynach zerwania współpracy. W większości wywiadów mamy do czynienia jedynie z bardzo ogólnikowymi wyjaśnieniami, takimi jak odpowiedź Jasona Halla na pytanie o nagłe zerwanie współpracy: „Proste. Monolith i Microsoft mają różne wizje odnośnie tworzenia Shogo.” Prawda, że to raczej mało wyczerpująca odpowiedź? Tak, czy inaczej firma Billa Gatesa straciła w pewnym momencie zainteresowanie zarówno samym enginem, jak i grami, które powstawały w oparciu o niego.

Monolith nie miał jednak zamiaru rezygnować. Zbyt wielu ludzi, środków i czasu poświęcono na prowadzone symultanicznie projekty. Wspominałem dotychczas o zaledwie trzech z nich, choć niewykluczone, że studio pracowało – lub planowało prace – nad jeszcze dwoma. Oprócz Shogo i Blood II w prezentowanym poniżej filmie reklamującym LithTech możemy zobaczyć kolejne dwie gry: Claw 3D i Draedon. Pierwsza z nich, to nic innego, jak trójwymiarowa wersja platformówki Kapitan Pazur, druga natomiast wygląda na grę akcji w klimatach fantasy. Pomysły te jednak nie ujrzały nigdy światła dziennego, trudno również znaleźć jakieś bardziej konkretne informacje na ich temat w wywiadach, czy historii studia. Niewykluczone więc, że były to po prostu prezentacje demo, specjalnie stworzone na potrzeby tejże reklamówki, pozwalające na przedstawienie wszechstronności silnika. Silnika, do którego pełne prawa studio odkupiło od Microsoftu, zaś on sam szybko doczekał się zmiany nazwy. Niedawny Direct Engine nazywał się teraz Lithtech.

Lithtech 1.0 Przyglądając się silnikowi Monolithu, szybko dostrzegamy, że na jego architekturę duży wpływ miały wcześniejsze doświadczenia konkurencji. Chodzi tutaj głównie o niespodziewanie silny odzew ze strony społeczności fanowskich, wśród których już od kilku lat działały silne i aktywne grupy moderskie. Dlatego też engine został zaprojektowany w taki sposób, aby ułatwić pracę nie tylko deweloperom, ale również twórcom wszelakich modów i innych nieoficjalnych wersji gier. Podobnie, jak id Tech, magazynował wszystkie dane w specjalnym pliku REZ, którego zawartość można było w dość prosty sposób edytować, modyfikować, czy podmieniać. Pozwalało to również na wprowadzenie kilku grywalnych postaci, co wykorzystano choćby w Blood II: The Chosen. Kolejną ciekawą i rzadko wówczas spotykaną cechą silnika była możliwość wprowadzenia uzależnionych od kontekstu (na przykład wyboru postaci przez gracza) elementów podczas scenek przerywnikowych.

Najważniejszą jego cechą – wynikającą poniekąd z korzeni - była jednak pełna zgodność z bibliotekami Windows, połączona z wyjątkowo łatwym programowaniem. W opinii wielu deweloperów oraz zaawansowanych moderów, był to jeden z najlepiej opracowanych i najbardziej przyjaznych dla programistów silników, jakie kiedykolwiek powstały. Spore rozbieżności pojawiały się wszakze w przypadku oceny Lithtech. Z jednej strony nie należeli do rzadkości ludzie, nazywający Lithtech „silnikiem dla ubogich” i argumentujący to jego mniejszym zaawansowaniem technologicznym w porównaniu do id Tech 2, czy Unreal Engine. Z drugiej jednak strony, szczególnie wśród deweloperów, którzy mieli z nim do czynienia, krążyła opinia, że silnik ten w niczym nie ustępuje konkurencji, pod kilkoma względami nawet ją przewyższając. Jednemu jednak zaprzeczyć się nie da – jego piętą achillesową były protokoły sieciowe, które wymagały mnóstwa patchy i poprawek.

Lithtech 2.0

Silnik ulepszany był zresztą przez cały czas, co sprawiło, że już wkrótce wersja napędzająca Blood II i Shogo oznaczona została kodem 1.0, aby łatwo odróżnić ją od nowej odsłony debiutującej w 2000 roku. Lithtech 2.0 pokazał swoje możliwości w stworzonej przez Monolith grze The Operative: No One Lives Forever. O ile w warstwie technologicznej rzeczywiście można było mówić o sporym postępie, o tyle w przypadku kodu sieciowego po raz kolejny raz kolejny dzieło Monolithu – a dokładniej Lithtech Inc. – okazało się mało doskonałe. Dlatego dość szybko pojawiły całkiem spore pakiety poprawek i zmian, co zaowocowało powstaniem dwóch kolejnych wersji silnika: Lithtech 2.2 i Lithtech 2.4. Był to również pierwszy z produktów Lithtech Inc., który znalazł całkiem szeroką gamę licencjobiorców, wśród których znalazły się studia New World Computing, Piranha Games, czy Barking Dog Studios (obecnie Rockstar Vancouver).

Lithtech 3.0 Lithtech Inc. rozpoczęło tymczasem równoległe prace nad dwoma kolejnymi odsłonami silnika. Pierwszym z nich był Lithtech 3.0, który miał być w założeniach zupełnie nowym, napisanym od podstaw, zaawansowanym enginem wyposażonym w kilka ciekawych i unikalnych właściwości. Najważniejsza jego cechą miało być doskonałe przystosowanie do użycia we wszelakich produkcjach wymagających rozgrywki sieciowej. Służyć miał temu między innymi zestaw protokołów znany jako Distributed Object System, pozwalający na projektowanie i tworzenie klasycznych rozgrywek multiplayer, ale również bardziej rozbudowanych gier MMORPG. Niestety, mimo prezentacji technologicznego demo z nigdy nie zrealizowanym Shogo II, silnik ten nigdy nie wyszedł poza stadium wewnętrznego projektu. Liczba trudnych do usunięcia błędów była ponoć tak wielka, że prace nad nim zawieszono, całość sił kierując do rozwoju drugiego projektu.

GramTV przedstawia:

Lithtech Talon

Był nim Lithtech Talon, powstały na bazie poprzedniej generacji, czyli Lithtech 2.2. Nie był on więc silnikiem następnej generacji w pełnym tego słowa znaczeniu, stanowił raczej pomost między swymi poprzednikami, a nowoczesnymi technologiami używanymi już przez konkurencję. Spośród całej rodziny wyróżniał się jednak najlepiej napisanym kodem sieciowym, praktycznie pozbawionym większych błędów i niedoróbek, dzięki czemu sprawdzał się doskonale w typowych dla gier FPS trybach rozgrywki dla wielu graczy. Co najciekawsze, tworzony był on początkowo wyłącznie dla jednej gry: Aliens versus Predator 2. Całe nadzieje pokładano w Lithtech 3.0, jednak po zamknięciu tamtego projektu, właśnie Talon stał się na kilka lat podstawowym produktem Lithtech Inc. Ze względu na spore możliwości i relatywnie niską cenę licencji cieszył się przez długie lata dużą popularnością wśród producentów niskobudżetowych gier, takich jak Jarhead Games, czy nasz rodzimy City Interactive.

Lithtech Discovery Po zamknięciu projektu 3.0, na bazie Lithtech 2.2 powstała jeszcze jedna hybryda, czyli Lithtech Discovery – najmniej chyba znana odmiana tego silnika. Wyposażona we wspominane protokoły Distributed Object System, miała docelowo napędzać gry typu MMORPG. Nigdy jednak licencja nie została sprzedana jakimkolwiek firmom zewnętrznym, a sam silnik użyty został w jednej tylko produkcji, grze The Matrix Online.

Lithtech Jupiter

W 2002 roku zadebiutowała kolejna wersja silnika, tym razem nazwana Lithtech Jupiter. Był to pierwszy od lat zupełnie nowy projekt, wykorzystujący zaawansowane technologie. Powstał, jako alternatywa dla zarzuconego Lithtech 3.0 i bardzo szybko stał się „koniem pociągowym” dla studia Monolith. Łączył w sobie bowiem dwie ważne cechy: prostą i przyjazną dla deweloperów konstrukcję oraz wykorzystanie wszystkich najnowszych technologii. Ciekawostką jest fakt, iż w momencie premiery był on pod kilkoma względami najnowocześniejszym silnikiem na świecie, gdyż na przykład, jako jedyny wspierał technologię Shader Model 1.0 – inne wiodące silniki wciąż wykorzystywały wtedy shadery oparte na wykorzystaniu procesora. Niestety, brak wsparcia dla Distributed Object System po raz kolejny zaowocował bardzo słabą jakością protokołów odpowiedzialnych za rozgrywki sieciowe. Na potrzeby gry Tron 2.0 powstała również specjalna wersja silnika, nazwana Lithtech Triton.

Lithtech Jupiter Extended Ostatnią oficjalną inkarnacją silnika jest Lithtech Jupiter Extended, czyli rozwinięta wersja starego Jupitera, uzupełniona o nowości zawarte w Tritonie oraz kilka najnowszych technologii. Powstała w 2005 roku wersja jest już dziś niestety przestarzała. Co prawda dodano obsługę najnowszych shaderów, czy zintegrowany silnik fizyczny Havok (łącznie z zaawansowaną fizyką pojazdów), jednak brak obsługi najnowszych bibliotek DirectX (wersje 10 i 11) sprawia, iż czas Jupitera powoli przemija. Wciąż jednak jest on dość atrakcyjną propozycją dla producentów popularnych „budżetówek”, wśród których prym wiedzie City Interactive – studio to stworzyło w oparciu o tę wersję silnika ponad dziesięć gier.

Touchdown Entertainment, czyli dawny oddział Monolithu znany nam jako Lithtech Inc., musi więc dość poważnie pomyśleć o rozpoczęciu prac nad całkowicie nową odmianą silnika. Nie licząc swej pierwszej gry, Studio Monolith nie było dotychczas zmuszone do kupowania na zewnątrz licencji. Z drugiej jednak strony, całkowite zniknięcie w minionym roku strony internetowej Touchdown Entertainment może budzić spory niepokój...

Komentarze
9
Fang
Gramowicz
26/01/2010 01:13

Na stronie Monolith trwa "kwarantanna" więc może pokażą Shogo 2 na zupełnie nowym silniku (ech marzenia) :D

Arkhaor
Gramowicz
25/01/2010 09:19

Ja właśnie pamiętam Shogo, po tej wspaniałej, jak na tamte czasy grafice. :)

Anvi
Gramowicz
25/01/2010 08:38

Poczułem się po tym artykule strasznie stary ;p Ledwo już pamiętam jak zachwycałem się grafiką w Shogo i Blood 2...




Trwa Wczytywanie