Dnes vyšlo 1 článků

Jak se dělá PC hra? Ukážeme vám zákulisí!

Jak se dělá PC hra? Ukážeme vám zákulisí!

Vytvořit si vlastní počítačovou hru je jistě sen mnoha lidí. Představy mnoha z nich jsou ovšem do značné míry silně naivní, a proto přinášíme tento článek, ve kterém se dozvíte, co vývoj pořádné hry se vším všudy obnáší. A nebude to zrovna procházka růžovou zahradou…

Na začátku stojí nápad

To, co předchází tvorbu každé počítačové hry, je samozřejmě nápad – základní koncept, který se poté do detailů zpracuje. Tato fáze může v případě velmi rozsáhlých her, jako GTA nebo Mafia, trvat klidně několik měsíců. V jejím průběhu je nutno zodpovědět mnoho otázek. Vývojáři si musí ujasnit, o čem daná hra bude a v jakém prostředí se má odehrávat. Důležitý je i samotný scénář hry, případně rovnou celý příběh, jako je tomu například u již zmíněných her ze série GTA. Scénář hry může určit i její cílovou skupinu, tedy komu je určena a zdali ji mohou hrát jen dospělí nebo ne.

Kromě základních otázek o hře je nutné zodpovědět i otázky technické. Na jakých zařízeních půjde spustit? Budou to herní konzole? Pokud to budou počítače, jaké operační systémy se budou podporovat? Vyřešeny musí být i záležitosti ovládání a typ hry.

Na závěr nemůžeme nezmínit i to možná úplně nejzákladnější – rozpočet. Kolik peněz bude pro vývoj hry vyhraněno a kolik vývojářů bude potřeba? Zamyšlení patří i návratnosti samotné investice, tedy tomu, kolik hra vydělá. Samozřejmě je nutné odhadnout i datum jejího dokončení. Otázek je pochopitelně daleko více a toto jsou jen některé z nich.

My se v tomto článku budeme zabývat spíše tvorbou 3D hry právě ve stylu zmiňovaného GTA nebo Mafie. U jednoduché 2D plošinovky (jako třeba u legendárního Maria) by byl celý proces samozřejmě jednodušší, ale přesto podobný.

Programování: Zapoměňte na klikání, potřebujete klávesnici

Pravděpodobně nejdůležitějším procesem při tvorbě počítačové hry je programování. Jsou to právě programátoři, kdo vdechnou život prostým statickým obrázkům, pohybují s nimi a umožňují hráčům některé z ních ovládat. Bylo by ovšem hloupé si myslet, že programátoři prostě nadefinují trasy, po kterých se budou různé grafické objekty pohybovat, a tím jejich práce končí. Ve skutečnosti je rozsah jejich činnosti mnohem větší…

Jak napovídá titulek, programátor pro svou práci používá převážně klávesnici. Chování právě vyvíjeného softwaru totiž popisuje pomocí programovacího jazyka. Ten se od toho lidského liší tím, že ho počítač umí snadněji zpracovat a navíc je exaktní. Podobně jako v matematice se výrazy zapisují pomocí zvláštních symbolů, tak i chování počítačových programů se popisuje pomocí speciálního jazyka. Hra může mít klidně i několik miliónů řádků kódu!

Visual Studio

Vývojové prostředí Visual Studio

Nejprve je nutné zvolit vhodnou technologii – tedy programovací jazyk, grafickou knihovnu a případně i další. Pro počítačové hry se zpravidla používá jazyk C++ a grafická knihovna OpenGL nebo Direct3D. V případě operačního systému Windows pak zřejmě převažuje druhá jmenovaná.

Poté vyvstává otázka, jaký použít grafický engine. Některé jsou zdarma, ale ty pravděpodobně nebudou pro vytvoření opravdu nadupadné hry zrovna to pravé. Pak se tedy nabízí možnost jej koupit od jiné firmy, nebo naprogramovat vlastní.

A co že to grafický engine vlastně je? Zpravidla se jedná o knihovnu, která umožňuje načítat textury (a případně jiné grafické modely) a s jejich pomocí vykreslovat různé scény. V praxi to může znamenat třeba zobrazení terénu.

Podobná situace panuje u fyzikálního enginu, resp. části, která se stará o fyziku. Grafický engine je totiž relativně „hloupý“ – stará se pouze o to, jak hra vypadá. Pokud tedy při divoké jízdě autem napálíte do popelnice, grafický engine neví, jak by na to měl zareagovat. Zde nastupuje fyzikální engine, aby spočítal, kterým směrem popelnice poletí, jakou rychlostí, a kdy zastaví. Asi není třeba zdůrazňovat, že tyto výpočty nejsou zrovna primitivní a člověk, který měl s fyzikou problémy už na základní škole, si ani neškrtne.

