Herní unikát za čtvrt miliardy korun tvoří jen 15 lidí. České hry jsou prostě jedinečné, říká vývojář

Filip Doksanský už skoro čtvrt století pomáhá z Bohemia Interactive tvořit největší české herní studio. I díky němu vzniká herní engine Enfusion.

Michal MančařMichal Mančař

filip-doksansky-mvpRozhovor
Foto: Bohemia Interactive / CzechCrunch
Filip „Fido“ Doksanský, šéf vývoje herního enginu ve studiu Bohemia Interactive
0Zobrazit komentáře

Jak vznikají ty nejúspěšnější české hry? Docela překvapivě. Nejspíš byste totiž čekali, že stamilionové, dokonce už miliardové firmy budou při vývoji hitů jako Arma, Space Engineers nebo Euro Truck Simulator sázet na světové, stovkami videoher a tisícovkami vývojářů prověřené nástroje. Jenže kdepak. I ta největší česká studia generují rekordní tržby ne úplně obvyklým způsobem. Pojďte nahlédnout do jeho zákulisí.

Zajímá vás zákulisí českých her?

Tak se přihlaste k odběru našeho herního newsletteru!

Newsletter Good Game | Poslední vydání

„Je opravdu pozoruhodné, že se tohle děje zrovna u nás v Česku, které není tak velké,“ říká pro CzechCrunch programátor Filip Doksanský, který videohry tvoří už přes třicet let. Hovoří o tom, že vývojáři v úvodu zmiňovaných titulů ze studií Bohemia Interactive, Keen Software House a SCS Software kromě samotných her navíc vyrábějí také vlastní technologie, díky kterým hry vůbec mohou fungovat. Tedy takzvaný herní engine.

„Ty hry jsou totiž naprosto unikátní rozsahem a konceptem,“ dodává Doksanský, který engine vyvíjí právě v největším českém studiu Bohemia Interactive. To určitě znáte díky Operaci Flashpoint a následné sérii Arma či zombie akci DayZ. A co to vůbec ten herní engine je? Zjednodušeně řečeno pomyslný motor hry, kód, díky kterému se hra vůbec spustí, díky kterému ji vidíte na obrazovce a díky kterému ji ovládáte. Nejsou to herní úrovně, modely postav či příběh. Ale je to základ, bez kterého by ani jedno z toho neexistovalo.

Proto je Doksanský extrémně klíčovou postavou v byznysu Bohemia Interactive, který už šest let v řadě (!) dosahuje v obratu přes miliardu korun. Vede totiž vývoj nového enginu, který má být základem pro další růst české herní jedničky. Nese jméno Enfusion a patří mezi její nejdůležitější investice. Už do něj nalila čtvrt miliardy korun.

Pojďme začít otázkou, na které závisí celý rozhovor. Co vlastně v Bohemia Interactive za těch 250 milionů korun tvoříte?
Náš herní engine Enfusion jsou hlavně miliony řádků kódu. Přes sto milionů znaků. Které ve studiu průběžně tvoříme už deset let v týmu patnácti poměrně specializovaných lidí. Vývoj enginu totiž spojuje několik vědních oborů – engine řeší renderování obrazu, tedy to, abyste při hraní něco viděli, počítá světelné podmínky scény, fyziku toho, jak se objekty ve hře pohybují, aby padaly, narážely do sebe, aby mohla jezdit auta… Tvorba enginu je velmi rozsáhlý, kontinuální proces, který vyžaduje velmi schopné a zkušené lidi. Což je trochu unikát, protože jinak na hře jako takové se najde dost prostoru i pro juniornější programátory. Ale až když máte engine, tak můžete sestavovat samotnou hru.

Deset let se někomu může zdát ve vývoji softwaru jako dlouhá doba, ale současně hovoříte o kontinuální práci…
Může se zdát, že Enfusion děláme strašně dlouho. Ale vezměte si jeho předchůdce, na tom se pracovalo skoro patnáct let. A hlavně je to neustálý proces inovací, úprav a nahrazování zastaralých částí. Já coby vedoucí programátorů enginu jsem zodpovědný nejen za tvorbu toho kódu, která mě stále baví, ale i za jeho čištění a zjišťování, kde už nesplňuje aktuální požadavky. Dnes, po těch deseti letech můžu říct, že z toho původního kódu vlastně nic nezbylo a postupně se všechno vyměnilo.

Když se na chodbě potkám s někým, koho jsem delší dobu neviděl, tak má takovou standardní otázku: „Tak co, kdy budete mít hotový engine?“ A já se vždycky směju a říkám, že nikdy. Budeme to dělat navěky. A když to budeme dělat dobře, budou to jen průběžné inovace bez nutnosti celé to překopat. Jsem minimalista, mám rád ten citát od Exupéryho: „Dokonalosti není dosaženo tehdy, když už není co přidat, ale tehdy, když už nemůžete nic odebrat.“

