Jak vznikají hry II.

1. 7. 1998

Sdílet

Počítačová zábava je nejen jeden z¦rozšířenějších způsobů využití počítačů, tím pádem i obchodu, ale...





Počítačová zábava je nejen jeden z¦rozšířenějších způsobů

využití počítačů, tím pádem i obchodu, ale i dosti složitá a

zajímavá tématika. V¦minulém díle přišla na přetřes obecná

teorie, nyní se podívejme na praktický postup a způsob výroby.



Etapy vývoje hry



Především je třeba si uvědomit, že vytvořit kvalitní hru vůbec

není hračka.V podstatě je práce na multimediální hře svou

náročností velice podobná práci na moderním trikovém filmu.

Zpravidla se jedná o rozsáhlý projekt, který mnohdy trvá i

několik let a podílí se na něm několik desítek lidí.



Základem všeho je myšlenka. Myšlenka, kterou je třeba rozvinout

do podrobného scénáře, na jehož základě je možné začít s tvorbou

hry. Jakmile je hotov scénář, jenž kromě dějové linie samozřejmě

zahrnuje i pravidla a styl hry, započne práce na programu

(herním enginu) a grafice. Vzápětí následuje hudba, zvukové

efekty a návrh jednotlivých úrovní hry. Po celou dobu probíhají

beta-testy a úpravy všech částí tak, aby hra v době svého

uvedení na trh vyhovovala trendu a neustále vzrůstajícím nárokům

herního průmyslu.



Scénář



Kvalitně zpracovaný scénář je stabilním základem pro úspěšné

dokončení hry. Může se zdát, že přikládám scénáři příliš

důležitou úlohu, ale věřte, že vím o čem mluvím. Scénář je

středem celého projektu, od nějž se odvíjí vše ostatní. Pokud

není zpracován scénář, jednotliví členové týmu nevědí, podle

čeho mají postupovat a k jakému cíli jejich snažení povede. Na

podcenění důležitosti scénáře již skončil nejeden projekt!

Vězte, že mluvím z vlastní zkušenosti. Základem každého scénáře

je příběh. V některých typech her je důležitější (adventure,

RPG), v jiných méně důležitý (simulátory, akční hry), ovšem

najdeme jej všude. Vedle příběhu je třeba specifikovat žánr hry,

způsob zpracování, pravidla hry, a pokud možno i odhad

náročnosti projektu na čas, finance a lidské a materiální zdroje.



Program



Programování her je programování jako každé jiné. Avšak na

rozdíl od kancelářských aplikací a databází, klade vyšší nároky

na znalost i těch nejmenších detailů hardwaru a operačního

systému. Je tomu tak proto, že hry jsou optimalizovány více než

většina ostatních aplikací. Dokud se programovalo pod DOSem, byl

důraz kladen především na detailní vědomosti o hardwaru, přechod

pod Windows 95 pak znamená pro programátory obrácení pozornosti

směrem k operačnímu systému. Je tomu tak proto, že pod Windows

95 se velká část operací neřeší přímou komunikací mezi programem

a hardwarem, nýbrž se používá volání služeb operačního systému.

Zatímco pod DOSem byla pro programátora znalost assembleru

nutností, pod Windows 95 se bez něj docela klidně obejde.

Windows 95 přinesla jednotné programové rozhraní pro vývoj her,

nazvané DirectX. To se skládá ze čtyř částí, kde každá část

zastupuje určitou množinu funkcí: DirectDraw – 2D grafika,

Direct3D – 3D grafika, DirectSound – zvuk a hudba a DirectPlay

–propojení počítačů. Zatímco význam prvních tří částí je zřejmý

na první pohled, čtvrtá si zaslouží stručné objasnění. Během

posledních dvou let nebývale vzrostla obliba her pro více hráčů.

Ovšem více hráčů u jednoho počítače jaksi není to ono, takže

přišly na pomoc sítě. V době DOSu byl králem síťových her

jednoznačně Doom, který šel dokonce hrát ve dvou režimech:

kooperativním a deathmatch (tzn. souboj) – ten byl obzvláště

oblíbený. Opravdový příval síťových her však přišel až s Windows

95, a to především díky DirectPlay, které slouží pro

