Kariéra herního vývojáře: Programátor
Autor: Nepos Games
Programátoři patří mezi profese, které se dlouhodobě v platových žebříčcích pohybují velmi vysoko. Někteří zájemci se ale bojí toho, že jejich práce bude zahrnovat především monotónní sezení u počítače a vytváření něčeho, co nebude mít veřejnost příležitost vidět. Přitom kariéra programátora, který se specializuje na tvorbu počítačových, konzolových či mobilních her, je přesným opakem.
Jak už název napovídá, programátor je specializovaným druhem „ajťáka“, který se zabývá hlavně psaním samotného programového kódu. Jak to vypadá v praxi v herním světě? Prostřednictví jazyka, který se skládá z příkazů s jasně danými pravidly, říká programu nebo hře, co má dělat v dané situaci. Například když hráč provede nějakou konkrétní akci.
O práci programátora jsme si povídali s Josefem Hájíčkem, zkušeným vývojářem, který má za sebou působení ve velkém českém herním studiu i jeden úspěšný nezávislý projekt. V současnosti pracuje na nové hře zasazené do evropského středověku. Ale to už trošku předbíháme…

Studoval AI ještě dříve, než to bylo cool
Josef je absolventem Fakulty elektrotechnické ČVUT, konkrétně studijního oboru Otevřená informatika. „A to se specializací na umělou inteligenci, ještě před rozmachem AI v posledních letech,“ směje se. Po dokončení studia nastoupil jako programátor ve společnosti SCS Software, kde dodnes pracuje i hrdina prvního dílu našeho seriálu, 3D grafik Jan Šídlo. Vyvíjí se tu populární simulátory řidičů kamionů v Evropě a Americe.
Jako programátor se Josef zaměřoval na umělou inteligenci a chování dalších aut, kódoval různé náhodné události dějící se na silnicích a výrazně přispěl také k tvorbě obsahového přídavku věnovaného nadměrným nákladům.
„Během posledního roku na vysoké škole jsem zároveň začal pracovat na svém projektu hry Nebuchadnezzar, budovatelské strategie z Mezopotámie,“ vzpomíná Josef. V roce 2019 společnost SCS Software opustil a společně se svým parťákem Luďkem Hrochem založil nové studio Nepos Games.

U herních vývojářů není nic neobvyklého, že zahájí svou profesní dráhu ve větší firmě a postupně se přesouvají k menším projektům. „Pokud někdo sní o vlastním studiu a nezávislé hře, osobně doporučuji zkusit si nejdříve na prvních pár let najít místo v zavedeném herním studiu. Člověk tak získá neskutečné zkušenosti z reálného světa a vývoje. Také potká plno zkušených a schopných lidí, což může být v jakémkoliv vlastním projektu neocenitelná pomoc,“ doplňuje Josef Hájíček.
Jeho nový projekt se jmenuje County of Fortune. Jde o originální budovatelskou strategii, ve které hráč místo stavby jednoho města rozvíjí celý region skládající se z mnoha desítek osad, vesnic a měst. Vydání hry je plánováno na 4. čtvrtletí letošního roku. A jestli to vše bude zábava? O tom rozhoduje správný game design. Právě práci game designéra se budeme věnovat příště.
Na jazyku či technologiích tolik nezáleží
Jednou z nejdůležitějších věcí, které musí autoři hry vyřešit na začátku celého projektu, je volba takzvaného herního enginu. To je technologické jádro, které vše pohání – taková „herní lokomotiva“. Někteří vývojáři se rozhodnou pro tvorbu vlastního, jiní vybírají mezi zavedenými možnostmi jako Unreal Engine, Unity, CryEngine či Godot. Mají už v sobě funkcionality, které potřebuje každá hra, a tak je nemusejí programátoři vymýšlet stále znova. Další výhodou je, že na YouTube najdete tisíce videí o tom, jak s nimi pracovat.
Josef vysvětluje, že na začátku kariéry není až tak důležité, s jakým nástrojem či programovacím jazykem se člověk seznámí jako první. „Určitě by se našly technologie, které jsou aktuálně používanější a více v kurzu. Ale programování obecně je mnohem více o schopnosti analyzovat a řešit problémy, znát algoritmy a umět celkově přemýšlet jako programátor,“ tvrdí. Pokud se programátor osvědčí, většina firem mu dá dost času na to se s novou technologií naučit a sžít.

Často se mluví o tom, že programátory může v budoucnosti nahradit umělá inteligence. Jenže ta je podle Josefa v současnosti schopná řešit spíše specifické problémy malého rozsahu. Práce herního programátora je ale neuvěřitelně pestrá. K čemu se třeba může dostat?
- Plánování celé herní „architektury“, tedy toho, jak bude kód držet pospolu.
- Programování protivníků a jejich chování, včetně rozhodovacích stromů.
- Pathfinding neboli hledání nejkratší cesty pro herní postavy i protivníky.
- Programování síťové architektury, aby mohlo hrát více lidí společně.
- Renderování čili zobrazení 3D simulovaného světa.
- Výroba kreativních nástrojů pro další členy týmu.
To je jen pár z mnoha možností. Nemusíte zvládat všechny, poptávka je i po vysoce specializovaných programátorech. Základem je logické uvažování, schopnost abstraktního myšlení a zájem o to, řešit zajímavé problémy i učit se stále něco nového.
Když do sebe všechno zapadne
Práce herního programátora sice patří mezi technické profese, zároveň však má i nepopiratelný umělecký přesah. „Doporučil bych ji všem, kteří chtějí vytvářet produkt, který dělá lidem radost a třeba je může i něčemu novému naučit,“ říká Josef. A chválí si i pracovní kolektiv, který je v herních studiích často důvodem, proč jsou tu lidi spokojení.
„Platové ohodnocení může být o něco horší než třeba u programátora v bance, ale náplň práce je zajímavější. Ocitnete se mezi lidmi, kteří mají hodně společných zájmů, což je určitě plus,“ láká budoucí naděje českého herního průmyslu. Josefovu připravovanou hru County of Fortune si můžete prohlédnout na videu níže: