Co napíšu, můžu si rovnou zahrát, líbí se UI programátorovi z Warhorse
27. 4. 2021
2 min.
Nikdy nebyl velkým hráčem her, ale přesto se podílel na jednom z nejúspěšnějších českých titulů Kingdom Come: Deliverance. Michal pracuje ve Warhorse Studios již přes 6 let jako UI programátor a na starosti má například tvorbu inventářů, quest logů nebo map. V rozhovoru nám svou profesi přiblížil!
Nehrajete hry, ale vytváříte je. Jak se to stalo?
Studoval jsem obor počítačové grafiky a zpracování obrazu na Masarykově Univerzitě, v tu dobu jsem také narazil na Dana Vávru a jeho videa o vývoji Kingdom Come. Potom jsem si na jeho Facebooku všiml inzerátu, ve kterém sháněli flashaře. To už tehdy byla téměř mrtvá technologie, ale já v ní dělal několik let včetně své bakalářky. Hry jsem do té doby nehrál, ale ukázalo se, že to pro mou pozici není taková nutnost. Mnoho lidí to bere jako svou hlavní kvalifikaci, když se k nám hlásí, ale počet odehraných hodin opravdu není pro programátora důležitý.
Jaké technologie ve Warhorse ještě používáte?
Pracuji už i jako klasický programátor, což u nás znamená psát v jazyce C++. Pro UI ale primárně používáme vývojové prostředí Adobe Flash, jehož novější verze se dnes jmenuje Adobe Animate. Pracujeme s 2D grafikou od konceptářů, kterou si musíme upravit, naimportovat, rozdělit na tzv. movie clipy a ty poté rozpohybovat pomocí skriptů. Pokud by se k nám někdo hlásil, měl by v tomto programu být rutinér. Samotný jazyk Action Script ve verzi 2 se dnes už prakticky nepoužívá ale někdo, kdo umí Javascript, by se ho měl tak za cca měsíc naučit.
Lidé mimo hry si možná nepředstaví, co má UI programátor na starosti. Na čem tradičně pracujete?
Je to například inventář, ve kterém má hráč uložené předměty. A pak všechny možné menu, quest logy, mapa nebo některé minihry. Velkou částí je HUD (heads-up display), ve kterém jsou vidět životy, kompas a nejrůznější notifikace V rámci kódu pracujeme v tzv. GUI Modulu (Graphic User Interface), který se stará o vykreslení informací a sbírání inputů od hráče. Když například odchytneme pokyn otevřít inventář, tak se back-endu zeptáme, jaké v něm má hráč předměty. To nám dá balík dát, které zpracujeme a přepošleme do flashe, ve kterém se to vykreslí jako jednotlivé položky v listu.
Liší se nějak programování her od jiných aplikací?
Musí se hodně řešit výkon, protože algoritmy řešící tentýž problém mohou mít výrazně odlišnou časovou složitost. Hodí se proto mít formální vzdělání, aby programátor věděl, jak správně pracovat s datovými strukturami. Nelze mít naivní přístup a počítat s neomezeným výkonem, protože se jedná o náročnou hru a ne aplikaci, která jednou za čas něco vykreslí. A samozřejmě velký bonus práce zde je, že co vytvořím, si pak můžu hned zahrát.
Jak víte, co tvořit? Dostáváte zadání, nebo jde něco i od vás?
Začíná to brainstormem s designéry, kteří do hry něco vymyslí a my naceníme vývoj. Pokud víme, kolik času to bude stát, představíme to a po schválení se časem dostaneme k vývoji. Předáváme to konceptářům, kteří nám dodají assety, Výsledek si pak projde vedení, jehož připomínky následně zapracováváme. Ještě nám to v poslední fázi vrací testeři, kteří objeví nějaké chyby, ač na modelových datech třeba vše vypadalo dobře.
Vývoj se obvykle neobejde bez chyb a bugů, máte nějaký příklad?
Po vydání hry se hodně probírala minihra odemykání zámků. Na základě feedbacku jsme ji v patchi zjednodušovali. Trochu se projevila naše tvůrčí slepota, jelikož jsme to hráli všichni furt dokola a perfektně se tu minihru naučili. Kromě toho jsme zjistili, že nám každý gamepad posílal jiná data. Když točíte plně vyklopenou páčkou, nedostáváte kruh, ale spíše takový čtverec s ukousnutými rohy. Jinak jsou chyby samozřejmě běžné, občas někdo nedomyslí koncept a ukáže se, že ve finále nefunguje. Máme už ale celkem zkušenosti, díky kterým se to nestává tak často.
Co by podle vás měl dobrý UI programátor umět?
Kromě učenlivosti a dobré orientace ve zmíněných technologiích, je dle mého důležitá systematičnost. Naše oddělení musí trošku korigovat kreativitu designérů, abychom jejich nápadům dali řád a sepsali je do něčeho, co lze naprogramovat.
Chcete se k Warhorse přidat a podílet se na vývoji předních her? Právě nabírají!
Další inspirace: Odvětví a povolání
jobRESTART: Jak na kariéru jako game designer?
Čím dál tím populárnější a čím dál tím více na vzestupu. Vždyť kdo by si taky nechtěl celý život hrát? Co obnáší kariéra takového game designera?
13. 2. 2024
jobRESTART: Jak vypadá kariéra content marketing managera
Obsah je král a kdo ho zdatně ovládá, tahá za důležité nitky! Jaká cesta vede k úspěšné kariéře content marketing managera?
23. 1. 2024
Kariéra v Big Data: Znáte všechny profese v oblasti zpracování dat?
Pozice, které obsazuje stále víc firem a které stále zůstávají tak trochu neznámé... Víte, co znamená kariéra v Big Data?
18. 9. 2023
Social media manager vs. community manager: Čím se od sebe liší?
Říkáme jim sockaři nebo správci sociálních sítí. Schválně, kdo z vašich známých je social media manager a kdo je community manager?
10. 3. 2021
UX a UI designér: Co je náplní jejich práce?
Pojďme se na pozici UX a UI designéra podívat podrobněji a vyjasnit si, co taková práce obnáší!
27. 2. 2021
Zpravodaj, který stojí za to
Chcete držet krok s nejnovějšími články? Dvakrát týdně můžete do své poštovní schránky dostávat zajímavé příběhy, nabídky na práce a další tipy.
Hledáte svou další pracovní příležitost?
Více než 200 000 kandidátů našlo práci s Welcome to the Jungle
Prozkoumat pracovní místa