Zaloguj

Zaloguj

    Pamiętaj mnie     Zarejestruj się  

 Czy kiedykolwiek marzyłeś o stworzeniu własnej gry komputerowej? Teraz możesz spełnić swoje marzenie, a ja pokażę Ci jak to zrobić!

 Przed Tobą pierwszy odcinek poradnika z cyklu "Zróbmy sobie grę!". Wspólnymi siłami stworzymy prostą grę platformową pokroju kultowego Mario! Krok po kroku! Sam będziesz zaskoczony rezultatem i tym, jak szybko zaczniesz realizować własne pomysły!

 Cofnijmy się najpierw jednak trochę w czasie. W 1993 r. firma Clickteam stworzyła program do tworzenia prostych gier - Klik&Play, który szybko zdobył sporą popularność dzięki swojej prostocie użytkowania. Później firma wypuszczała kolejno nowe, bardziej rozbudowane programy - następcy K&P - The Games Factory i wreszcie Multimedia Fusion (który już za \"uwaga\"chwilę stanie się naszym warsztatem). 

Tworzenie gier za pomocą tych narzędzi jest naprawdę proste i przyjemne. Z ich pomocą, już nawet w ciągu 20 minut możesz stworzyć prostą platformówkę! Nie jest nawet konieczna znajomość żadnego języka programowania! Wystarczy wyobraźnia, zapał, trochę chęci i czasu...


 Po tej krótkiej i zwięzłej lekcji historii, możemy przejść do działania. Przecież nic samo się nie stworzy, prawda? Przede wszystkim zaopatrzmy się w niezbędne oprogramowanie. Tak jak wcześniej wspomniałem - będziemy zajmować się programem Multimedia Fusion 2 (MMF 2). Dlaczego? Jest to najnowsze dzieło Clickteamu, a co za tym idzie - oferuje najwięcej możliwości. W celu pobrania potrzebnej aplikacji, odpalamy przeglądarkę i udajemy się na stronę  http://www.clickteam.com/webftp/files/mmf2/Demo/MMF2Demo.exe . Zauważmy, że pobraliśmy wersję demonstracyjną programu. Koszt pełnej wersji oscyluje w granicach 300 zł. Być może po zakończeniu naszego cyklu, zdecydujesz się na tą przyjemność. O ograniczeniach dema, opowiem kiedyś, przy okazji, gdyż nie są one póki co aż tak istotne.

 

\"newWszystko oczywiście elegancko instalujemy i wreszcie... odpalamy! Pomijamy wszelkie porady i tutoriale wyskakujące na samym początku i klikając na ikonkę pustej kartki, tworzymy nowy dokument - naszą pierwszą grę!

 

Widzimy że pojawiło się dziwne okienko. Jest to miniatura naszego pierwszego poziomu (bądź przyszłego menu czy ustawień - wszystko \"nowazależy od nas).  Zauważmy że klikając na dwójkę pod naszym pierwszym elementem, pojawia się identyczny - następny. Elementy te nazywać będziemy "framkami", czyli inaczej ramkami z zawartością poszczególnych poziomów gry. Generalnie program dzieli się na trzy główne okna (edytory):

1 -  edytor \"framek\"
2 - edytor poziomów
3 - edytor zdarzeń

\"edytory\"

W edytorze poziomów skupiać będziemy się na tworzeniu nowych obiektów (postaci, tła, zbierajek...), wyglądzie oraz układzie poszczególnych poziomów. Moim zdaniem to najprzyjemniejsza część, gdyż to głównie tutaj będziemy zdani na swoją wyobraźnię i zaczniemy po prostu tworzyć elementy świata gry.

 

Nie mówię, że praca w edytorze zdarzeń jest nudna, bo nie jest. Z tą różnicą, że tutaj większość czasu spędzimy na logicznym myśleniu, klikaniu i pisaniu. Jednym słowem - będziemy wprawiać wszystko w ruch!

 

\"ikonki\"

Do przechodzenia pomiędzy edytorami służą trzy charakterystyczne ikonki, znajdujące się pod górnym paskiem menu.

 

Dobrze, stworzyliśmy już pierwszą framkę (a nawet dwie). Jak same miniatury na to wskazują - są one po prostu puste. Pora wprowadzić tam trochę życia! Klikamy dwukrotnie na okienko zatytułowane "Frame 1" i w ten sposób przenieśliśmy się do edytora poziomów. Tak jak mówiłem - to tutaj tworzyć będziemy postacie, platformy, tła, zaawansowane modele 3D ... żartowałem. Jest jedna ważna rzecz o której nie wspomniałem - Multimedia Fusion 2 (MMF 2) zupełnie nie nadaje się do tworzenia zaawansowanych, trójwymiarowych gier. Program za to oferuje nam niezliczone sposoby wykorzystania możliwości techniki 2d, także spokojnie "skleimy" niejedną platformówkę czy przygodówkę, a przy większej wprawie - strategię, czy reprodukcję Diablo! Być może część z was właśnie teraz poczuła się zawiedziona, gdyż w planach miała już zrobienie remake'a Battlefielda 3 czy GTA VI ale niestety - to nie ten adres.

 

W porządku! Niedoszłych twórców gier 3d odprawiliśmy z kwitkiem, a my wracamy do naszego edytora. W tym momencie na planszy (białe, centralne pole) umieścimy pierwszy obiekt! \"newobj\"Zrobimy to za pomocą kliknięcia prawym przyciskiem na obszarze owego pola, wybierając z rozwiniętego menu opcję - Insert Object (utwórz obiekt). Z listy, która się przed nami pojawiła (lista pyta nas, jakiego typu obiekt chcemy wygenerować), wybieramy Active (z ikonką biegnącej postaci). Zatwierdzamy przyciskiem OK i klikamy w dowolnym miejscu planszy. W ten sposób pusta framka została zagospodarowana przez nasz pierwszy obiekt - zielony romb!

 

Dobrym nawykiem jest nazywanie nowo-utworzonych elementów, gdyż ułatwi to pracę w edytorze zdarzeń! Jak to zrobić? Po prostu kliknijmy prawym przyciskiem na nasz obiekt, wybierając z menu - Rename (zmień nazwę). Nazwijmy go "bohater", gdyż w niedalekiej przyszłości będzie to nasza postać, którą będziemy się poruszać i zwiedzać świat.

 

A teraz uwaga! Uruchomimy nasz projekt i sprawdzimy, w jaki sposób zachowuje się nasz bohater. Z górnego menu wybieramy Run > Application.

\"run\" 

Zaraz, zaraz... Nasz bohater w kształcie rombu w ogóle się nie porusza. Oczywiście że nie! I już nawet nie chodzi o to, że nie ma nóg - po prostu jeszcze nie kazaliśmy mu tego robić! Wyłączmy naszą niedopracowaną "gierkę" i wróćmy do edytora poziomu. Nasz obiekt o nazwie "bohater", musi wiedzieć, że został stworzony do bycia sterowanym przez gracza! Zaznaczmy naszego "bohatera" i z lewego panelu, zatytułowanego Properties , wybierzmy zakładkę Movements (ruchy - ikonka biegnącej postaci). Tutaj nadamy typ ruchu dla naszego obiektu. Z rozwijanej listy interesuje nas Platform (ruch platformowy) i ten właśnie typ wybierzemy.

 \"ruch\"

Spróbujmy sprawdzić reakcje naszego bohatera tym razem. Przetestujmy naszą grę po raz kolejny z menu wybierając Run > Application.

 

Sukces! Nasza postać się porusza! Co prawda znika przekraczając dolną krawędź okienka, spadając w niewiadomą otchłań, ale wcale się nie dziwimy. Bohater po prostu nie ma na czym stanąć! W porządku - zamknijmy okno naszej gry i znów wróćmy do edytora poziomów. Mamy tutaj jeszcze duużo pracy...

 

Czynnością priorytetową jest stworzenie nowych obiektów - platform, po których nasz chodzący obiekt będzie mógł się przemieszczać. W tym celu, jak się już domyślamy, klikamy prawym przyciskiem myszy na dowolnym, wolnym obszarze framki i znów wybieramy Insert Object. Tym razem poszukamy rodzaju obiektu o nazwie Backdrop (obiekt tła). Tego typu obiekt wybiera się głównie do tworzenia platform, przeszkód, drzew, krzaków, chmur itp. Jednym słowem - do tworzenia elementów statycznych (które podczas gry nie będą się poruszać). Zatwierdzamy klikając OK i stawiamy naszą pierwszą platformę w wybranym miejscu.

 

Trochę bieda, nieprawdaż? Coś skąpa ta platforma - nasza postać ledwo się na niej zmieści. Nie możemy dopuścić, żeby nasz kwadratowy bohater znów przepadł bez śladu w czeluściach dolnej krawędzi, dlatego zaznaczamy nasz nowo-utworzony obiekt tła, po czym po krótkiej chwili znów na niego klikamy lewym przyciskiem myszy. Dookoła niego pojawiło się 8 kropek/punktów. Służą one to zmiany rozmiarów naszego obiektu. Chwyćmy za prawy, środkowy punkt i przeciągnijmy go znacznie w prawo, poszerzając tym samym naszą platformę.

 

No właśnie. Nasza platforma jeszcze nie wie, że ma pełnić funkcję platformy. Trzeba jej o tym powiedzieć, inaczej nasza postać przeleci przez nią bez zatrzymania! Zaznaczamy nasz obiekt i znów po lewej stronie pojawia się okienko Properties.  Wybieramy zakładkę RunTime Options i Obstacle Type (typ przeszkody) ustawiamy na Platform. Teraz powinno być już w porządku. Testujemy naszą grę ponownie wybierając z górnego menu opcję Run >> Application.

 

Ale co to?! Postać przefrunęła przez naszą platformę jak szybowiec! Dlaczego? I tutaj z odpowiedzią na to pytanie wkracza edytor zdarzeń, który oferuje pomocną dłoń. To właśnie on pozwoli nam ustalić warunki dla których nasza postać ma się zatrzymać. Może brzmi to na skomplikowaną operację, ale zapewniam że nie taki diabeł straszny.

 

\"zdarzniea\"Ok, nie ma co narzekać. Myślę, że nasz bohater chce w końcu zobaczyć, jak to jest mieć grunt pod nogami! Niestety tak jak powiedziałem - musimy się rozstać z edytorem poziomów i przejść do mniej przyjaznego edytora zdarzeń. Klikamy na trzecią ikonkę o której mowa była w akapicie o rodzajach edytorów. Będziemy tutaj tworzyć nasze pierwsze warunki i (jak sama nazwa wskazuje) zdarzenia!

 

Schemat tworzenia warunków i zdarzeń to nic innego jak proste: "jeśli zostanie spełniony jakiś warunek >> wykonaj następujące zdarzenie"
Przypominają się lekcje matematyki i tematy  o operatorach logicznych, hm? Tak się składa że te rzeczy mają ze sobą wiele wspólnego i właśnie sobie odpowiedzieliśmy na pytanie które sobie zadawaliśmy podczas szkolnych zajęć - "Po co my się tego uczymy? :|". Hehe.

 

Wszystko co musimy zrobić, to wziąć naszą sytuację na logikę. Musimy zadać sobie pytanie, kiedy nasza postać ma się zatrzymać. Odpowiedź jest banalna - nasza postać ma przestać spadać, gdy zajdzie kolizja między nią, a platformą (przeszkodą). Taki też warunek teraz stworzymy! Będąc w edytorze zdarzeń, klikamy na New condition (nowy warunek) i zaczynamy zabawę!

 

Jak już mówiłem - warunek będzie dotyczył naszego czworokątnego bohatera i platformy. W okienku które się nam pojawiło klikamy prawym przyciskiem myszy na ikonie naszej postaci i wybieramy Collisions (kolizje) >> Backdrop (przeszkoda). Warunek który utworzyliśmy można przetłumaczyć tak : "Jeśli obiekt "bohater" koliduje z przeszkodą (platformą)..." . Teraz musimy dokończyć zdanie za pomocą zdarzenia, które będzie brzmiało : "... to zatrzymaj obiekt "bohater". Prawda że brzmi to logicznie? Tak jak mówiłem - program jest bardzo intuicyjny i genialny w swej prostocie!

 

Dobrze, dobrze - tylko jak "dokleić" tą drugą część zdania (zdarzenie wynikające z warunku)? Spokojnie. Jak widzimy, za naszym warunkiem pojawił się rządek kratek. To miejsce w których możemy dokańczać nasze rozpoczęte "zdanie". Jako że zdarzenie będzie dotyczyło naszego bohatera (musimy go zatrzymać), klikamy prawym przyciskiem myszy na kratkę pod nim i wybieramy Movement (ruch) >> Stop (zatrzymaj).

 

Tą utworzoną przed chwilą przez nas pierwszą, kompletną linię "kodu" można przetłumaczyć następująco : "JEŚLI obiekt "bohater" koliduje z przeszkodą (platformą), TO  zatrzymaj ruch obiektu "bohater"". Całkiem przejrzyste, czyż nie?

 

Teraz to co tygrysy lubią najbardziej - TESTOWANIE! Powtórzmy zatem procedurę uruchamiania naszej gry. Robiliśmy już to dwukrotnie, więc myślę że teraz nie będzie z tym problemu. : )


Uff. Tym razem nasz bohater nie spadł, a co więcej - trzyma się stabilnie i można nim sterować za pomocą strzałek klawiatury! O to nam chodziło!

 

Mamy za sobą pierwszy, poważniejszy sukces! Zapiszmy nasz projekt za pomocą ikonki dyskietki pod górnym menu i zakończmy pracę z programem. Spokojnie-  wrócimy jeszcze go niego, ale na dziś to już niestety wszystko. Opanowałeś kilka podstawowych funkcji Multimedia Fusion, dlatego myślę, że teraz pójdzie już tylko z górki.

W następnym odcinku odpicujemy naszego bohatera (pod względem graficznym i nie tylko...) oraz dopracujemy platformy i dodamy kilka elementów tła. Co więcej, podzielę się z Tobą linkami do stron, które z pewnością Cię zainteresują...

Z każdym kolejnym odcinkiem cyklu \"Zróbmy sobie grę\", będziemy doprowadzać świat naszej gry do perfekcji, dlatego nie przegap następnego numeru WSPAKA, bo to właśnie w nim spotkamy się ponownie! Przy okazji chciałbym zaprosić Cię na swojego bloga, który głównie poświęcony jest właśnie tworzeniu gier w MMF 2. Znajdziesz tam kilka moich produkcji i (mam nadzieję) ciekawe wpisy. Zapraszam raz jeszcze i do zobaczenia!

Trzymaj się ciepło i kreatywnie!

 

Tomasz (Tropik) Gaffke

Ostatnio przeżywałem nie lada twórczy kryzys, który zupełnie wybił mnie z kreatywnego rytmu. Na jakiś czas rzuciłem dosłownie wszystko, co wiąże się z moimi zainteresowaniami. O programowaniu zapomniałem, czarno-białą klawiaturę rzuciłem w kąt, karaczany, które hoduję, dosłownie zaczęły tworzyć własny ekosystem, żyć po swojemu... Mówiąc prościej - straciłem motywację do wszystkiego.

Czytaj więcej...