Unity: vývoj digitálních her je běh na dlouhou trať

Dnes si může vlastní hru naprogramovat de facto každý. Co všechno je potřeba znát? V čem se pracuje a jak dlouho trvá vývoj takové hry?

Každý hráč si alespoň jednou za život posteskl, jaké by to bylo, kdyby se mohl vývojem svých oblíbených her živit. Některým se to povedlo a jsou z nich zkušení vývojáři herních i mobilních titulů. V každém řemesle se ale jednou musí začít úplně od začátku a právě o tom bude pojednávat i tento článek, ve kterém se blíže zaměříme na základní informace o tvorbě her.

Ještě než radostně vyskočíte s nápadem, že uděláte remake Stalkera nebo jiné vaší oblíbené hry, tak vás hned zastavím. Na to, abyste zvládli naprogramovat tak komplexní univerzum, jsou potřeba roky zkušeností a celým tým.  Nepředstavujte si tedy, že budete za týden dělat vlastního Fallouta apod., takto vám rozhodně nedoporučuji začínat. Pokud jste již zkušeným game developerem, tak jistě víte, co všechno tato práce obnáší.

00000001unity.jpg

00000002unity.jpg00000003unity.jpg00000004unity.jpg

Budiž hra!

Mohlo by se zdát, že si budete muset všechno vymodelovat od úplného začátku. Řada služeb nabízí mnoho dodatečných přídavků, které vám tvorbu značně ulehčí. Výběrem vhodného enginu pro hru by to ale mělo začít, a pokud neuvažujete udělat zrovna AAA titul, jistě se spokojíte i s freeware verzí. Takže v čem můžete tvořit?

Jako základ bych uvedl Unity. Tento engine je poměrně všestranný a nabízí uživatelům kromě volné verze i mnoho (placených) doplňků. Názor na jeho kvalitu se může lišit, ale Unity je v zásadě oblíbený napříč vývojářským spektrem pro jeho širokou variabilitu a poměrně velkou komunitní tvorbu. Z jeho lůna pochází hry jako Kerbal Space Program, Firewatch, Pillars of Eternity nebo Hitman Sniper.

Velmi dobrým enginem pro tvorbu AAA titulů je Unreal Engine nabízející také velký komunitní support v podobě návodů a videí. Unreal Engine je používán v řadě úspěšných blockbusterů jak třeba Gears of War, Mass Effect nebo Batman: Arkham Asylum.

0000001unreal.png

Kromě těchto dvou asi nejpoužívanějších enginů existují dále ještě CryEngine, Hero Engine, Rage Engine, Project Anarchy, GameSalad, GameMaker: Studio, App Game Kit, Cocos2D. Výčet se neomezuje pouze na počítačovou tvorbu, ale například takový App Game Kit slouží k tvorbě her pro mobilní aplikace a Cocos2D zase výhradně pro 2D hry.

Programovat dvojrozměrné univerzum je logicky jednodušší, než je tomu u toho trojrozměrného a je to prakticky první věc, kterou si musíte ujasnit, než začnete něco dělat. Tato prvotní volba může znamenat týdny ne-li roky práce navíc.

0000001cry.jpg

První kroky do neznáma

Z množství enginů, které jsou k dispozici, jsem se rozhodl vybrat ten, který osobně považuji za nejlepší pro naučení základů. Budete si muset rezervovat hodně času, abyste se tím prokousali. Poeticky řečeno vám to může změnit život, nebo naopak zjistíte, že je to nad vaše síly. Nejjednodušší je to vyzkoušet na vlastní pěst.

Engine Unity je podle mě nejlepším příkladem pro názornou ukázku. Není to zrovna záležitost pro úplné začátečníky, nicméně s trochou píle lze počáteční problémy překonat. Engine je vhodný i pro ty, kteří podnikají v oblasti game developingu. V tomto ohledu se zde nabízí mnoho užitečných nástrojů jako například Unity Ads, Unity Analytics nebo Unity Cloud Build.

Základní verzi si lze stáhnout z oficiálního webu a využívat nejlépe k počátečnímu seznámení. Lze v ní tvořit i jednodušší hry. Základní osobní verze Unity je poměrně osekaná a pro tvorbu komplexnějších systému a mechanik je potřeba si pořídit verzi profesionální.  Aktuálně je v chodu Unity 5, který se od třetí generace v jistých ohledech liší např. renderováním lepší grafiky. Pokud si chcete programování jen zkusit, stáhněte si personální verzi.