Dále se programátoři musí postarat i o samotné ovládání. To znamená, že když uživatel pohne myší nebo stiskne klávesu, vyvolá se odpovídající akce – třeba se změní úhel pohledu.

Ačkoliv toho tito lidé dělají ještě mnohem více, tento popis je pro hrubou představu dostatečný.

Grafici: Přidáme slušivý kabátek

O výsledný vzhled hry se postarají grafici. Jsou to právě oni, kdo vytváří všechny textury, které se poté „nalepí“ (odborně řečeno namapují) na strohé objekty vyprodukované programátory. Výšková budova může bez zásahu grafika vypadat jako kvádr, který bude mít maximálně jednobarevné stěny. Grafik proto namaluje pěknou fasádu a když tento obrázek dodá svým kolegům, z nudného kvádru se rázem stane třeba pěkný panelák. Stejná situace ovšem panuje i u silnic, povrchu terénu, oblohy atp.

Blender

Program Blender (zdroj: blender.org)

Cinema 4D

 Program Cinema 4D

Zvuk a hudba: Dobarvení atmosféry

Aby hra byla živější a lépe působila, na pozadí zpravidla hraje nějaká ta hudba. Můžou to být známé písničky, na které se pouze zakoupí patřičná práva, ale také na zakázku vyrobné skladby. Třeba v případě GTA: Vice city jsme mohli zaslechnout i známou pecku Raining blood od trash metalové skupiny Slayer.

Ještě důležitější jsou ovšem různé zvuky, které hře přidávají na věrohodnosti. Sem patří výstřely, hučení motoru a mnohé další.

Trocha anatomie: Kde máš vlastně klouby?!

Jedním z extrémně náročných úkonů je také třeba animace postavy. Kdyby se po ulici pouze posouvaly statické fotky různých lidí, asi by se vám to příliš nelíbilo…

Přesně z tohoto důvodu se vytváří modely lidí, které obsahují i informace o umístění kloubů. Ty se snímají na reálném člověku a čím více kloubů model zachycuje, tím důveryhodněji bude pohyb postavy vypadat. Naprostý základ jsou kolena, kyčle a ramena, ale zpravidla se setkáváme s mnohem propracovanějšími modely.

Zajímavostí je třeba příběh jednoho herního vývojáře, který několik let studoval lidské oko, aby jej následně dokázal na počítačové obrazovce věrně napodobit. Nabízí se zamyšlení, kolik takových detailů vývojáři her řeší a my si jich ani nevšimneme. Pokud si jich totiž všimneme, většinou to znamená, že nevypadají dostatečně reálně a působí nepřirozeně…

Blender

Program Blender (zdroj: blender.org)

Testování her je dřina

Než se hra vůbec začne prodávat, je ještě třeba ji důkladně otestovat – tedy vyzkoušet všechny možné i nemožné věci a situace, do kterých se vlastně může hráč dostat. Samozřejmě tedy nestačí jedenkrát hru dohrát a nahlásit případné problémy, ale je nutné ji hrát neustále a pokaždé něco udělat trochu jinak. Testeři rovněž zkouší třeba jednotlivé zbraně a zjišťují, zda působí dostatečně věrohodně.

3D grafika: Bez náročné matematiky to nepůjde

V předchozím textu již bylo zmíněno, že někteří programátoři musí mít velké znalosti fyziky. Programátoři grafického enginu pak pro změnu musí umět poměrně složitou matematiku. Při provádění různých grafických transformací (otočení kolem dané osy, zkosení apod.) se totiž využívají matice, vektory a další „lahůdky“, kterým je bezpodmínečně nutné rozumět. Ačkoliv se o samotné výpočty obvykle postará použitá knihovna (třeba OpenGL), pokud programátor neví, co vlastně dělá, dopadne to špatně.

Závěr: Podívejte se, jak to chodí

Zaujala vás tvorba počítačových her? Pokud máte dostatečnou vytrvalost a dokážete se studiu patřičných věcí věnovat několik let, možná vás jednou zaměstnají třeba ve významné české firmě 2K Czech (dříve Illusion Softworks), která má na svědomí trháky jako Vietcong nebo Mafia.

Komentáře

Nahoru