Autor: Paweł Mroziuk Prezentacja powstała w ramach projektu - Mazowiecki program stypendialny dla uczniów szczególnie uzdolnionych najlepsza inwestycja w człowieka
Zanim przystąpi się do tworzenia gier komputerowych z pewnością warto zapoznać się z ich rodzajami. Klasyfikacji gier można dokonać ze względu na rozmaite kryteria (np. użyte rozwiązania technologiczne, minimalny wiek graczy określony z powodu występujących w grze treści), lecz najczęściej wykorzystywany jest podział ze względu na cel rozgrywki i sposób jego osiągnięcia, co pozwala na wyróżnienie ośmiu podstawowych rodzajów gier, które zostaną przedstawione w dalszej części prezentacji.
Gra, w której pomyślne ukończenie wymaga szybkiej reakcji, nie ma czasu na zastanowienie. Pierwszą znaną grą zręcznościową była gra Pong z 1972 roku. Gra pong, źródło: gry-online.pl
Gra przygodowa, to gra, w których gracze mają za zadanie rozwiązać ciąg różnych zadań przy użyciu odpowiednich przedmiotów, narzędzi itp. Znaną z nich jest The Walking Dead. Gra The Walking Dead: A Telltale Games Series - Season Two, źródło: gry-oline.pl
Gry, w których gracz wciela się w bohatera, ma pełną kontrolę nad nim, wybiera zdolności, ulepszenia. Gra Might & Magic X Legacy, źródło: www.ubisoft.com
Symulują różne sytuacje z życia człowieka, natury (np. życia zwierząt). Gra Goat Simulator, źródło: store.steampowered.com
Symulują rozgrywkę w różnych dyscyplinach sportowych, np. piłka nożna, koszykówka. Gra FIFA 17, źródło: gry-online.pl
Gry strategiczne to gry, które polegają na dowodzeniu państwem lub zorganizowaną jednostką i osiągnięciu zwycięstwa nad innymi (militarnego, ekonomicznego). Gra Sid Meier s Civilization VI, źródło: morele.net
Gry logiczne polegają na rozwiązywaniu zagadek logicznych, czasami na nietypowych rozwiązaniach. Gra Saper, źródło: procesor.pl
Gry edukacyjne służą do poszerzenia wiedzy gracza, mają zastosowanie w szkołach i uniwersytetach. Gra Literaki, źródło: komputerswiat.pl
Niewątpliwie najwięcej walorów dydaktycznych mają gry edukacyjne, ale również w innych rodzajach gier komputerowych można wprowadzić elementy, które wymagają od gracza wykazania się wiedzą z jakiejś dziedziny bądź określonymi umiejętnościami, np.: w grze typu escape gracz w celu zdobycia przedmiotu musi rozwiązać zagadkę matematyczną. Przy tworzeniu gier komputerowych należy zwracać uwagę na wiek odbiorców - w szczególności w grach przeznaczonych dla dzieci i młodzieży należy unikać elementów zawierających sceny przemocy, seksu czy zażywania środków psychoaktywnych, a także uwzględniać zasób wiedzy i umiejętności posiadanych w danym wieku. Gry komputerowe mogą być wykorzystywane nie tylko do rozrywki czy do zdobywania wiadomości z określonej dziedziny, ale także do różnych innych celów, np.: gra fabularna może służyć do wypromowania wybranej lokalizacji jako celu turystycznego lub do zachęcenia do przeczytania książki.
1. Pomysł na grę komputerową oraz jej zasady 2. Scenariusz gry komputerowej 3. Program komputerowy i język programowania 4. Grafika w grach komputerowych 5. Dźwięk w grach komputerowych 6. Wersje testowe gry
Pierwszy etap powstawania gry komputerowej obejmuje jej pomysł. Na początku nie są wymagane szczegółowo sprecyzowane wymagania odnośnie gry, warto jednak - przynajmniej ogólnie określić: - tematykę gry, - przewidywaną grupy odbiorców i świata gry, - zadanie postawione przed uczestnikiem gry - rolę uczestnika gry, - narzędzia, którymi będzie posługiwać się uczestnik gry, - możliwe wyniki (rozwiązania), - cele stawiane grze komputerowej, np. zabawa, kształcenie, promocja marki, - założenia odnośne technologicznych rozwiązań przyjętych w grze - oczekiwania odnośnie warstwy graficznej i dźwiękowej gry. W przypadku profesjonalnie tworzony gier komputerowych pomysł na grę przybiera zazwyczaj formę dokumentacji projektowej, określającej również m.in. przewidywane terminy realizacji oraz zasoby potrzebne do stworzenia gotowej gry.
Kolejnym etapem powstawania gier komputerowych jest przygotowanie scenariusza gry, w którym powinno się szczegółowo opisać m.in.: - cele (główny i poboczne) gry, - cechy postaci, - środowisko, w którym toczy się akcja, - występujące w grze przedmioty, - dostępne dla gracza (postaci) działania i ich skutki, - interakcje między graczami (postaciami), - kolejne poziomy gry. W przypadku prostych gier komputerowych scenariusz nie musi mieć rozbudowanej formy, a nawet może nie być utrwalony w formie pisemnej. Natomiast w przypadku bardziej skomplikowanych gier często opisowi słownemu w scenariuszu towarzyszy warstwa graficzna przedstawiająca poszczególne lokalizacje, sceny, postacie oraz przedmioty - mamy wtedy do czynienia z przypominającym komiks tzw. storyboardem. To właśnie etap pracy nad scenariuszem w znacznym stopniu decyduje o tym, czy powstanie gra, którą będzie można uznać za mądrą.
Niezbędnym elementem gry jest właściwy program komputerowy, czyli sekwencja symboli opisująca realizowanie obliczeń zgodnie z pewnymi regułami zwanymi językiem programowania. Program jest zazwyczaj wykonywany przez komputer, zwykle bezpośrednio, jeśli wyrażony jest w języku zrozumiałym dla danej maszyny lub pośrednio gdy jest interpretowany przez inny program. Formalne wyrażenie metody obliczeniowej w postaci języka zrozumiałego dla człowieka nazywane jest kodem źródłowym. Język programowania to zbiór zasad określających, kiedy ciąg symboli tworzy program komputerowy oraz jakie obliczenia opisuje. Przy tworzeniu gier komputerowych korzysta się z już istniejących języków oprogramowania, przy czym wyboru języka dokonuje się przede wszystkim w zależności od stopnia technicznego zaawansowania gry komputerowej. Jako jedyny element gry komputerowej program komputerowy nie jest odbierany bezpośrednio, ale pośrednio. Uczestnik gry nie zapoznaje się z treścią programu, jego kodem czy językiem programowania, ale jedynie z efektem działania programu, uzewnętrznionym w kompozycji całej gry, współdziałaniu jej elementów i interaktywności.
Grafika występuje w prawie wszystkich grach komputerowych, jest bardzo ważnym elementem. Wpływa w dużym stopniu na atrakcyjność gry, ponieważ jest jej najbardziej zauważalnym elementem. Pojęcie grafiki w grach komputerowych obejmuje swoim zakresem wszystkie wizualne efekty postrzegane przez uczestnika gry, zarówno statyczne (np. tło), jak i dynamiczne (np. efekt ruchu) stanowiące przykład animacji. Składają się na nią m.in.: interfejs użytkownika, a także wszystkie obiekty, mapy, plansze, animacje. Grami, w których się nie wykorzystuje grafiki, to gry z interfejsem tekstowym. Do tworzenia grafiki wykorzystuje się programy do grafiki wektorowej, np. CorelDraw, lub do grafiki rastrowej, np. GIMP, Photoshop.
Dźwięk nie jest niezbędnym elementem gry komputerowej, istnieją również gry bez dźwięku m.in. niektóre gry logiczne i karciane. Dźwięk w grach komputerowych to: - muzyka, która tworzy określony klimat, w szczególności potęguje dramatyczne dla uczestnika gry momenty akcji. - teksty mówione przez narratora czy postacie, - różnego rodzaju efekty akustyczne (np. ładowanie broni, strzały, praca silnika samochodowego), które mogą stanowić element ścieżki dźwiękowej gry.
Zanim powstanie ostateczna wersja gry komputerowej konieczne jest przygotowanie wersji testowych, których liczba zależy przede wszystkim od stopnia skomplikowania gry. Testowanie gry ma na celu w szczególności: - ocenę jej jakości, wydajności i stabilności; - dokonanie wyboru optymalnych rozwiązań, które umożliwią realizację założonych celów; - zidentyfikowanie, a następnie wyeliminowanie błędów w działaniu gry. Dopiero po zakończeniu etapu testowania i dokonaniu niezbędnych zmian grę można uznać za gotową, co nie wyklucza jednak dokonywania w niej dalszych modyfikacji na etapie konserwacji gry.
W ramach realizacji projektu starałem się zdobyć nie tylko wiedzę teoretyczną, ale także opanować praktyczne umiejętności przydatne dla twórcy gier komputerowych. W trakcie trwania projektu w szczególności: - brałem udział w zajęciach Pascal/Delphi, gdzie nauczyłem się tworzyć projekty tekstowe i graficzne; - uczestniczyłem w zajęciach z C++, gdzie nauczyłem się tworzyć programy w konsoli i z graficzne z wykorzystaniem biblioteki allegro; - uczęszczałem na zajęcia Projektowanie Gier, gdzie nauczyłem się tworzyć scenariusze gier, a także kompletne gry oparte na silniku Unity, z tworzeniem skryptów w C#; - ukończyłem kursy video Unity. Tworzenie gry 2D oraz Unity. Tworzenie gry 3D, co pozwoliło mi dalej rozwinąć umiejętności w tym zakresie; - ukończyłem prowadzone przez OEIiZK szkolenie online z programowania w języku Python; - brałem udział w konkursie informatycznym Logia17 (2. etap); - korzystałem z literatury specjalistycznej, w szczególności z podręczników do programowania; - w celu rozwoju moich zdolności matematycznych uczestniczyłem w dodatkowych zajęciach przygotowujących do Olimpiady Matematycznej Juniorów oraz brałem udział w konkursach matematycznych (Alfijk, Kangur, OMJ); - nauczyłem się korzystać z programu CorelDRAW w celu przygotowywania elementów składowych gier. Zdobyte umiejętności pozwoliły mi na samodzielne stworzenie kilku gier komputerowych, które zostaną zaprezentowane w dalszej części prezentacji.
Gra typu Escape (ucieczki) oparta na silniku Unity, grafika stworzona przeze mnie w programie CorelDraw, w celu przejścia gry konieczne jest m.in. rozwiązanie zagadki matematycznej Link do gry: https://1drv.ms/f/s!antfa4d22yvqg5qsisr9qvrebggp3w
Gra platformowa 3D oparta na silniku Unity, grafika ze stron myfreetextures.com, dreamstime.com Link do gry: https://1drv.ms/f/s!antfa4d22yvqg5q9os8fuyyccidx2a
Gra platformowa 2D oparta na silniku Unity, użyta grafika pochodzi ze strony gameart2d.com Link do gry: https://1drv.ms/f/s!antfa4d22yvqg5rudlzgtfczev_gkw
Quiz stworzony w języku C++ na temat Polski za czasów Piastów Link do quizu: https://1drv.ms/f/s!antfa4d22yvqg5r99aknadd06xt8qq
Źródła informacji: 1. pl.wikipedia.org 2. Matusiak Ireneusz, Gra komputerowa jako przedmiot prawa autorskiego, LEX, 2013 3. Geig Mike, Unity. Przewodnik projektanta gier, Helion 2015