unity web.png

Podotýkám, že stažené verze z torrentů mívají často problémy s kompatibilitou u některých přídavných modulů a jinak, než soukromě s nimi tvořit nelze. Základní freeware personal verze ovšem poskytuje dodatečný prostor k seznámení.

Společnost Unity nabízí několik druhů licencí, a to od profesionální přes osobní až po studentské a vzdělávací. Poslední dvě zmiňované se vyřizují přes portál Studica. Cena vzdělávací licence určené pro různé školící instituce se pohybuje v hodnotě 285 až 1520 eur.

Pokud si pořídíte základní free verzi, neplatíte žádné roční poplatky nebo poplatky za údržbu. U té profesionální pak platíte poplatky měsíčně v hodnotě 68 eur. Dále si k tomuto balíčku můžete pořídit placený modul pro iOS a Android. Balíček dále obsahuje moduly pro Windows Phone 8, Windows Store Apps a máte k dispozici i týmovou licenci pro několik počítačů.

unity web 2.jpgunity web 3.jpgunity web 4.jpg

V rámci personal licence pak můžete používat vytvořené hry ke komerčnímu užití za předpokladu, že váš výdělek publikováním hry nepřesáhne ročně 90 tisíc eur. (pův. 100 tisíc dolarů). Přesáhne–li výdělek tuto hranici, budete si muset pořídit profesionální verzi Unity.

Editor Unity se mlhavě podobá programu pro filmovou postprodukci a řadu prvků má velmi podobných. Najdeme zde dvě základní obrazovky, kde se zobrazuje herní univerzum, do kterého zasahujete pomocí příkazů z editoru. Ty zadáváte v protokolu PhP, HTML popřípadě v CSS, C# a dalších. Unity s nimi umí pracovat a na vás je, abyste mu řekli, jak je má spojit dohromady. Programování je právě tou nejdéle trvající činností při zrodu nové hry, pak přichází na řadu obvykle testování a odladění bugů.

00000003a.jpg

Hordy skriptů a kódů

Nedělní školou pro vás může být některé z mnohých komunitních kurzů a tutorialů nabízených prostřednictvím YouTube. Kanál, který vysvětluje základny tvorby v Unity 3 a 5 asi nejlépe se jmenuje Brackeys, což je mimochodem i název dánského edukativního studia v rámci game developingu působícího ve sféře školení programátorů.

Podle některého z jejich volně dostupných kurzů si můžete prostřednictvím svého počítače zkusit vytvořit třeba jednoduchou survival střílečku, seznámíte se s tvorbou ve 2D v rámci různých platforem nebo se můžete naučit základům C#. Budete-li používat cracklou verzi z torrentu, nebude vám programování v určitou chvíli fungovat.

00000004a.jpg

Projeví se to například tak, že po zadání některého kódu se špatně zobrazí vygenerované nastavení, popřípadě nebude fungovat správně. Je ale nutné si uvědomit, že i s takovým virtuálním učitelem vám zkoušení postupů a opravy chyb zabere pár týdnů, možná měsíců. Dobře si tedy tuto časovou investici rozmyslete, ostatně smazat program můžete vždycky.

Podaří-li se vám vytrvat a prokousat se horami příkazů, tlačítek, geometrických tvarů plujících volně v prostoru, mezi kterými je potřeba vytvořit konkrétní vztah a hlavně i masami kódů, budete celkem obstojně zvládat naprogramovat jednodušší hru. Česká herní studia jako Warhorse nebo Bohemia Interactive konstantně hledají nové programátory a designéry (často s praxí), kteří se umí s tunami skriptů poprat.

00000001a.jpg00000002a.png00000005a.jpg

Po zvládnutí Unity (nebo jiného obdobného enginu) se tedy může stát, že budete pro některé studio zajímaví a cesta k vašemu dětskému snu bude mnohem blíž. Je to ale trochu nadnesená představa a úspěchu se takto dočká jen velmi malé procento z lidí, kteří to zkusí nehledě na to, že v zahraničí, ale i v České republice existují školy se zaměřením na obory týkající se vývoje her. 

Ti, kteří to někdy zkusí, získají pohled i z druhé strany. Tedy pohled vývojáře, a to je podle mého názoru velmi důležité, kdy si uvědomí složitost vývoje her a o to víc si jich začnou vážit.

Diskuze (9) Další článek: Nový Hitman láká filmečkem a další betou pro majitele PS Plus

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,