Adaptivní hudba v počítačových hrách

Hudba je již tradiční součástí většiny počítačových her. Pomáhá ustavit žánr, prezentovat emoční úroveň, nastavit očekávání úrovně obtížnosti a měla by odrážet typ herní mechaniky (gameplay).

Hudba je ve hrách již od dob, kdy technické možnosti počítačů umožňovaly produkci zvuků, ze kterých bylo možné sestavit alespoň neúplnou hudební stupnici, jak tomu bylo například u počítače Atari 2600. Komponování hudby pro takový stroj připomíná hraní na klavír, ze kterého někdo vytrhal většinu černých kláves a neponechal ani některé bílé [1].

Použito se svolením Warhorse Studios.

Vývoj počítačů postupně umožňoval kvalitnější a sofistikovanější syntézu hudby ve videohrách. V 90. letech byly počítače PC běžně vybaveny zvukovými kartami, které umožňovaly FM či PCM syntézu, tj. techniky syntézy zvuku běžné na levnějších i profesionálních syntezátorech té doby. Vzhledem k omezené kapacitě záznamových zařízení v té době bylo běžné, že hudba byla syntetizována na základě definovaného předpisu (MIDI, moduly, atd.). Společnost LucasArts vyvinula systém iMUSE, který obsah hudby sestavoval na základě kontextu a použil ji ve hře Monkey Island 2: LeChuck’s Revenge [2]. Hráč při změně lokace mohl slyšet plynulé přechody z jedné skladby do druhé. Kvalita hudby byla omezena architekturou použitých syntezátorů.

S vývojem velikosti paměti bylo stále snadnější pouštět celé, předem vyprodukované skladby v high-fidelity digitálním formátu, jejichž kvalitě již nebyly kladeny žádné technické meze. Vznikaly první soundtracky nahrané živým orchestrem. Vzhledem k tomu, že manipulace s obsahem hotového digitálního zvukového signálu je výpočetně velmi náročný problém, byla hudba přehrávána, tak jak byla vyprodukována, což znemožnilo její interaktivitu.

Obr. 1: Typická struktura statického soundtracku

Mnoho her nepřítomností adaptivní hudby nikterak netrpí. Hry, které mají pevné časování jednotlivých levelů či které mají ostré předěly mezi jednotlivými hernímy stavy, mohou přehrávat hotové skladby bez dalších úprav, zastavovat je a místo nich pouštět jiné. Mnoho her má proto svůj soundtrack organizován, jak je ukázáno na obr. 1. Hudba k menu je přerušena, když hráč začne hrát, a hraje smyčka pro první level. Vyhraje-li hráč, dostane se přes vítěznou znělku do levelu 2, atd., a to dokud se mu daří. Když prohraje, ozve se hudba ke Game Over.

Naproti tomu design her typu open-world, kde hráč chodí otevřenou krajinou, často vyžaduje, aby hráč neviděl žádné technické předěly mezi prostou chůzí po krajině, soubojem, obchodováním, atd. a hudba tomu má odpovídat.

Adaptivní hudba

Adaptivní hudba (též označována jako dynamická či interaktivní) plynule reaguje na stav hry přehráváním svých částí tak, aby změny v přehrávání dávaly “hudební smysl”: Aby skladba nenásilně přešla z klidné do dramatické části při příchodu nepřátel či aby se plynule změnila instrumentace při přechodu z lokace do jiné lokace.

Obr. 2: Hudební prostor závodního simulátoru

Hypotetická hra se závodním autem, které během levelu postupně projíždí poli a lukami, lesním porostem a nakonec městskou zástavbou (obr. 2), by tyto změny v prostředí měla odrazit ve svém soundtracku. Proto je však potřeba, aby byla hudba schopna smysluplné reakce kdykoliv během hry, neboť není předem známo, kdy ke změně prostředí dojde.

Design adaptivní hudby je dán (1) hudebním prostorem, (2) přiřazením dramaturgických prvků částem tohoto prostoru a (3) technickými prostředky, které jsou pro její přehrávání k dispozici. Design adaptivní hudby však musí jít ruku v ruce s kompozicí samotného obsahu. Designér činí rozhodnutí dle představ skladatele a naopak.

Dramaturgie adaptivní hudby – hudební prostor

