Obsługa dźwięku - Tworzenie gier

in pl-gamedev •  7 years ago 

Zwykle w kontekście gier mówi się o oprawie audiowizualnej. Czyli dźwiękowej i graficznej. Dziś skupimy się na podstawowych funkcjach dotyczących dźwięku.

Prawie każda gra ma dźwięk i muzykę. Poprawia ona doznania płynące z gry, muzyka potrafi wprowadzić w nastrój, a niektóre elementy dźwiękowe - w strach. To muzyka i dźwięk potrafią manipulować naszymi emocjami.

Co prawda nie pomogę Wam w wyborze dźwięków i muzyki, ale mogę Was nauczyć jak w Enigma Dev używać ich ;)

Przypomnienie na temat dodawania dźwięków do gry

Dajemy prawy przycisk myszy na zakładkę Sounds i wybieramy Create Resource

  1. Nazwa zasobu, polecam zaczynać od prefiksu snd_
  2. Wybranie pliku z muzyką / dźwiękiem
  3. Akceptacja (zapisanie danych)

Wtedy dźwięk lub muzyka znajduje się w plikach gry i będzie tam sobie egzystować i czekać na wykorzystanie, którym dziś się zajmiemy.

Podstawowe funkcje dotyczące dźwięku

  • Odtwarzanie dźwięku
audio_play_sound(snd_0, 0, 0);

Funkcja audio_play_sound służy do odtwarzania dźwięku, gdzie snd_0 to nazwa zasobu, drugi argument to priorytet a trzecie czy dany dźwięk ma się powtarzać po skończeniu (przydatne do muzyki).

Priorytet nie jest mocno ważny. Jeśli dojdzie do limitu kanałów audio to muzyka z mniejszym priorytetem będzie wyłączana na rzecz większej. Domyślnie ten limit wynosi 128 utworów, także ciężko to wykorzystać.

  • Wstrzymanie muzyki

Czasem w grach jest tak, że wchodząc do menu muzyka przerywa się na czas przebywania w nim. Czasem może się przydać taka funkcja w naszej grze i warto ją znać.

audio_pause_sound(indeks);

Gdzie indeks to nazwa zasobu w Enigma (czyli np. snd_0).

  • Kontynuowanie muzyki

Jak już zatrzymaliśmy muzykę to chcemy ją (mam nadzieję) przywrócić, wtedy używamy funkcji audio_resume_sound

audio_resume_sound(indeks);

Naturalnie w miejsce indeksu podajemy nazwę zasobu.

  • Zupełne wyłączenie muzyki

Wychodząc do menu zwykle odtwarzamy inne kawałki niż podczas grania. Jeśli nie przerwiemy ich to albo się nałożą - albo będzie ta sama piosenka kontynuowana, czego zwykle nie chcemy. Mamy dwie funkcje - wyłączyć konkretny utwór lub wszystkie grywane (zanim np. zaczniemy nowy).

audio_stop_sound(indeksen);

W przypadku wyłączenia konkretnego dźwięku mamy funkcję skoncentrowanego wyboru piosenki. Pod indeks dajemy indeks piosenki, czyli naszą nazwę.

audio_stop_all();

W przypadku całkowitego wyłączenia funkcja audio_stop_all robi za nas wszystko. Zabija muzykę na śmierć jak to mawiają w reklamie pewnego specyfiku.


To wszystko?

Nie, ale należy pamiętać, że najważniejsze są podstawy. Szczególnie na początku nauki (to raz), a dwa - najczęściej się stosuje. Zwykle książki informatyczne wyglądają tak, że wciska się tonę wiedzy, której człowiek nie zapamięta, a potem zaleca się ich używanie - ale różnych funkcji (w np. PHP) jest MNÓSTWO. Dlatego lepiej uczyć się najważniejszych, a w razie czego Googlować.

Jak ktoś chce zapoznać się z każdą funkcją, to polecam po angielsku dokumentację Game Makera., ale moim zdaniem nie ma sensu wszystkiego czytać, ale kto wie?

Podsumowanie lekcji

  • Nie uczcie się wszystkiego
  • Używajcie Google
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Mogłbyś dodać jakieś dźwięki do steemnova.

Opla sprzedam.

PS. A tak serio. Jakby ktoś potrzebował muzyki do gier, to chętnie (o ile czas pozwoli) służę pomocą. Do tej pory moja muzyka pojawiła się tylko w grze Soviet City (dostępna na Steemie w Early Access), ale za to miała całkiem dobre recenzje ;)

Do gier na razie nie potrzebuję, ale będę potrzebował do tak zwanych "guided meditations", bo planuję wydać parę dysków. Mam też dodatki do izochroników na audacity i efektów synchro, więc mógłbym składać sam bo używam własnej technologii, ale "background music" by się przydał. Mogę wysłać maila transferem.

Mi by się przydała do Occulta. Ogólnie idea była taka, że robimy grę i sprzedajemy. Jednak w Polsce ciężko to zrobić, więc gra jest za free. Okazało się, że grafik troszkę zbyt bardzo inspirował się w niektórych elementach i teraz grafiki i muzyka jest tworzona od nowa. Jak umiesz tworzyć piosenki trochę Rockowe / Punkowe (potem mogę wysłać co mieliśmy) i zrobić coś podobnego to chętnie skorzystam.

Ogólnie idea była taka, że robimy grę i sprzedajemy. Jednak w Polsce ciężko to zrobić, więc gra jest za free.

A nie możesz dać gry na Steama? Gra, do której robiłem muzykę jest na Steamie. Twoja wygląda bardzo oldschoolowo. Pamiętam takie gry z 1996 roku, kiedy dostałem swojego pierwszego PCta ;)

Ciekawe informacje. Mnie interesuje zastosowanie gier do rozwijania funkcji parapsychicznych (przewidywanie przyszłości i psychokineza), a także gier z użyciem biofeedbacku do osiągania różnych efektów psychofizjologicznych, np. relaksacji z pętlą zwrotną z oporności skóry (tzw. galwaniczna reakcja skórna). Muzyka i dźwięk w ogóle ułatwiają koncentrację i osiąganie różnych celów - również w grach. Czy przy pomocy tych komend można również osiągnąć dźwiękowe efekty specjalne?

Zależy jakie potrzebujesz, ogólnie sama Enigma (lub może Game Maker) mają podstawowe opcje do dźwięku jak echo. Ale też CHYBA nie ma ich za dużo, tylko podstawowe.