A játékfejlesztők legjobb barátai
Bekukkantottunk a népszerű játékok felszíne alá, hogy bemutassuk a meghajtásukért felelős game engine-eket.
Míg korábban fejlesztők egész serege dolgozott egy-egy videojátékon, ma már sokkal kevesebb ember munkája is elég ahhoz, hogy mi a kanapén hátradőlve, kontrollerrel a kezünkben végigszaladhassunk kedvenc világunk színterein. Kissé átszerveződött a piac, már nem feltétlenül kell minden egyes apró komponenst lekódolnia a szoftvert készítő csapatnak ahhoz, hogy a későbbiekben élvezhessék a megírt funkciók előnyeit, a különféle játékmotorok ugyanis hatalmas segítséget kínálnak számukra.
A engine-ekben rengeteg olyan eszközkészletet megtalálhatnak egyetlen közös szoftverbe integrálva, amelyeket a korábbiakban szegmentált programok tömkelege kínált csupán, és amelyek pontos kezeléséhez a legtöbb esetben az adott területre specializálódott szaktudással rendelkező emberekre is szükség volt. A game engine-ek egyszerűsített kialakítása és a szoftverek rendkívül kedvező használati feltételei pedig lehetővé tették, hogy a független játékfejlesztők és a kisebb stúdiók lelkes fejlesztői is komoly esélyekkel induljanak a piacon, ennek köszönhetően pedig az indie fejlesztőcsapatok sokszor zseniális ötletei könnyebben eljuthatnak a végső fázisig, vagyis a játék megjelenéséig.
HelloWorld táborainkban - köztük az ESET támogatásával megvalósuló Minecraft táborunkban - kiemelt figyelmet szentelünk a Unity felhasználásának, most cikkünkben viszont nem egy, hanem rögtön három olyan ingyenes játékmotorra hívnánk fel a figyelmedet, amelyeket te is szabadon felhasználhatsz, ha játékot szeretnél fejleszteni. Amint ezek közül kiválasztottad a számodra leginkább szimpatikus felülettel és kódolási lehetőségekkel rendelkező eszközt, belevághatsz a tervezés fázisába. Ha pedig már azt is eldöntötted, milyen stílusú játékot szeretnél megvalósítani, és mely platformon képzeled el alkotásodat, lényegében el is kezdheted saját szórakoztatóalkalmazásod összeállítását.
Szerezzünk modelleket!
Első lépésként a világunk megalkotásához szükséges modelleket kell megalkotnunk, azonban ha digitális objektumok elkészítésében szerzett ismereteink kissé hiányosak, vagy csak szimplán nem érezzük kellően acélosnak e képességünket, esetleg csak fel kívánjuk gyorsítani a játékkészítés folyamatát, bátran csemegézhetünk az internetszerte ingyenesen elérhető modellek kínálatából. A környezet megalkotásához a motorok is kínálnak komponenseket, azonban a játékban használni kívánt karakterek és objektumok beszerzéséért érdemes felkeresnünk néhány online piacteret, ahol könnyen megtalálhatjuk az alkotásunk megtestesüléséhez szükséges kirakós darabkáit.
A TF3DM oldal üzemeltetői és a hozzá kapcsolódó közösség teljesen ingyenesen kínálják a különféle 3D-s objektumokat, amelyek között kategóriákra bontva böngészhetünk. Hasonlóképpen találhatunk ingyenes modelleket a TurboSquid felületén, igaz, itt már kicsit komolyabb kutatómunkát igényel majd előkerítésük, mert a honlapon professzionális alkotók fizetős tartalmai is helyet kaptak, ám a megfelelő szűrők alkalmazásával megkímélhetjük magunkat a néha több ezer dolláros áron kínált, precízen megalkotott digitális felületek látványától. Statikus modelleket tehát egyszerűen beszerezhetünk ezekről az oldalakról, azonban a legtöbb esetben animált modellekre is szükségünk van ahhoz, hogy alkotásunk valóban tökéletesen mutasson a képernyőn.
Szerencsére alapvető animációkat és néhány hasznos extrát találhatunk az egyes játékmotorokon belül is, de néhány saját mozgássorozat megalkotására szintén lehetőséget kapunk, ha ellátogatunk az Adobe által felvásárolt Mixamo honlapjára, ahol akár a korábban letöltött saját modelljeink életre keltésére is lehetőséget kapunk. Tehát környezetünk és animált modelljeink megvannak, már csak az egyes játékmotorokat kellene kicsit közelebbről is megismernünk. Lássuk a három legnépszerűbb, ingyenesen használható játékmotort.
Unity 3D
Nem véletlen, hogy a jelenlegi játékpiac független alkotásainak nagy része a Unity motorra épülve készült el: a kedvező licencelési feltételeknek köszönhetően a szoftvert az indie csapatok - igaz, kezdetben csak limitált képességek mellett - ingyen vehették használatba. Valószínűsíthető, hogy a Unity fizetés nélkül is elérhető szolgáltatásainak köszönhető az is, hogy ma már a legtöbb hasonló játékengine mindenféle havidíj nélkül használható. Szerencsére azonban a jól bevált felületet nem szívesen cserélik ismeretlen környezetre a fejlesztői csapatok, így cseppet sem csökkent a szoftver népszerűsége a friss vetélytársak megjelenésével. Mindemellett a szoftver aktív fórumélete és részletes útmutatója tökéletesen képes végigvezetni akár az egyszemélyes alkotókat is a játékkészítés teljes folyamatán.
Ismerkedés a felülettel
Számtalan különféle kattintható felület és eszköztár áll a rendelkezésünkre már az első indítást követően is a Unity főképernyőjén, azonban egy alaposabb használatot követően már tudni fogjuk, hogy milyen komponensekre lesz szükségünk folyamatosan, és a megjelenő paletta mely elemeit érdemes rejtetté tennünk. Persze az alapesetben elérhető öt különböző kialakítást ennek megfelelően néhány kattintással személyre szabhatjuk, és a layoutok sablonjait el is menthetjük, így egy-egy új projekt indításakor már a megszokott elrendezés fogad minket. Alapvetően két, jól elkülönülő részre oszthatjuk fel a képernyőt, a megjelenítésért felelős ablakokra, valamint a különféle elemeket és szolgáltatásokat kínáló eszköztárakra. A vizuális felületek ablakában egy szerkesztői nézet fogad minket, ahol a 3D-s teret bejárva helyezhetjük el a játékunk során használni kívánt komponenseket. A szoftver emellett egy mappaszerű navigációs komponenseket tartalmazó listát is kínál, ahol a projektünkben használni kívánt eszközeink (modellek, animációk, kódok) foglalnak helyet.
Az egyes fájlokra kattintva az Inspector névre hallgató oldalsáv felületén megjelenik az adott komponenshez tartozó részletes leírás és a különféle akciókat kínáló gombok is. Modellekhez itt társíthatunk szkripteket, textúrákat, és rengeteg további beállítási lehetőséget is találhatunk még a felkínált funkciók rengetegében. Szkriptek kiválasztásakor egyébként a közvetlen kódba nyerhetünk bepillantást, animációk esetében pedig a modellünkre alkalmazható folyamatot szemlélhetjük végig, és ha szükséges, megvághatjuk a mozgássorozat hosszát. Ezenkívül külön felületen vezérelhetjük az animációk összhangját és a hangzásvilágot, az Asset Store felületéről pedig számos hasznos kiegészítőfunkciót és demóprojektet szerezhetünk be, amelyek még könnyebbé varázsolják az alkotás folyamatát. A Unity felületének életre keltéséhez alapvetően három programnyelv áll a rendelkezésünkre, a C# Script, a JavaScript, valamint a felület saját nyelve, a BooScript. Érdemes tehát a JavaScript vagy a C# Script irányában fejleszteni tudásunkat, a legtöbb mankót a közösség e nyelvekhez kínálja.
Miért pont a Unity?
Talán azért jelenti a Unity a legideálisabb választást a kezdő fejlesztők számára, mert a szoftver számos segédanyaga és viszonylag könnyen kiismerhető felülete mellett jelentős fejlesztői fórummal is büszkélkedhet, ahol a felmerülő kérdésekre rövid keresést követően gyorsan találhatnak megoldást az alkotók. Programozói ismeretek birtokában is bátran belevághatunk saját unitys projektünk elkészítésébe, hiszen már néhány szkript megírását követően is látványos eredményeket érhetünk el.
Mindenképp ügyeljünk viszont a szoftver folyamatos frissítésére; elkészített alkalmazásainkat minden esetben konvertálnunk kell az új verziókra. Az újonnan beemelt funkciók ugyanis korábban megírt szkriptjeink alapján nem feltétlenül működnek majd, ha a korábban kézzel összeeszkábált kódunk már kiemelt assetként elérhető a szoftveren belül; ha tehát nem tartjuk a lépést, gyorsan elavulttá válhat tudásunk.
Papírt is szerezhetsz
Mivel hatalmas az érdeklődés a Unity-fejlesztők iránt, a szoftverért felelős csapat úgy döntött, hogy hivatalos vizsgával egészíti ki jelenlegi portfólióját. A vizsga abszolválásával a program használatában jártas fejlesztők egy plusz bizonyítvánnyal jelentkezhetnek a cégeknél a unitys állásokért. A különféle vizsgalehetőségekről és a tananyagokról a Unity Certification aloldalán tájékozódhatnak az érdeklődők.