Atmosféra v GM

Ostatní jazyky GameMaker Ostatní Atmosféra v GM

Každý z vás určitě někdy přemýšlel o tom, jak dodat své hře tu správnou atmosféru. No, už nemusíte tápat, protože vás dnes naučím pár věcí, které dost možná u hororových her využijete. Předem ale upozorňuji, že tohle je jen o tvorbě atmosféry. Na otázky typu : "Jak udělat vypínací baterku?" nebo "Jak jsi udělal, že jde baterka za panáčkem?" Nereaguji.

A protože věřím, že spousta z vás by to ráda měla hotovo co možná nejrychleji a nejjednodušeji, píšu návod tak, aby realizace jeho částí nezabrala více jak 15 minut. Tak se připoutejte, protože tohle bude pekelná jízda!

Příprava

Jako první si stáhněte a rozbalte soubory k tutoriálu. Jsou to skripty a zdroják do GameMaker studia. Ke skriptům je návod v pdf.

AUDIO

Asi nejdůležitější věc pro správnou atmosféru je výběr správného audia. Hodně záleží na prostředí, ale já nejčastěji využívám 2 složky. Okolí, a temné hučení. Dejme tomu, že jsme třeba v lese. V dálce slyšíme hrom, vítr se prohání skrze větve stromů. Stvořit něco takového není díky internetu těžké. Existuje hromada online nástrojů které to udělají za vás. Já například využívám NATURESOUNDS.

Vyrobit temné hučení, které známe například ze Silent Hill, není nic složitého. Stačí vám k tomu Audacity a prakticky jakákoliv písnička a je to práce na dvě minutky. Výsledek je přitom dost dobrý.

POSLECHNOUT VÝSLEDEK

Otevřete Audacity, nahrajete do něj cokoliv od metalu po Justina Biebera a začnete efektovat. Jako první přidáte efekt Change tempo, a nastavíte ho na směšně vysokou hodnotu.

Zkratkou Ctrl+R budete efekt opakovat tak dlouho, dokud nebude mít písnička délku cca 10-15 vteřin.

Dalším efektem bude Change pitch.

Nastavíme ho na nějakou nízkou hodnotu. A pomocí Ctrl+R jednou nebo dvakrát zopakujete. Prostě dokud nebude písnička znít, jako když foukáte do mikrofonu.

Dalším krokem je... To samé. Zase Change pitch, ale tentokrát nastavíme vysokou hodnotu a zase párkrát pomocí Ctrl+R zopakujeme. Opakujeme tak dlouho, dokud to nebude znít jako dítě zavřené v rouře. (to poznáte :D, většinou stačí jen jedno opakování)

A nakonec efekt Paulstretch.

Není potřeba nic nastavovat. Výsledkem bude cca minutu dlouhý temný ambient.

Zvuky máme. A teď se vrhneme na jejich uplatnění v GameMakeru a naučíme se mírně pokročilou práci se zvuky v GM.

Jako první si vytvoříme objekt kotrolující zvuky. Třeba obj_zvuk a do create eventu napíšeme následující :

darksound=audio_emitter_create();
audio_emitter_gain(darksound,0.5)
audio_play_sound_on(darksound,snd_dark,true,1)
audio_play_sound(snd_nature,2,true);

A co že jsme udělali? Inu, kdyby jsme zvyšovali hlasitost, mělo by to vliv na veškeré zvuky ve hře. Proto jsme si vytvořili audio emiter pojmenovaný darksound. V dalším řádku jsme si nastavili aby emiter hrál jen na poloviční hlasitost, a plnil tak funkci zvuku na pozadí. A nakonec pomocí funkce audio_play_sound_on jsme spustili onen temný zvuk v emitoru.

Další důležitá věc je zničení emitoru. Nejlepší je vytvořit si event game end a do něj vložit následující kód:

audio_emitter_free(darksound);

A to by bylo vše ke zvuku.

Další je na řadě správné osvětlení. To se dělá většinou pomocí surfaces. Jak jsem již psal v úvodu, tento návod je psaný tak aby se výsledek dostavil co nejdříve. Takže přeskakuji vše o surfaces, a místo toho dodávám můj skript na světla. Takže... Hurá do toho.

Extra jednoduchý světelný systém.

Krok 1 :

Pravým tlačítkem kliknout na scripts, vyber add existing scripts a otevři light.gml

Krok 2 :

Vytvoř si objekt který bude řídit prostředí (pokud ho máš, můžeš kód psát do něj)

Krok 3 :

V create eventu vlož kód dark_init();

V" begin step eventu .{color: red}" vlož kód dark_activate(bar­va) ; Funguje to invertovaně takže čím světlejší barvu zvolíš, tím tmavší bude prostředí. (Tip pro vlastní barvu můžeš použít kód : hneda=make_co­lor_rgb(125,125,125) a pak dark_init(hne­da);)http://www­.itnetwork.cz/js/te­xyla/texyla/i­cons/img.png

