Ustawienia importu klipów audio Unity w celu uzyskania najlepszej wydajności

Dźwięk w formacie Unity ma duży wpływ na wydajność, a nieprawidłowe ustawienia importu mogą drastycznie zmniejszyć liczbę klatek na sekundę, dlatego ważne jest, aby o tym pamiętać podczas importowania klipów audio do projektu.

Zwykle są 3 rodzaje dźwięków: te, które są odtwarzane często, okresowo, i dźwięki otoczenia.

Każdy typ wymaga określonych ustawień importowania, aby osiągnąć najlepszą wydajność.

Na przykład w moim projekcie mam 3 dźwięki o różnych celach i jak widać wszystkie mają domyślne ustawienia importu, które nie są odpowiednie dla każdego typu dźwięku.

1. Często odtwarzane dźwięki

Dźwięki odtwarzane w dużych ilościach (np. dźwięki broni, kroki, dźwięki uderzeń itp.).

Najlepiej działa z następującymi ustawieniami (odpowiednie również dla krótkich dźwięków trwających poniżej 10 sekund):

Typ ładowania: Dekompresja przy ładowaniu

Format kompresji: ADPCM

(Z dokumentacji Unity) Dekompresja przy ładowaniu: Pliki audio zostaną zdekompresowane zaraz po załadowaniu. Użyj tej opcji w przypadku mniejszych skompresowanych dźwięków, aby uniknąć nadmiernego obciążenia wydajności wynikającego z dekompresji w locie. Należy pamiętać, że dekompresja dźwięków zakodowanych w Vorbis przy ładowaniu zajmie około 10 razy więcej pamięci niż utrzymywanie ich skompresowanych (w przypadku kodowania ADPCM jest to około 3,5 razy), więc nie używaj tej opcji w przypadku dużych plików.

(Z dokumentacji Unity) ADPCM: Ten format jest przydatny w przypadku dźwięków zawierających sporo szumu i wymagających odtwarzania w dużych ilościach, takich jak kroki, uderzenia, broń. Współczynnik kompresji jest 3,5 razy mniejszy niż PCM, ale obciążenie procesora jest znacznie mniejsze niż w przypadku formatów MP3/Vorbis, co czyni go preferowanym wyborem dla wyżej wymienionych kategorii dźwięków.

2. Okresowe lub rzadkie dźwięki odtwarzania

Dźwięki, które nie muszą być odtwarzane często, na przykład głos spikera na początku rundy, dźwięk timera na początku gry wyścigowej lub w zasadzie dowolny dźwięk trwający ponad 10 sekund, ale poniżej 1 minuta.

Typ ładowania: Skompresowany w pamięci

Format kompresji: ADPCM

(Z dokumentacji Unity) Skompresowane w pamięci: Przechowuj dźwięki skompresowane w pamięci i dekompresuj podczas odtwarzania. Ta opcja powoduje niewielki wzrost wydajności (szczególnie w przypadku plików skompresowanych w formacie Ogg/Vorbis), więc używaj jej tylko w przypadku większych plików, gdzie dekompresja podczas ładowania wymagałaby zbyt dużej ilości pamięci. Dekompresja odbywa się w wątku miksera i można ją monitorować w sekcji "DSP CPU" w panelu audio okna profilera.

3. Dźwięki tła/otoczenia

Dźwięki tła/otoczenia trwające ponad minutę.

Typ ładowania: Streaming (lub skompresowany w pamięci, jeśli celujesz w WebGL)

Format kompresji: Vorbis

(Z dokumentacji Unity) Vorbis/MP3: W wyniku kompresji powstają mniejsze pliki, ale o nieco niższej jakości w porównaniu z dźwiękiem PCM. Stopień kompresji można skonfigurować za pomocą suwaka Jakość. Ten format najlepiej sprawdza się w przypadku średniej długości efektów dźwiękowych i muzyki.