I vzhledem k té náročnosti se nicméně nabízí otázka – proč vůbec dělat vlastní engine? Na trhu jsou technologie jako Unreal, ty by pro Armu a další vaše hry nestačily? Stále se víc vyplatí investice čtvrt miliardy korun?
V týmu máme Unreal dost v úctě, je to průmyslový standard a kvalitní nástroj s opravdu vymazlenými možnostmi. Ale na druhou stranu často platí, že engine je definovaný tím, pro jakou hru vznikal. Unreal pro Unreal, CryEngine pro Far Cry a Crysis, dále tu máte Unity, které se hodně používá především pro mobilní a menší hry. A tohle spojení bývá dost silné a vy se musíte do takto definované škatulky vejít. Jenže co když se z ní chcete dostat ven? Začnete narážet na omezení, až zjistíte, že daný engine nemůžete použít vůbec.

Arma 4 bude mít herní mapu o velikosti 900 kilometrů čtverečních. To je něco, na co běžný herní engine nestačí.

Takže nutnost simulovat desítky kilometrů čtverečních, fyziku a balistiku jako třeba v sérii Arma už je na běžné technologie moc?
Pomůžu si příkladem jiné české hry, která se v tomto Armě trochu blíží. Gray Zone Warfare od Madfinger Games. Ta hra je krásná, vypadá výborně, má velmi slušné detaily i poměrně velké bojiště, přes 40 kilometrů čtverečních. A běží na Unrealu – ale s přidanou technologií, která se o tu velkou krajinu stará.

My si také zakládáme na tom, že naše hry vypadají realisticky a jsou rozsáhlé, čímž myslím opravdu velice rozsáhlé. Například Arma Reforger má 160 kilometrů čtverečních. A třeba Arma 4 bude mít dokonce 900 kilometrů čtverečních. Na Gray Zone Warfare navíc chcete mít poměrně nadupaný počítač, aby se to dalo utáhnout. Zatímco naše hry spustíte na Xboxu, PlayStationu i PC. To jsou požadavky, na které už ten Unreal prostě nestačí.

V tom případě se nabízí otázka z opačné strany, proč si vlastní engine netvoří více studií. Pro ta opravdu velká by to nutně nebyla kdovíjak astronomická investice.
Zaprvé to stále jsou nějaké finance, zadruhé je potíž v délce vývoje. Když začnete vyvíjet hru, tak chcete hned udělat prototyp a vidět nějaký výsledek, chcete si vyzkoušet, jestli to herně funguje a zaujmout lidi. Nechcete několik let práce a financování, kdy není nic vidět. Samozřejmě se to občas děje, takové hry jsou ale většinou velice specifické.

Třeba české tituly Euro Truck Simulator od SCS Software nebo Space Engineers od Keen Software House.
Přesně tak. Je velice zajímavé, že se tohle děje zrovna v Česku, které není tak veliké. A spolu s naší Armou pro tyto hry platí, že jsou naprosto unikátní rozsahem nebo konceptem. Space Engineers řeší planety, fyziku, terén, v Truck Simulatoru sednete do kamionu a přejedete Spojené státy. To jsou věci, co bychom ani v Enfusionu nezvládli, ani neznám triky, které použili. Podobně jako my si museli tu technologii do značné míry vyvinout, aby zvládla jejich nápady.

Je opravdu pozoruhodné, že se to takhle sešlo zrovna u nás v České republice. Že se tu našlo tolik schopných vývojářů a měli odvahu se do toho pustit. A že měli štěstí, že jejich produkty byly natolik úspěšné, aby si studia mohla dovolit tolik let vývoje. Příklady samozřejmě najdete i v cizině, takhle z hlavy mě napadá No Man’s Sky, kde generují velký herní vesmír s různými planetami, případně fenomén Minecraft. Ten když vyšel, tak tu podobné hry nebyly. Museli si napsat vlastní engine.

Je naopak něco, co váš Enfusion nezvládá, na co se nehodí?
Když už tu zazněl Unreal, tak ten má například spoustu technologií pro mnohem větší detaily, světlo a až filmový zážitek. Dokážete v něm udělat výpravnou hru, která vizuálně opravdu exceluje, a s tím se nemůžeme srovnávat. My grafiku chceme detailní a realistickou, ale potřebujeme ji hlavně funkční.