Stav hry je možné chápat jako bod v prostoru vymezeném vybranými stavovými proměnnými dané hry. Různým intervalům stavových proměnných je pak možné přiřadit různé vlasnosti hudby. V případě závodní arkády mohou být těmito proměnnými souřadnice v prostoru, kde se právě auto nachází, a různým oblastem přiřadit náladu, dynamiku, tempo, instrumentaci, vedení hlasů, atd.

Obr. 3: Hudební prostor ve hře typu player-vs-player.

V případě souboje hráče a simulovaného protihráče (NPC) můžeme uvažovat stav zdraví hráče a stav zdraví NPC (obr. 3). Na začátku hry mají obě postavy maximální zdraví. Hudba by měla být svižná, ale neutrální. Začne-li hráč vyhrávat (jeho zdraví je vyšší než zdraví oponenta), měla by znít vítězná hudba. Je-li situace nerozhodná a zdraví obou postav minimální, měla by znít dramatická hudba, aby se podtrhl stav “kdo s koho”.

Obr. 4: “Křížky” vedou v aktuálním výřezu mapy.

V případě strategické hry, ve které dva hráči soupeří o uzemí, může znít hudba podle toho, jak jsou rozmístěné jednotky hráče a oponenta a kdo má zrovna převahu v místě, které je zobrazeno na obrazovce (obr. 4). Každá z obou stran může být reprezentována hudebním motivem, který se projevuje více či méně dle vývoje situace.

Technické prostředky adaptivní hudby

Existuje řada prostředků, jak modelovat adaptivitu hudby. V tomto odstavci zmíníme několik základních.

Reorchestrace je technika založená na existenci většího množství stop, které obsahují různé melodické, harmonické i rytmické komponenty. Hudba může reagovat velmi rychle na změny herní situace a přitom zachovává konzistenci obsahu. Příkladem může být hra The Space Game [3], kde se k základnímu harmonickému “polštáři” přidá rytmická stopa, je-li hráč napaden. (Princip přidávání synchronních stop byl využit již např. při konstrukci elektrofonického nástroje Optigan na konci 60. let.)

Synchronní cross-fading je variantou reorchestrace. Je založen na existenci několika verzí stejné skladby, které se synchronně streamují z disku a dynamicky se mění jejich hlasitost přehrávání podle toho, která z verzí má v daný okamžik znít. Této techniky bylo využito například ve hře Fallout: New Vegas [4].

Resequencing je technika založená na řazení předem připravených úseků hudby za sebe tak, že bezešvě navazují. Jednotlivé úseky jsou označeny, aby bylo zřejmé, v jakých bodech hudebního prostoru je možné daný úsek vybrat. Hudební systém dokáže reagovat na vývoj hry tak, že vybírá části hudby přiřazené konkrétní situaci. Pokročilejší varianty resequencingu mají definované úseky, které hrají při přechodech mezi situacemi, aby byly tyto přechody plynulejší.

Prvky obou těchto přístupů byly přítomny v již zmíněném systému iMUSE.

V akčních hrách je běžné, že zvukový signál s hudbou, která hraje při akci, bývá modifikován zvukovými filtry. Příkladem může být hra Payday 2 [5]. Je-li hráčova postava ve hře vystavena účinkům zábleskového granátu (stun grenade), vyplní obrazovku bílá a ztlumí se zvuk, včetně hudby, která se po chvíli vrátí, nejprve s potlačenými výškami.

Samostatnou kategorií je algoritmická hudba. Jedná se o souhrnné označení technik strojového generování hudebního obsahu. Namátkou jmenujme Markovovy řetězce, genetické algoritmy, fraktální geometrii či celulární automaty. Adaptivita hudby je docílena dynamickou změnou parametrů těchto generátorů v čase. Soundtrack převážné většiny počítačových her je však komponován a produkován lidmi.

Hudba v Kingdom Come: Deliverance

Obr. 5: Grafika hry Kingdom Come: Deliverance.
Použito se svolením Warhorse Studios.

Kingdom Come: Deliverance je připravovaná RPG (hra na hrdiny) v otevřeném světě, s pohledem “první osoby”, zobrazující oblast řeky Sázavy během počátku 15. století (obr. 5). Vývojový tým se snaží o autenticitu všeho, co hru tvoří: Historický kontext příběhu, architektura staveb, souboje sečnými zbraněmi, demografie postav, ale i hudba musí odpovídat tomu, “jak to tehdy bylo”.