V draw eventu vlož kód dark_draw();

Tvorba světel

Jednoduché kulaté světlo :

Na jednoduchá kulatá světla slouží skript light_draw(ve­likost, barva 1 , barva 2) skript se dává do step eventu! (begin step, end step taky fungují)

Barva 1 je barva světla a barva 2 by měla vždy být c_black

Světlo pomocí spritu:

Pokud si přejete speciální tvar světla (třeba pro baterku/svítilnu) Můžete si k tomu vytvořit sprite jako je tento :

svítidlo

Přidáte ho jako sprite, a pak použijete opět ve step eventu funkci light_draw_spri­te(sprite,x,y,xsca­le,yscale,rot,co­lour,alpha)

Příklad : light_draw_spri­te(spr_light,sel­f.x,self.y,1, 1,0, c_white,1)

No, a to je celé. Upřímně doufám že to někomu pomůže. :)

Na závěr vám všem čtenářům děkuji za pozornost a doufám že vám můj návod poslouží jako základ pro spoustu krásných her. Snažil jsem se psát tak, aby nebylo potřeba učit se hromadu nových věcí a výsledek se i přesto dostavil v řádu desítek minut. Snad se mi to povedlo a ti zkušenější z vás nebudou proti mým metodám "učení" :D Po přečtení hromady vláken o tom jak někdo dělá mmorpg nebo fantasy rpg s otevřeným světem jsem totiž došel k názoru že psát podrobné tutoriály o tomhle nebo támhletom prostě nemá cenu.

Kdo se to chce naučit, ten se to naučí sám, a pro ty ostatní jsou tu moje ready to use skripty které většinu práce udělá za vás.

Jo a nakonec se vám omlouvám za pravopisné chyby a překlepy, pokud by jste narazili na něco co je do očí bijící, neváhejte mě seřvat pomocí komentáře.

A na závěr menší ukázka narychlo vytvořené scény pro ty, co nemají GM nebo jsou prostě jen zvědaví.. :-D

Pro baterku jsem použil následující sprite:


 

Stáhnout

Staženo 46x (5.08 MB)
Aplikace je včetně zdrojových kódů v jazyce GameMaker

 

  Aktivity (1)

Článek pro vás napsal Druid
Avatar
Autor se věnuje koukání na anime a sem tam zprasí hru.

Jak se ti líbí článek?
Celkem (6 hlasů) :
4.833334.833334.833334.833334.83333


 


Miniatura
Předchozí článek
Práce s INI soubory v Game makeru
Miniatura
Všechny články v sekci
GameMaker - Ostatní
Miniatura
Následující článek
Jak na tlačítka v GameMaker

 

 

Komentáře

Avatar
hanpari
Redaktor
Avatar
hanpari:

Líbila se mi tvorba toho zvukového pozadí :)

 
Odpovědět  +2 20.5.2015 20:32
Avatar
David Čápka
Tým ITnetwork
Avatar
David Čápka:

A co nějaký screenshot na závěr článku pro zvědavce, co nemají GM? :P Ono i pro ty co ho mají by to nebylo k zahození.

Odpovědět  +9 20.5.2015 22:05
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Druid
Redaktor
Avatar
Druid:

Screeny přidány. Jen nevím jestli jsem to správně publikoval. Po uložení článku se místo změn objevil nový.

Odpovědět 21.5.2015 14:04
Život je tak trapný bože, jak uprdnutí do soulože.
Avatar
Adam Ježek
Tým ITnetwork
Avatar
Odpovídá na Druid
Adam Ježek:

To je správně, objeví se nový a po schválení se ten starý smaže a použije ten nový.

Odpovědět  +1 21.5.2015 16:47
Programátor dělá co může. Počítač co chce. | Pokud mi dáš mínus, tak prosim, napiš proč!
Avatar
Lukáš Hornych
Redaktor
Avatar
Lukáš Hornych:

Super článek :)

 
Odpovědět  +1 22.5.2015 20:47
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Druid
David Čápka:

Teď je to super, úplně mě mrazí :)

Odpovědět  +4 22.5.2015 20:56
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Druid
Redaktor
Avatar
Odpovídá na David Čápka
Druid:

Jsem rád že se líbí. Je to vlastně tajemství atmosféry většiny mých her. A přesně tahle atmosféra dostala Beneath your feet na 85 místo (z cca 2000) v kategorii atmosféra na LD.

Editováno 23.5.2015 0:17
Odpovědět  +2 23.5.2015 0:16
Život je tak trapný bože, jak uprdnutí do soulože.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.