Hry na Unrealu jsou vlastně designérským koridorem, který je pečlivě předpřipravený a jehož vývojáři nad tím, co hráč vidí, mají velkou kontrolu. A když o ni přijdou, tak už hra tak hezky nemusí vypadat. Zatímco my musíme zařídit, že bude hezká s měnící se denní dobou, že stíny tři kilometry daleko budou fungovat stejně jako stíny vedle vás, aby se v nich schoval voják, nebo aby to, jak hra vypadá, bylo stejné pro desítky hráčů na desítkách kilometrů čtverečních.

keen-space-engineers-marek-rosa

Přečtěte si takéSpace Engineers 2 chceme prodat desetkrát víc, hlásí Marek RosaVesmírná hra českým tvůrcům přinesla miliardu korun. Druhého dílu chceme prodat desetkrát víc, hlásí

Může se pro Bohemia Interactive nový engine stát i zajímavým zdrojem příjmů? Ten už několikrát zmiňovaný Unreal je pro své tvůrce lukrativní technologií.
Když si představím, že bychom v těch patnácti lidech, kteří Enfusion tvoří, museli ještě řešit požadavky jiných týmů, tak mi to nedává smysl. A zároveň platí, že těch patnáct lidí nám na vlastní vývoj stačí. Respektive nějakých dalších deset lidí bychom uživili, ale nepotřebujeme dvě stovky vývojářů. Ekonomicky by to pro firmu nebylo zajímavé. Navíc trh je do značné míry rozebraný.

Ale co se monetizace týče, tak Enfusion jde ještě dál v tom, čím jsou hry od Bohemia Interactive dobře známé. Umožňují velice snadné modování, tedy uživatelské upravování obsahu. Sami hráči tvoří obrovské množství modifikací, které naše hry udržují při životě. A největším příkladem ekonomického úspěchu tohoto přístupu je DayZ.

Online zombie akce, která vznikla právě jako modifikace pro Armu.
Ano, to bylo takové hluché období po vydání druhého dílu, do toho třetího to zase bylo ještě daleko. A jedna uživatelská modifikace od Deana Halla se stala fenoménem, který začala hrát strašná spousta lidí. A my začali prodávat miliony kopií hry, která byla na trhu už několik let a u které jsme ani nepočítali, že by mohla ještě přinášet zajímavé peníze. No a ona začala vydělávat víc, než kdybychom vyvinuli úplně nový produkt.

Kdo v Česku zvládne dělat engine, ten už to dělá. Rozšiřování týmu je proto složité. Takže najímáme i lidi po škole, ale máme náročnější výběrové řízení.

Tvoříte tedy Enfusion i s myšlenkou právě na nový úspěch podobný DayZ?
Dovedu si představit, že na Enfusionu, respektive na hrách, které ho využívají, může opět podobná hra vzniknout. Poběží na něm Arma 4, na které teď v Bohemce pracujeme. Ale už teď se ukazuje, že v té modovatelnosti a možnosti uživatelské tvorby jsme se oproti předchozímu enginu obrovsky posunuli.

Můžete upravit všechno od grafiky přes hratelnost až po zvuk, všechno si vyzkoušet, ovládání je nesrovnatelně uživatelsky přívětivější. Ale bavíme se i o takových vylepšeních, jako je třeba tvorba map. Podporujeme například formát používaný profesionálními geodety. Naimportujeme ho do hry a místo ruční tvorby mapy to vezme vrstevnice, lesy a podle nich to mapu vytvoří. Pro tvůrce je to obrovský rozdíl a usnadnění.

Lze vyzdvihnout jednu věc, ze které jste u nového enginu nejvíc nadšení?
Je to věc, která na první pohled není úplně vidět – práce s daty. Přišli jsme s formátem, který je lidsky čitelný. Takže když se na data podíváte, pochopíte, o čem je řeč. Slouží k úpravě prakticky všeho ve hře. Od toho, jak bude střílet puška, až po to, jak se míchají zvuky. Všechno tohle můžete upravit a všechna tato data se ukládají na server, takže na nich může pracovat více lidí, vidíte historii úprav, lze je zpracovávat hromadně… Může se to zdát jako banální věc, ale třeba Unreal spoustu věcí ukládá ve formátu, který není takto přístupný.

Zmínil jste schopné české vývojáře, sami tvoříte engine v patnácti lidech. Z domácího herního průmyslu už delší dobu zaznívají hlasy o nedostatku seniorních, špičkově kvalifikovaných lidí. To je věc, která vás nejspíš musí trápit desetinásobně?
Je to velký problém. Já v Bohemce pracuji čtyřiadvacet let, tým vedu zhruba deset a někteří jeho členové jsou podobně zkušení. Další jsme získali akvizicí jiných studií. Takže základnu seniorních vývojářů, se kterými jsme společně rostli, máme. Jenže s trochou nadsázky se dá říct, že kdo v Česku zvládne dělat herní engine, tak ten už to dělá.