Historické prameny však popisují pouze hudbu liturgickou, u které se neočekává, že by zněla vždy a všude. Prameny popisující hudbu světskou z té doby prakticky neexistují. Hlavní hudební skladatel projektu, Jan Valta, stál před úkolem definovat žánr hudby pro tuto hru tak, aby hudba “zněla staře”. Vzhledem k tomu, že potřeboval větší dramaturgické rozpětí, než by měl k dispozici s využitím pouze dobových hudebních prostředků, rozhodl se pro střídání ansámblů o malých obsazeních, které se mohly sejít k improvizacím v hospodách, a velkého symfonického orchestru, který hraje hudbu filmového charakteru. Využívá však staré církevní tóniny, stylizaci liturgického zpěvu v melodii, střídání taktů a vyhýbá se novodobé dualitě dur/moll.

Hudba má výrazné změny dynamiky, plnou škálu harmonie, časté změny rytmu i tempa a ravelovské vedení hlasů. Jedná se proto o materiál, pro který se hodí resequencing.

Obr. 6: Ukázka vnitřní struktury jedné scény.

Jednotlivé sklaby ve hře nezní od začátku do konce. Jsou svázány s chováním hráče. Hudba se skládá z jednotlivých scén – hotových skladeb, uzpůsobených k přehrávání adaptivním systémem. Scény jsou základní stavební prvky soundtracku a stojí na úrovni jednotlivých písniček na CD.

Obr. 6 ilustruje vnitřní strukturu jedné scény v explorativní hudbě, jejímž cílem je reagovat na pozvolné změny polohy hráče v herním světě, počasí či nálady daného místa. Každá scéna má svůj vlastní začátek, kterým je zahájeno přehrávání hlavní stopy scény, pokud před tím bylo ticho. Hlavní stopa scény bývá dlouhá jednu až čtyři minuty.

Je-li v průběhu času zaznamenán požadavek na změnu scény a má se přejít do jiné scény, přejde při nejbližší příležitosti přehrávání do odbočky, která plynule převezme tok hudby z hlavní stopy scény. Na jejím konci má hudba takovou dynamiku a harmonii (tzv. alef, ℵ), aby bylo možné na konec posledního taktu této odbočky přímo a bez mezery navázat prvním taktem intra scény cílové, které má stejný alef ℵ. Rozhodli jsme se mít celkem tři alefy, ℵ1, ℵ2, ℵ3, a tomu odpovídají tři množiny odboček, kompatibilní s odpovídajícími třemi typy inter. Odbočky umisťujeme přibližně každých 10 až 15 vteřin. V těmto přechodům dochází zejména v explorativní hudbě, tj. během hráčova procházení krajinou.

Případné zpoždění 15 vteřin přechodu mezi scénami nijak neohrozí dramaturgii explorativní části soundtracku. V případě přechodu a pohybu v rámci akční hudby by ale takové prodlevy byly na závadu. Není např. možné, aby hudba otálela čtvrt minuty s reakcí na případné napadení hráčovy postavy. Proto podporujeme i rychlé přechody, kde synchronně s následujícím koncem taktu ztlumíme právě hrající scénu a začneme přehrávat obsah scény cílové. Celý přechod překryjeme cinelem “cinematickým elementem”: Zpravidla virblem na zavešeném činelu, který vyvrcholí v nástupu další scény.

Tento systém je již implementován a prvních několik takových skladeb bude s největší pravděpodobností v nadcházející iteraci Tech Alpha 0.5 naší hry, dostupné přes službu Steam pro backery projektu.

Zdroje

[1] Slocum, Paul: Atari 2600 Music And Sound Programming Guide. 2003. Available online from http://www.qotile.net/files/2600_music_guide.txt; 6 September 2015

[2] LucasArts: Monkey Island 2: LeChuck’s Revenge. Video game. 1991.

[3] The Casual Collective: The Space Game. Video game. 2008.

[4] Obsidian Entertainment: Fallout: New Vegas. Video game. 2010.

[5] 505 Games: Payday 2. Video game. 2013

 

Autor: Adam Sporka, Katedra počítačové grafiky a interakce, ČVUT FEL