zjednodušení komunikace mezi více počítači (po sériovém kabelu,

lokální síti nebo přes Internet). Přes Internet se dnes hrají

již desítky her a každým dnem přibývají další. Ale pozor,

možnost síťového hraní není jen výsadou PC, již před rokem byly

na trh uvedeny speciální modemy pro konzoly a existuje již celá

řada her, které lze přes tyto modemy hrát.

Programování konzoly je kapitola sama pro sebe. Obvykle se

programuje v jazyce C za použití SDK (Software Developer's Kit),

dodaného výrobcem konzoly. Jedná se o soubor optimalizovaných

knihoven low-level funkcí, které jsou zapotřebí pro ovládání

konzoly. Většina těchto SDK existuje jen pro pracovní stanice

Silicon Graphics (SGI), což představuje nezanedbatelnou bariéru

pro mnohé potenciální vývojáře.



Grafika



Grafická stránka hry je mnohdy to první, podle čeho hráč hru

posuzuje, proto je třeba grafickému zpracování věnovat obzvláště

velkou pozornost. Grafika ve hrách má mnoho podob, my se zde

však budeme věnovat pouze dvěma základním směrům, a sice grafice

pro renderované sekvence a grafice pro real-time 3D akční hry.

Tyto dva představitele jsem nevybral náhodně, uplatňují se u

nich totiž dva diametrálně odlišné přístupy k tvorbě grafiky.

Renderované sekvence – renderované sekvence jsou dnes zastoupeny

již u všech žánrů her. Setkat se s nimi můžeme přinejmenším při

úvodních a závěrečných animacích. Některé adventury se celé

odehrávají v kompletně renderovaném prostředí a hráč během hry

buď přechází mezi jednotlivými předrenderovanými statickými

obrazovkami, nebo je při přechodu z jedné lokace do druhé

spuštěna animace, která se jednoduše přehraje. Pro

předrenderované obrázky je charakteristická preciznost, čistota

a dokonalost (někdy působící až příliš nepřirozeným dojmem).

Příprava grafiky pro úvodní či závěrečnou sekvenci zahrnuje

mnoho činností, jejichž popis je nad rámec tohoto článku, proto

jen heslovitě: vymodelování, rozanimování, a vyrenderování scén

(včetně nasvětlení, přiřazení textur a materiálů), postprodukce

(včetně kompozic a speciálních efektů) a nakonec sestříhání.

Grafik může používat všech dostupných nástrojů a ve finále je

omezen pouze grafickým rozlišením a barevnou hloubkou grafického

režimu, ve kterém hra poběží. Zde z porovnání PC a herní konzoly

výjimečně vychází vítězně PC, jež nabízí výrazně vyšší rozlišení

a v některých případech i větší barevnou hloubku. Zvláště při

vyšších rozlišeních se také projeví výhoda kvalitních monitorů

PC v porovnání s běžnými televizory, ke kterým se připojují

herní konzoly.

Grafika pro realtime 3D akční hry – jak jsem se zmiňoval již v

přehledu herních žánrů, patří právě 3D akční hry mezi

nejpopulárnější typ her na všech platformách. Grafika, se kterou

se v těchto hrách setkáváte, se převážně počítá v reálném čase,

a proto jsou na ni kladena mnohá omezení, a to hned v několika

směrech. Tak především je to složitost a typ modelů, použitých v

prostředí hry (krajiny, budovy, dopravní prostředky, monstra,

postavy…), dále pak počet světelných zdrojů a počet použitých

barev (256, 64k, TrueColor).

Typ modelů – prozatím žádná z herních platforem nepodporuje jiný

typ modelů než polygonální. Grafici se proto musí rozloučit s

hladkými plochami, které je možné vytvořit pouze pomocí B-spline

a NURBS. Navíc každá platforma si rozumí jen s určitým typem

polygonů (trojúhelníky, 2D čtyřúhelníky, 3D čtyřúhelníky,

mnohoúhelníky). Je proto třeba si předem rozmyslet, pro kterou

platformu bude hra určena. Samozřejmě se jednotlivé typy

polygonů dají mezi sebou vzájemně konvertovat, ale každá

konverze přináší problémy a zanáší do modelů chyby.

Složitost modelů – když se bavíme o složitosti modelů, máme na

mysli počet polygonů, z nichž je model složen. Obecné pravidlo

zní: čím méně, tím lépe. Je to logické, protože méně polygonů se

počítá kratší dobu (a v 3D akčních hrách se vše musí počítat v

reálném čase = 30 snímků/s), na druhou stranu jednoduché modely

vypadají hůře. Je proto třeba najít správný kompromis mezi

složitostí a kvalitou modelu. Na pomoc modelářům přicházejí

různé nástroje pro redukci polygonů, které vezmou původní

detailní model a snaží se jej pomocí různých algoritmů

zjednodušit. Dále je třeba mít při tvorbě modelů pro 3D akční

hry k dispozici opravdu kvalitní nástroj pro mapování a úpravu

textur přímo na objektech. Právě díky přesnému namapování

textury a dokreslení detailů přímo na objektu je možné dosáhnout

velice věrohodně vypadajícího modelu, který je přitom tvořen jen

nejnutnějším počtem polygonů.



Hudba



Úloha hudby bývá ve hrách často podceňována a tomu odpovídá i

úroveň jejího zpracování. To je ale chyba! Všichni přeci víme,

že hudba je nedílnou složkou celkovém vjemu. Uvědomili jste si

např. při sledování hororu v televizi, jak velký vliv na

atmosféru filmu má právě hudba? Schválně si zkuste při nějaké

obzvláště strašidelné scéně vypnout nebo alespoň ztišit zvuk.

Okamžitě se vám zážitek z filmu smrskne na polovic. Stejná

situace je i u her. Hra bez hudby je jen poloviční hra. Ovšem ne

vždy padá vina za nekvalitní hudbu jen na herní vývojáře. Ti

jsou totiž nuceni, stejně jako v dalších aspektech hry, podvolit

se hardwarovým možnostem platformy, pro kterou hru vyvíjejí.

Na konzolách je situace z pohledu vývojáře celkem jasná: k

dispozici má celou řadu špičkových 16bitových zvukových

procesorů, přičemž systém je optimalizován tak, aby šlo naráz

mixovat několik desítek zvukových stop. Toho se využívá zejména

pro současné přehrávání hudby a zvukových efektů. Hudba je

standardně přehrávána přímo z CD v odpovídající kvalitě (16

bitů, 44,1 kHz). Překvapením může být, že herní konzoly lze po

připojení na zesilovač používat i jako přehrávače běžných

hudebních CD.

Na PC je nabídka hudebních formátů a typů daleko rozmanitější.

Setkáváme se s třemi hlavními formáty: MIDI, MODuly a digitální

záznam.

MIDI je dobře známé všem hudebníkům jakožto standard pro

vytváření a přenos hudby mezi počítačem a hudebními klávesami.

Mezi vývojáři a hráči her však MIDI příliš oblíbeno není. To je

dáno především výslednou kvalitou hudby, které lze při použití

MIDI na běžných zvukových kartách dosáhnout. Aby totiž MIDI

jakžtakž znělo, je třeba mít zvukovou kartu podporující

wavetable syntézu. Ačkoli je takových karet na trhu dostatek a

za velice rozumnou cenu, stále mezi hráči převažují zvukové

karty s FM syntézou, na kterých zní MIDI opravdu strašně. Další

nevýhodou je různorodost vzorků nástrojů, jež se na wavetable

kartách vyskytují. Může se vám tak jednoduše stát, že stejná

skladba bude na dvou wavetable kartách znít odlišně. Naopak

výhodou pro vývojáře je přímá podpora MIDI formátu ve Windows.

Stačí jen zadat příkaz: hraj skladbu XY, a o zbytek se postarají

Windows.

Dalším jmenovaným formátem je MODul, což je pokus o emulaci

wavetable syntézy i na kartách, které samy o sobě podporují

pouze FM syntézu. Dosahuje se toho tak, že v samotném hudebním

souboru jsou vedle not a efektů uloženy i vzorky nástrojů

(samply). Při přehrávání MODulu se pak softwarově mixují a

upravují jednotlivé samply podle notového zápisu. Výsledek je

velice slušný (přibližuje se kvalitě wavetable syntézy), ovšem

za cenu nemalého zatížení procesoru. Některé vývojové týmy však

dokázaly přehrávací rutiny doladit tak, že zátěž procesoru byla

více než snesitelná (cca 10% na Pentiu). MODuly a jejich

varianty (S3M, IT, MOD…) jsou velice populární především na

demoscéně, kde se jednotlivé demoskupiny snaží ve svých

produkcích vždy vymáčknout z počítače co to dá. Od příchodu

Windows 95 se bohužel demoscéna stále zmenšuje. To je dáno tím,

že veškerá dema byla optimalizována na maximum a potřebovala pro

svůj chod naprostou kontrolu nad děním v počítači, čehož je

možné dosáhnout pouze pod DOSem.

Jako poslední hudební formát jsem uvedl digitální záznam. Jedná

se vlastně o jakoukoli hudební nahrávku převedenou do formátu

WAV, která se přehrává jako jeden dlouhý zvukový efekt. Tento

jediný formát odstraňuje podstatné omezení obou předešlých, a

sice nemožnost začlenit do hudby zpěv. V MODulech je možné tak

maximálně použít sem tam nějaký výkřik či povzdech, ale to je

vše. V MIDI možnost zpěvu (řeči) naprosto chybí. Na druhou

stranu má digitální záznam jednu špatnou vlastnost, a to objem,

jaký zvuková data zabírají. V případě MIDI souborů se velikost

jedné skladby pohybuje řádově v desítkách kilobytů, u MODulů už

jsou to stovky kilobytů a u digitálního záznamu jsou to desítky

megabytů. Pokud ovšem vezmeme v úvahu, že prakticky jediné

médium, na kterém se dnes hry distribuují, je CD-ROM, tak nás

objem dat nemusí moc trápit. Současným trendem v hudebním

doprovodu pro počítačové hry je jednoznačně digitální záznam.

Zatímco před pár lety převládaly jednoduché MIDI skladby, dnes

se můžeme těšit z kvalitních nahrávek předních populárních

skupin a oblíbených skladatelů. Někdy je hudba dokonce tak

kvalitní, že se vydává i jako samotný soundtrack, jenž je k

dostání i v běžných obchodech s hudebními CD. Příkladem mohou

být hry WipeOut 2097, Battle Isle IV, Wing Commander Prophecy

nebo Atlantis.



Zvukové efekty



Kvalitní zvukové efekty jsou kořením každé hry. Nejjednodušší

způsob, jak získat zvukové efekty do připravované hry, je zajít

do profesionálního studia a vybrat si přímo z databáze zvuků.

Takové databáze mnohdy obsahují i několik desítek tisíc

zvukových efektů, takže je opravdu z čeho vybírat. Někdy se ale

ani při nejlepší snaze nepodaří požadovaný zvuk nalézt, a tak

nadchází čas pro vlastní výrobu. Existují v zásadě dva přístupy

k tvorbě zvuků. Buď se používá speciální software, v¦němž lze

zvuky přímo vytvářet, anebo (a to je u her častější) se zvuky

nahrávají do počítače přes mikrofon a tam se dále zpracovávají a

upravují. Asi byste se divili, jakých pomůcek se používá pro

docílení originálních zvukových efektů. Matně si vzpomínám na

rozhovor s jedním z členů vývojového týmu hry Doom, který

vyprávěl o tom, jak vytvářeli zvuk jedné ze zbraní, jež se ve

hře používají. Bylo to tak, že si mladší bratr programátora hrál

s plechovkou od dopité Coca-Coly a při tom omylem zavadil o

ostří nože, který měl před sebou na stole. Zvuk, jenž se při tom

ozval, programátora natolik zaujal, že si obě pomůcky (plechovku

a nůž) vzal druhý den do práce a společně s kolegou zvukařem

dotyčný zvuk nahráli. V počítači jej pak pustili pozpátku a zvuk

zbraně byl na světě! Toto není ojedinělý případ, vlastně by se

dalo říci, že je to naprosto typický přístup při tvorbě efektů

pro hry. Co se týče kvality zvukových efektů, nejběžnější je

samplování na 22kHz stereo, setkat se ale můžeme i s 11kHz mono,

to záleží na typu hry.



Návrh úrovní



U některých typů her (především 2D/3D akční, simulátory a RPG)

je třeba navrhnout prostředí, ve kterém se bude hra odehrávat,

společně s dílčími úkoly, jež musí hráč splnit, aby mohl

postoupit ve hře dále. Hra se tak rozdělí do určitých úrovní,

kdy jedné úrovni může například odpovídat jedno patro budovy

nebo jedno nepřátelské území. Každá úroveň je charakteristická

jednak typem prostředí, a jednak typem, množstvím a rozmístěním

nepřátel a objektů (zbraně, klíče, atd.). Pokud porovnáme řadu

žánrově stejných her, jež mají obdobnou technickou úroveň

zpracování (grafika, hudba, efekty), pak je to právě kvalita

jednotlivých úrovní, která hry rozdělí na dobré a špatné. Toho

jsou si vývojáři velice dobře vědomi, a tak věnují návrhu úrovní

dlouhou dobu a podrobují je neustálému testování.



Beta-testy



Jakmile je hotov relativně funkční úsek hry, ihned se předává

alfa-testerům. Ti mají za úkol vyhledat zjevné chyby ve hře a

okamžitě je hlásit vývojovému týmu. Ten začne obratem chyby

opravovat a novou verzi opět předá alfa-testerům. Poté, co se

hra dostane do závěrečné etapy vývoje, se poskytne

beta-testerům. Ti mají stejný úkol jako alfa-testeři, ale na

rozdíl od nich, je beta-testerů zapotřebí daleko větší množství

(někdy i stovky). Hra se odzkouší na mnoha rozmanitých

konfiguracích počítačů a je tak velká šance, že se podaří

odchytit většinu chyb, ještě před vydáním finální verze. Z

pohledu kvality odvedené práce beta-testerů a doby věnované

testování si nejhůře stojí USA. Americké hry jsou proslulé tím,

že vzápětí po jejich vydání následuje série oprav a patchů, jež

se snaží „zalátat“ chyby, které nebyly během testování odhaleny.

Evropští distributoři her proto často vyčkávají s vypuštěním

amerických her na evropský trh až do chvíle, kdy se hry

nacházejí ve stabilním stavu. Za to jim budiž dík.



Jak hru vydat



Když je hra hotova a otestována, nastává vhodný okamžik k jejímu

vydání. To se ovšem snáze řekne, než udělá. Vydání hry sestává z

několika nelehkých úkolů: je třeba vytvořit a graficky upravit

manuály a obal (krabičku) hry, dále zajistit vylisování CD a

fyzickou výrobu manuálu a obalu, a nakonec se postarat o to, aby

se hra dostala k co možná nejširšímu okruhu potenciálních

zákazníků. Pokud je vývojový tým finančně silný, dá se první

část (fyzické vytvoření balíčku se hrou) zvládnout ve vlastní

režii. Horší už je to s distribucí produktu. Ačkoli existuje

celá řada cest, jak dostat hru mezi lid, ani jedna není

jednoznačně nejlepší. V zásadě se nabízejí následující možnosti:

shareware, OEM prodej, vlastní distribuce a profesionální

distribuce.

Shareware – pokud jste si až dosud mysleli, že touto cestou se

rozšiřují pouze hry průměrné až podřadné, tak vás vyvedu z

omylu. Právě cestu shareware volí i jeden z nejpopulárnějších

vývojových týmů současnosti, firma, která má na svém kontě

takové trháky jako Wolfenstein 3D, Doom nebo Quake. Nejedná se

samozřejmě o nikoho jiného než o ID Software. ID Software vždy

vypouštějí první úroveň své nové hry jako shareware, a každý

koho hra zaujme, může poslat objednávku přímo ID Software, která

mu obratem odešle plnou verzi, obsahující všechny úrovně.

Existuje celá řada firem, jež se zabývají rozšiřováním a

registracemi sharewaru – jednou z nejznámějších je Apogee, u

nás pak Jimaz. Služeb těchto firem využije každý uživatel

(hráč), kterému se nechce, nebo který nemůže komunikovat přímo s

autory sharewaru, jejž hodlá registrovat. Pro autory her je

forma sharewaru finančně velice výhodná, neboť nemusí platit

nemalá procenta ze zisku distributorům.

OEM prodej – pokud se vývojovému týmu podaří uzavřít smlouvu s

velkým prosperujícím výrobcem počítačů, ve které se výrobce

zavazuje, že bude ke každému prodanému počítači dodávat i

vyvíjenou hru, tak je tým tak říkajíc „za vodou“. Nemusí totiž

pracně shánět zákazníky a taktéž náklady na fyzickou výrobu hry

se sníží, neboť OEM software se dodává bez barevných krabic.

Vlastní distribuce – ačkoli se může tento způsob na první pohled

jevit zajímavým pro malé začínající vývojové týmy, opak je

pravdou. Vlastní distribuci si mohou dovolit jen opravdu velké

firmy vlastnící rozsáhlou síť prodejen, ve kterých mohou hru

nabízet.

Profesionální distribuce – dle mého osobního názoru je toto ta

správná cesta pro většinu vývojových týmů. Nejenže se takový

distributor postará o to, aby se hra dostala i do toho

nejmenšího obchůdku s¦počítačovou zábavou, ale často je i

producentem hry a tak na něj spadne i odpovědnost za její

propagaci a fyzický vznik. Pokud je hra opravdu kvalitní, tak je

pro tým cesta přes profesionálního distributora (producenta) tím

nejlepším způsobem, jak se proslavit. Jakmile se tým jednou

proslaví, má cestu k dalším projektům otevřenou a také se daleko

snadněji shánějí případní sponzoři a producenti. Nevýhodou může

být relativně malý podíl týmu na zisku (cca 30–40 %), ale

absolutní částka, kterou lze takto získat, mnohdy výrazně

převyšuje zisky dosažené při jiném způsobu distribuce.

Celosvětově je tento způsob nejpoužívanější a nejúspěšnější.



Jak vypadá situace u nás, a jak ve světě?



Nemá smysl si zastírat, že situace s vývojem her u nás má k

dokonalosti hodně daleko. To je dáno celou řadou faktorů, z

nichž nejvýznamnějším je časové zpoždění, s¦nímž se u nás hry

začaly vyvíjet. Je sice pravdou, že i za dob socialismu tady

vznikaly počítačové hry, ale jednalo se převážně jen o hry

textové (tj. žádná grafika, hudba, efekty), které byly určeny

pro omezený okruh uživatelů domácích počítačů. Ve stejné době už

v západním světě vznikaly profesionální týmy zaměřené na vývoj

her a získávaly tolik potřebné zkušenosti, díky kterým jsou z

nich dnes dobře zavedené firmy se solidním zázemím. Naše

vývojáře tato fáze teprve čeká. Vždyť když se podíváme, kdo v

českých zemích a na Slovensku vyvíjí hry, zjistíme, že se jedná

o skupinky nadšených studentů středních a vysokých škol. Zatímco

vývoj průměrné hry ve světě vychází přibližně na 1 milion USD, u

nás se jedná o částky řádově nižší (v závislosti na typu

projektu 100 000 – 900 000 Kč). Zatímco v zahraničí je běžné, že

se na jedné hře podílejí stovky profesionálů z jednotlivých

oborů, u nás vše vytváří skupiny maximálně deseti lidí takřka na

koleně. Vzhledem k nedostatku finančních prostředků si vývojáři

nemohou dovolit koupit či najmout profesionální vybavení. To ve

svém důsledku znamená, že české a slovenské hry jsou zpracovány

v podprůměrné kvalitě, a tak nemají šanci se prosadit na

světovém trhu. A přitom pouze orientace na zahraniční trhy je

jedinou možností, jak získat tolik potřebné prostředky, které je

nutno investovat do vybavení vývojových týmů. Jak vidíme, jedná

se o začarovaný kruh. Nicméně pohled na vývoj nových domácích

her mě naplňuje optimismem. Několika týmům se podařilo obrátit

na svou stranu zámožné sponzory, kteří situaci chápou a rozhodli

se do vývoje her investovat. Již dnes se pracuje na projektech,

jež se v porovnání se světovou konkurencí nemají za co stydět, a

některé ji dokonce v mnohém převyšují. Doufejme jen, že tyto

první vlaštovky nezůstanou osamoceny, a že se z nich postupně

vyvinou týmy světové úrovně.