'Kun lapset kuitenkin räpläävät sitä ruutua koko ajan, niin tuotetaan siihen silmien eteen jotain mistä on elämässä oikeasti jotain hyötyä.'
- Perttu Terho

Opetusvideoita pelinkehitykseen GDevelopilla
Scratch on kiva ohjelnoinnin aloitustyökalu, ja vaikkapa tämän materiaalin läpikäymisellä pääsee hyvin sisälle ohjelmointiin. Kuitenkin jos haluat ohjelmontia opittuasi kokeilla tehdä kunnianhimoisempia peliprojekteja, vaihda ehdottomasti kunnon pelimoottoriin. Monet niistä ovat yhtä helppoja kuin Scratch, ja lähes minkä tahansa projektin tekemisessä pesevät Scratchin mennen tullen. Kunnon pelimoottorien tuotokset on mahdollista julkaista vaikka,Google Playssa tai selainpelinä, minkä olettaisi nostavan motivaatiota käyttää kunnon työkalua.

Pelimoottoreita on useita hyviä, ja 2D-pelien tekoon mm. GDevelop, Godot ja GameMaker ovat mainioita. 3D-projekteihin kannattaa miettiä Unitya tai Unreal Enginea. Oma suositukseni on aloittaa astetta yksinkertaisemmista 2D-moottoreista. Itse käytän GDevelopia, eivätkä ominaisuudet ole ainakaan vielä loppuneet kesken. Ikuiseen kysymykseen siitä, mikä on paras pelimoottori, sopii mielestäni vastaus: se mitä on tottunut käyttämään.

Objektit



Tässä videossa käydään läpi GDevelopin käyttöliittymä, lisätään ensimmäiset objektit ja tehdään tasohyppelypeli kirjoittamatta riviäkään koodia.




Eventit



GDevelopilla koodaus perustuu eventteihin, joissa määritellään ehto, ja jos ehto toteutuu, tapahtumat. Videossa parannetaan tasohyppelypelin ohjausta.




Kamera



Videolla kuvataan kameran liikuttelun perusteet, jolla kamera saadaan seuraamaan pelaajahahmoa,ja havaitaan että pelimaailmaa voi laajentaa joka suuntaan niin paljon kuin mielikuvitusta riittää.




Skenen aloitus ja uudelleenaloitus



GDevelopissa rakennetaan 'skenejä', jotka ovat itsenäisiä kokonaisuuksia omine grafiikoineen ja koodeineen. Videolla käydään läpi, miten skene käynnistetään ja esim. hahmon tipahtaessa pelialueelta ulos, miten päästään uudelleenkäynnistyksellä näppärästi tason alkuun uudelleen.




Koodin järjestely ja siivoaminen



Heti alusta asti on syytä opetella, miten koodista saa siistiä ja helposti luettavaa. Tässä videossa vinkit siihen.




Hahmojen animointi, subeventit ja Game Feel



Videolla nähdään, miten GDevelopissa rakennetaan animoituja pelihahmoja. Samalla tutustutaan, miten eventtejä voi asetella järkevästi alieventeiksi ja näin selkeyttää koodia. Lopussa vielä puhutaan tärkeästä asiasta nimeltä Game Feel, eli pelituntuma.




Layerit ja taustan lisääminen



GDevelopissa objektit voi laittaa eri tasoille, jolloin ne esim. liikkuvat eri nopeuksilla. Tässä opitaan, miten tasoja voidaan hyödyntää järkevästi.




Muuttujat ja teksti-objekti



Muuttujat kuuluvat olennaisena osana ohjelmointiin. Videossa nähdään, miten muuttujia käsitellään GDevelopissa ja miten niiden arvoja (esim. elämät tai kerätyt timantit) saa näkyviin peliin.





Gridin käyttö ja object groupit



Kun pelimaailmaa rakennetaan tietynkokoisista palikoista, niiden asetteluun tarvitaan grid. Videolla nähdään, miten tämä toimii. Mikäli pelissä on useita objekteja, joihin tarvitsee kohdistaa samoja asioita, kannattaa näistä luoda object group.




Object variablet



Myös objekteilla voi olla aivan omia muuttujia. Videossa esimerkkinä aarrearkkuja, jotka jokainen sisältää eri määrän kultarahoja.




Vartija-monsterin lisäys peliin



Videolla lisätään ensimmäinen monsteri peliin ja saadaan se liikkumaan halutulla välillä edestakaisin. Näillä keinoilla saadaan peliin dynamiikkaa.




GDevelopin käyttö Chromebookilla



Video esittelee, miten GDevelopia käytetään Chromebookilla.





Tältä sivustolta löydät tietoa Perttu Terhon (alias Paleleva Pingviini) edesottamuksista, peliprojekteista ja muista.

Sivustolla esitetyt mielipiteet ovat kirjoittajan omia eivätkä edusta minkään erityisen tahon kantoja.

Kysyttävää, kommentoitavaa: paleleva.pingviini@gmail.com