NAZWA: Dodajemy nowy dźwięk
TWÓRCA: @AziatkaVictor
Od twórcy: „To jest mały przewodnik po wprowadzaniu nowych dźwięków do Stalkera. Jest kilka podstawowych pojęć, o których po prostu musisz wiedzieć - bez nich nic nie będzie działać”.
PRACA W EDYTORZE AUDIO:
Spoiler
Pierwsze, co trzeba wiedzieć, to jaki dokładnie dźwięk jest nam potrzebny. Prościej mówiąc, należy określić, w jaki sposób dźwięk będzie odtwarzany. Jest to ważne na początku pracy. To typ dźwięku.
Są dwa możliwe warianty, od których będzie zależeć efekt:
- Mono. Taki typ jest potrzebny w celu odtwarzania dźwięków przedmiotami, bronią, itd. To wszystko z powodu tego, że dźwięk jest odtwarzany w jednym z uszu z określoną głośnością. Pozwala to stworzyć efekt 3D. Natomiast dla stereo to nie pasuje, ponieważ w stereo dźwięk jest odtwarzany różnie w każdym z uszu, a tutaj jest całkiem inna zasada działania.
- Stereo. Ten typ jest wykorzystywany w celu odtwarzania dźwięków u “GG w głowie”, tzn. dźwięk będzie odtwarzany z jednakową głośnością w trybie stereo. Jest to wykorzystywane dla dźwięków GG, lektora SMS i ambientów.
- UWAGA: Nie róbcie Stereo dla dźwięków, które będą odtwarzane z przedmiotów w przestrzeni 3D. Jeśli dźwięk jest w Stereo, to jest tak, jakbyście go nie ustawiali - będzie on odtwarzany w głowie, a wy będzie mówić, że jest nie w porządku.
Wszystko jest proste. Wybieramy typ dźwięku, dla naszych potrzeb i eksportujemy wybrany dźwięk w formacie *.wav.
UWAGA: Częstotliwość dźwięku powinna być 44100 Hz.
PRACA W SDK:
Spoiler
Aby SDK zobaczył nasz dźwięk, trzeba go dodać do folderu “rawdata/sounds”. Później uruchamiamy SDK i otwieramy zakładkę “Sounds/Sound Editor”. To panel, który pomoże nam w ustawieniu dźwięku.
Poszczególne parametry oraz to, za co odpowiadają:
- Quality - szerokość pasma częstotliwości, otaczająca centralną częstotliwość (dla bardziej płynnego zanikania dźwięku lub jego stabilności)
- MinDis - odległość, od której głośność dźwięku będzie się obniżać (im niższa do MaxDist, tym płynniejsze przejście, ale Quality trzeba zwiększyć)
- MaxDist - maksymalna odległość, z której dźwięk będzie słyszeć GG
- MaxAIDist - maksymalna odległość, z której dźwięk będzie słyszeć NPC
- BaseVolume - głośność
- GameType - element wpływający na reakcję NPC.
Parametry zostały wzięte z Wiki
Dla dźwięku, który będzie odtwarzany w głowie GG, większości parametrów nie trzeba ustawiać. Można od razu z edytora audio eksportować do formatun *.ogg. A dla dźwięku mono, ustawiamy potrzebne parametry, naciskamy “ОК” i nasze dźwięki pojawiają się w folderze “gamedata/sounds” w formacie *.ogg. Czeka nas później praca z konfigami.
PRACA Z KONFIGAMI:
Spoiler
Aby gra widziała nasz dźwięk i nie było wylotu do pulpitu podczas próby odtworzenia, trzeba go dopisać w konfigu “script_sound_lokacja”. Jeśli utworzysz ten plik specjalnie dla swojej lokacji, to trzeba dołączyć go do głównego konfigu “script_sound”, pisząc w nim:
#include "script_sound_lokacja.ltx"
Również dołączamy listę:
[list]: list_music_and_stories, list_script_sound_zaton, list_script_sound_jupiter, list_script_sound_pripyat, list_script_sound_underpass, list_script_sound_lokacja
Następnie dopisujemy dźwięk w konfigu. Trzeba go dopisać do listy i stworzyć jego sekcję. Np. chcemy dodać muzykę dla radia. Dopisujemy w konfigu to:
[list_script_sound_lokacja]
nasz_dźwięk
[nasz_dźwięk]
type = 3d
npc_prefix = false
path = music\nasz_dźwięk
shuffle = loop
idle = 0,0,100
Parametry z sekcji:
- Type
- Actor - określa dźwięk odtwarzany od strony aktora. To dźwięki z PDA, wszelkiego rodzaju wiadomości SMS-owe, rozmowy pilotów - wszystko, czego potrzebujesz, aby grać bez utraty głośności od usunięcia źródła. Za inicjalizację i odtworzenie dźwięku odpowiada skryptowa klasa actor_sound.
- 3D - określa dźwięk odtwarzany przez obiekty. Skryptowa klasa object_sound odpowiada za inicjalizację i odtwarzanie dźwięku.
- NPC - określa dźwięk odtwarzany przez NPC. Skryptowa klasa npc_sound odpowiada za inicjalizację i odtwarzanie dźwięku.
- Path - ścieżka do dźwięku w folderze “sounds”
- npc_prefix - jeśli “true” i “type = aktor” lub “false” i “type = npc”, to do wartości ścieżki do dźwięku zostanie dodane “characters_voice” na początku. Jeśli true i type = npc, to zostanie dodane coś w rodzaju “character_voice\human_01\bandit”, to znaczy zawartość npc:sound_prefix(). Wartość domyślna to false.
- Shuffle -wartością domyślną jest rnd.
- rnd - wybiera losowy plik z tablicy dźwięków
- seq - odtwarza w kolejności do końca stołu,
- loop - tak samo jak seq, przeskakuje po końcu tablicy tylko do pierwszego dźwięku w tablicy dźwięków. Wartość domyślna to 3,5,100.
- idle - trzy liczby oddzielone przecinkami. Parametry odtwarzania dźwięku
- Pierwsza wartość - minimalny odstęp między dźwiękami.
- Druga wartość - maksymalny interwał (w sekundach).
- Trzecia wartość - prawdopodobieństwo, z jakim dźwięk zostanie odtworzony, gdy nadejdzie jego czas.
Parametry z Wiki
“I to wszystko. Następnie wykorzystujemy dźwięk do własnych celów, odtwarzamy go za pomocą logiki lub skryptów lub umieszczamy w SDK.”
ŹRÓDŁO:
