Hungame Interjúk: Nyakacska Zoltán


A legújabb hungame.blog interjút egy igen tapasztalt programozóval, Nyakacska Zoltánnal készítettem, aki többek között olyan projekteken dolgozott, mint a Ignite és az ESO (The Elder Scrolls: Online). Mesélt első nagyobb munkáiról, kihívásairól a játékmotorok fejlesztésében, és a karrierje meghatározó pillanatairól.

Mi volt az első olyan játékprojekt, amin már nem csak hobbi szinten, hanem professzionális szinten, munkaként dolgoztál? Kérlek, mesélj erről a projektről és arról, hogyan érezted magad, amikor beléptél a játékfejlesztés világába.

Nem is egy, hanem rögtön kettő project is futott a cégnél, ahol először elkezdtem dolgozni, és mindkettőből kivettem a részem. Az egyik egy Pranksters3D nevű, külső nézetes gyerekeknek készülő játék volt, amit megrendelésre csináltunk. A másik pedig a HeatWave nevű autóversenyzős játék, ami a belsős fejlesztés volt.

Akkor azért még teljesen más világ volt a játékfejlesztés, mert nem voltak nagy és ingyenes engine-ek. Mindenki minden kódot magának írt, és ez alól mi sem voltunk kivételek. Én máig nagyon szerencsésnek tartom magam, hogy már az elején megtapasztalhattam, hogy hogyan is működik egy komoly játékmotor és annak fejlesztése, mennyi sok apróságot kell megtanulni, saját magadnak kézzel megcsinálni, mire egy játék egyáltalán elkészülhet.


Karriered során melyik projekt jelentette számodra a legnagyobb kihívást? Kérlek, oszd meg velünk, hogy milyen nehézségekkel szembesültél, és hogyan sikerült megoldanod ezeket.

Szakmailag a legnagyobb kihívás szerintem az volt, amikor az ESO (The Elder Scrolls: Online) stabilitási és performance problémain dolgoztam. Egyrészről ez volt az első valóban tripla-A játékproject, amin dolgozhattam, másrészt az elvárások elég magasan voltak, hiszen a megoldandó problémák élesben, a játékosoknál crash-ek formájában jelentkeztek.

A problémák egyik feléért különböző rejtélyes programhibák feleltek, amik közül több is már évek óta lappangott a rendszerben és véletlenszerűen csapott le, ezzel egyszerre megkeserítve a játékosok és a teszter csapat életét is. Segítettem megoldani a túlzott memóriahasználat okozta gondokat is, mert a játék az akkori console generációkban létező összes memóriát megette.

Sokrétű feladat volt ez, és éppen ez jelentette a kihívást, ráadásul egy működő játékon kellett ezeket megcsinálni, amihez 3 havonta ment ki újabb és újabb frissítés.

Szinte minden változtatást egy külön kapcsoló mögé tettünk, hogy a QA alaposan le tudja tesztelni, így gyakran több code path is életben volt tartva, amíg bizonyossá vált, hogy egy adott optimalizáció valóban jól működik és nincs semmilyen mellékhatása. A játék ekkor már 5 éve futott, szóval a kódbázis hatalmas volt.


Melyik a kedvenc emléked vagy történeted a játékfejlesztői karriered során? Olyan sztorira vagyunk kíváncsiak, amelyet már sokszor elmeséltél itt-ott meetupokon, vagy épp barátokkal összeülve.

Csináltunk egy “Rocket Bullet Storm” nevű játékot, ami egy 70 méter magas Vodafone torony oldalán futott hatalmas LED display-eken, a Sziget fesztivál közepén. A project-re mindössze 1 hónap állt rendelkezésre, de sikerült.

Eredetileg csak napi pár órás tournament lett volna, de az első nap a sorban álló emberek hosszú kígyózó sora láttán a vezetés azonnal újratervezett, es utána minden nap reggeltől késő estig ment a játék.

Akkora siker lett, hogy még a Electronic Arts is írt egy e-mailt, amiben kedvesen megkérnek minket, hogy változtassunk nevet, mert túlságosan hasonlít a Bulletstorm nevű játékukra, és ha ilyen névvel jelenik meg, akkor kénytelenek lesznek jogi útra terelni az ügyet. xD


Van-e olyan játék vagy projekt, amelyet különösen sajnálsz, hogy nem valósult meg vagy nem lett sikeres? Ha igen, miért?

Különösen sajnálom, hogy az iOS-re átportolt Ignite nevű autós játékunk végül azon a platformon sosem jelent meg. Rengeteget dolgoztam azon, hogy a teljes (akkor Steam-en már megjelent) PC-s kontent elfusson egy akkori iPad-en, ami látványra még jobb is volt, mint az akkori kihívója, az Asphalt 7. Végül sajnos a kiadóval több probléma is adódott, és a project a fiókban végezte.


