Projekt Disturb
Z EGA Wiki
Gra Disturb to prototypowy shooter FPP wykorzystujący możliwości enginu fizyki PhysX. Projekt ma charakter edukacyjny, gra jest tworzona na zajęciach pilotażowych w ramach Informatyki Stosowanej UJ i EGA. Celem samego projektu jest poznanie możliwości sprzętowo wspomaganej symulacji zjawisk fizycznych oraz podstawowych metod sztucznej inteligencji, obok samych technik związanych z projektowaniem i produkcją gry.
Spis treści |
Repozytorium SVN i Trac Disturb
Projekt posiada własne repozytorium SVN i system zarządzania projektem Trac: [1]
Wątek Fabularny Disturb
Akcja osadzona jest w bliskiej przyszłości, w laboratoriach CERN pod Genewą, gdzie po wielu problemach ostatecznie uruchomiony zostaje akcelerator cząstek LHC. W efekcie wytworzone zostały obiekty, które w normalnych warunkach nie miałyby prawa zaistnieć w otoczeniu Ziemi. Ich istnienie jednak dopuszczane jest przez teorie superstrun i podniosiło nieraz kontrowersje wokół LHC, jednak wszelkie szacunki oddalały obawy o bezpieczeństwo naszego Świata.
Niestety okazało się, że coś umknęło teoretykom i w efekcie sprowadzone zostały na Ziemię twory takie, jak mikroskopijne czerne dziury i materia dziwna. Czarne dziury umożliwiły dostęp do tak zwanych robaczych dziur w czasoprzestrzeni, czyli mostów Rosena-Einsteina i efektywnie spowodowały dekompaktyfikację ukrytych wymiarów (tym samym potwierdzając poprawność pewnych modeli superstrunowych - na nieszczęście dla ludzi).
Pojawienie się materii dziwnej w naszych wymiarach spowodowało z kolei zachwianie równowagi stałych sprzężenia w naszym reżimie energetycznym co doprowadziło do lokalnego zmodyfikowania praw fizyki. W efekcie możliwe okazało się przechodzenie między wybranymi podgrupami wymiarów jak i efekty w rodzaju odwrócenia biegu czasu, tunelowania kwantowego przez ściany czy teleportację. Najgorszą konsekwencją było jednak zaburzenie równowagi termodynamicznej między wymiarami co spowodowało przepływ entropii między zdekompaktyfikowanymi przestrzeniami a naszym wymiarem. W efekcie procesy biologiczne (zależne od kierunku biegu czasu) w organizmach żywych obecnych przy eksperymencie (mowa o doświadczalnikach...) doznały potwornych mutacji zmieniając fizyków doświadczalnych w krwiożercze bestie (znamy to z ćwiczeń w pracowni fizycznej...). Dołączyły też do nich pewne, jak się wydaje, byty z wyższych wymiarów doprowadzając do niedostępności podziemi CERN dla ekip rozpoznawczych i ratunkowych. Najgorszą globalną konsekwencją przepływu entropii jest obawa o stabilność układu słonecznego i w konsekwencji całego życia na Ziemi. Konieczne jest ograniczenie transferu entropii i wyeliminowanie istot dziwnych by ocalić Ziemię przed zagładą.... Jako cudem ocalały z katastrofy CERN Summer Student (piłeś piwo w ringu LHC zamiast pracować przy detektorze...) masz coraz mniej czasu na ocalenie własnej chudej skóry i zaliczenie roku...
Modele
Dzięki zaprzyjaźnionemu grafikowi 3D dostaliśmy model postaci 3D dla przykładowego wykorzystania w grze i testów renderera.
Demon nazywa się Monocular i jest zdeformowanym fizykiem doświadczalnym...:
Concept Art
Oto kilka konceptów z wczesnej fazy projektu, gdy szukaliśmy natchnienia...
Levele Disturb
Levele Disturb w obecnej fazie są tworzone głównie w celu opanowania technik importu leveli z plików jak i samego projektowania i tworzenia efektów graficznych. Są równiesz potrzebne do badań nad AI botów.
Tu są screeny z zerowego levelu:
Nowa mapa wraz z Monocularem i światłami wyglądą nieźle:
Efekty Graficzne
Disturb pisany jest przy użyciu biblioteki OpenGL 2. Obecnie lista efektów obsługiwanych przez renderer jest nastepująca:
Materiały:
- ambient color - diffuse color - specular color - shininess
Tekstury:
- diffuse map - bump map - specular map - transparent map - self illumination map
Wiki dotycząca obsługi naszych modeli 3D jest tu: Modele 3D.
Sam renderer już potrafi importować nasz model, twają prace nad importem kolejnych efektów wykorzystanych przez modelera postaci.
Sztuczna Inteligencja
Obecna, pierwsza wersja sztucznej inteligencji jest oparta na sieciach neuronowych sterujących akcjami postaci oraz maszynie stanu skończonego dla wyboru akcji, przy czym odrębnymi akcjami zarządzają niezależne sieci. Są one uczone algorytmem genetycznym oraz propagacji wstecznej. W obecnej wersji mają prostą topologię feed-forward.
Tutaj znajdziesz więcej informacji na temat AI
Wczesny Etap Projektu
Mamy tu dwa screeny z wczesnej fazy produkcji. Jak widać, levele nie były zbyt rozbudowane, ale już pozwalały na import tekstur i siatek. Widoczna jest też konsola Lua, za pomocą której można tworzyć levele. Jeden z poziomów nawet ni ejest płaski, pozwalało to na testowanie graiwitacji (spadanie != skok...) i wskakiwanie.
