Junioři nejsou?
Rozšiřování týmu je dlouhodobý proces, moc takto zaměřených a schopných lidí se zde nevyskytuje. Takže najímáme juniory klidně i po škole, ale máme náročnější výběrové řízení. Hledáme základní kvality a současně i nadšení, no a pak si je vychováváme. Dostanou seniora a nabírají zkušenosti, hodně sedíme spolu v kanceláři a ne na home office. Učí se tak velmi rychle, a to od těch nejlepších možných mentorů. Není totiž nic horšího než přijmout pět juniorů a posadit je do kanceláře, aby od sebe chytali špatné návyky.

Zodpovědnost je to veliká a ta částka je hrozná, ale Bohemce to dává smysl – a dává to smysl i mně.

Nebojujete i s tím, že potenciální vývojáře láká prostě „dělat hry“? A ne tvořit miliony řádků kódu herního enginu.
Když jsem začínal já, tak byla tvorba vlastního enginu často přímo spojená i s vývojem hry jako takové. Takže sám jsem brzy zjistil, co mě baví na enginu a co nesnáším na hře. Dnes už je to trochu jiné, ale stále platí, že někoho to láká. Lidé, kteří jdou dělat engine, bývají systematičtí, mají architektonické cítění, cit pro pořádek. Engine musí být napsaný účelně, efektivně a tak, aby šel snadno rozvíjet. Nad věcmi se přemýšlí zeširoka a strukturovaně, zatímco samotný herní vývoj umí být poměrně chaotický a ve vleku designérských nápadů. Teď to nemyslím nijak pejorativně, ale herní vývojáři jsou trochu jako děti.

No, pejorativní to možná není, ale úsměvné ano…
Myslím to tak, že si opravdu hrají. Že dostanou nový nápad, do něj se zamilují – než přijdou s dalším, který je úplně skvělý a musíme ho ve hře mít a všem se bude líbit… To je kreativní přístup, který může hru obohatit, ale pro architekturu herního kódu je to někdy úplná katastrofa. Představte si zdánlivou drobnost jako otevření dveří od auta.

badlandx-x-cc

Přečtěte si takéČeská hra DayZ chystá rozšíření. Původně vznikla jako nápad vojákaNápad na hru udělal z vojáka milionáře a jeho výplata vyděsila policii. Český titul teď chystá nášup

Přijdu, zmáčknu klávesu, dveře se otevřou?
Ano, ale někdo správně dodá, že to přece musí zabrat pár sekund. Jenže během těch dvou vteřin se může odehrát naprosto cokoliv. To auto může explodovat, vás můžou zastřelit, prostě celý ten proces se najednou rozbije. Anebo si vezměte odstřelovací pušku, u níž jsme si vymysleli, že uvidíte nejenom scénu přiblíženou puškohledem, ale druhým okem i vaše blízké okolí jako ve skutečnosti. Jenže to jsou najednou dvě rozdílné scény, které musíte zobrazit… Jednoduchý nápad, který ale pro vývojáře může být extrémně složitý. Člověk, který má to řekněme strukturovanější cítění, u toho trpí jako zvíře.

Takže místo toho v klidu řídíte vývoj enginu za čtvrt miliardy korun, na kterém stojí budoucnost celé firmy. Taková zodpovědnost není zdrojem útrap?
Není to úplně příjemné. Ta zodpovědnost je obrovská. Ale vzal jsem ji na sebe už v okamžiku, kdy předchozí programátoři staršího enginu odešli, protože už chtěli dělat něco jiného. Věřil jsem si, že to dokážu rozvíjet dál, i když jsem si uvědomoval, jak velký ten tlak je a že nelze selhat. Nicméně větší starosti mi dělá jiná věc. Většinu věcí si děláme sami, ale i v interním vývoji občas používáme externí technologie, protože není efektivní si je dělat po svém, jsou to třeba nějaké technologické standardy.

Ale nemáte je ve vlastních rukou.
Právě, co když jejich vývojáře někdo koupí, co když svůj produkt přestanou podporovat? Taková nejistota není příjemná. U vlastních věcí se může stát chyba, můžeme něco podcenit. Může vám to zkazit víkend, možná i týden, dokonce třeba nespíte a bolí to. Ale máte to ve svých rukou a má to řešení. Takže ano, zodpovědnost je to veliká a ta částka je hrozná, ale Bohemce to dává smysl – a dává to smysl i mně. Jsem tu čtyřiadvacet let a neuvažuju, že bych v nejbližší době končil.