Jelenleg hol dolgozol és milyen projekteken tevékenykedsz éppen? Kérlek, mesélj a mostani munkádról és a legizgalmasabb kihívásokról, amelyekkel szembesülsz.

Jelenleg a ZeniMax Online Studios Hungary nevű cégnél vagyok, és egy teljesen új (még be sem jelentett) MMORPG játékon, vagyis annak a játékmotorján dolgozom. Az én felelősségem, hogy a játék jól fusson minden platformon, amin tervezzük megjelenteti.

A legnagyobb kihívás az, hogy egy teljesen új belső használatú játékmotort fejlesztettünk/fejlesztünk ehhez a projecthez, amit nem sok cég mer bevállalni manapság. De erről bővebben majd csak a játék megjelenése után beszélhetek.


Melyik játékfejlesztési szakaszt élvezed a legjobban (pl. koncepcióalkotás, tervezés, programozás, tesztelés), és miért?

Programozás, hiszen programozó vagyok. 😀
Azon belül pedig azt kell mondjam, hogy így 16 év professzionális játékfejlesztés után valahogy jobban érdekelnek a technikai jellegű problémák es azok megoldása, mintsem, hogy hogyan ugorjon a karakter, vagy az AI hogyan viselkedjen.


Amellett, hogy játékok fejlesztésében veszel részt, szoktál-e játszani is? Ha igen, melyek a kedvenc játékaid, és miért szereted őket?

Természetesen szoktam játszani. Nagyon közel áll a szívemhez az FPS műfaj, így abból “mindenevő” vagyok: a single player-től kezdve (pl. Doom Ethernal), a multiplayer-en át (pl. Valorant) a puzzle game-ekig (pl. Talos Principle 2). De a Steam-es profilom alapján a legtöbb órát a Factorio nevű játékba tettem.


Hogyan változott a játékfejlesztési folyamat azóta, hogy elkezdtél dolgozni az iparban? Melyek voltak a legnagyobb átalakulások és trendek, amelyeket megfigyeltél?

Én most kicsit technikaibb oldalról szeretném ezt megválaszolni. Szerintem két nagyon fontos változás történt: Az egyik a már említett nagy és mindenki számára elérhető játékmotorok megjelenése. Ma már nem kell mindent kézzel lekódolni, ha játékot szeretne valaki csinálni.

A másik pedig, hogy régen az 1 és 2 magos CPU-k korában a teljes játéklogika egy processzormagon, úgynevezett single core környezetben futott, és jellemzően csak a rendering és az audio volt külön szálon. Manapság a 16-24-32 magos CPU-k világában nagyon fontos lett az, hogy miként tudják a fejlesztők a rendelkezésükre álló erőforrásokat minél jobban kihasználni. És ezt gyakran már a játék tervezésekor figyelembe kell venni.

The Elder Scrolls Online


Hogyan kezeled a munka és a magánélet egyensúlyát egy olyan “stresszmentes” iparágban, mint a játékfejlesztés?

Nagy segítség, hogy végtelenül megértő a feleségem. 🙂
De velem amúgy is többször esik meg az, hogy saját magam miatt dolgozom többet, és nem azért, mert kötelező lenne túlórázni. Néha 1-1 nap valami nagy mérföldkő vagy release előtt szerintem belefér, de amikor azt olvasom, hogy heteket túlóráznak fejlesztők, az számomra egyértelműen egy management és tervezés probléma. Mi annyi munkával tervezünk, ami az adott fejlesztőnek is kényelmes.

Minél több ember dolgozik együtt, a jó tervezés annál fontosabb, és ezáltal a stressz is és a túlóra is jelentősen lecsökken. És akkor a magánélet se kerül háttérbe.


Milyen tanácsokat adnál azoknak a fiatal fejlesztőknek, akik most szeretnének belépni a játékfejlesztők világába? Milyen készségekre és hozzáállásra van szükségük ahhoz, hogy sikeresek legyenek ebben az iparágban?

  1. A problémamegoldó készség a legfontosabb, minden más szerintem tanulható.
  2. Egy játékot befejezni a legnehezebb. Gyakran az utolsó 10%-hoz az időnek újabb 90%-a szükséges. Ha már épp dolgoztok egy home project-en, akkor próbáljátok meg végig vinni. Rengeteg nagyon jó és hasznos tapasztalatot fogtok szerezni.
  3. Ebben a szakmában egy interjú során sokkal többet számít pár otthon készült játék(kezdemény), mint az iskolai végzettség.

Válasz írása

Működteti a WordPress.com. , Anders Noren fejlesztésében.

Fel ↑