Настройки импорта аудиоклипов Unity для лучшей производительности

Аудио вход Unity оказывает большое влияние на производительность, а неправильные настройки импорта могут резко снизить частоту кадров, поэтому важно помнить об этом при импорте аудиоклипов в проект.

Обычно есть 3 типа звуков: те, которые воспроизводятся часто, периодически, и звуки окружающей среды.

Для каждого типа требуются определенные настройки импорта для достижения наилучшей производительности.

Например, в моем проекте у меня есть 3 sounds с разным назначением, и как вы можете видеть, все они имеют настройки импорта по умолчанию, которые подходят не для каждого типа звука.

1. Часто воспроизводимые звуки

Звуки, которые воспроизводятся в большом количестве (например, звуки оружия, шаги, звуки ударов и т. д.).

Лучше всего работать со следующими настройками (также подходит для коротких звуков продолжительностью менее 10 секунд):

Тип загрузки: Распаковка при загрузке

Формат сжатия: ADPCM

(Из документации Unity) Распаковка при загрузке: аудиофайлы будут распакованы сразу после загрузки. Используйте эту опцию для небольших сжатых звуков, чтобы избежать снижения производительности при распаковке на лету. Имейте в виду, что распаковка звуков, закодированных в Vorbis, при загрузке будет использовать примерно в десять раз больше памяти, чем сохранение их в сжатом виде (для кодирования ADPCM это примерно в 3,5 раза), поэтому не используйте эту опцию для больших файлов.

(Из документации Unity) ADPCM: Этот формат полезен для звуков, которые содержат немало шума и должны воспроизводиться в больших количествах, например, шаги, удары, оружие. Степень сжатия в 3,5 раза меньше, чем у PCM, но загрузка ЦП намного ниже, чем у форматов MP3/Vorbis, что делает его предпочтительным выбором для вышеупомянутых категорий звуков.

2. Периодические или редкие воспроизводимые звуки

Звуки, которые не нужно воспроизводить часто, например, голос диктора в начале раунда, звук таймера в начале гоночной игры или вообще любой звук длительностью более 10 секунд, но менее 1 минута.

Тип загрузки: Сжатый в памяти

Формат сжатия: ADPCM

(Из документации Unity) Сжатие в памяти: сохраняет звуки сжатыми в памяти и распаковывает их во время воспроизведения. Эта опция имеет небольшое снижение производительности (особенно для файлов, сжатых Ogg/Vorbis), поэтому используйте ее только для файлов большего размера, для которых распаковка при загрузке потребует слишком много памяти. Распаковка происходит в потоке микшера и ее можно отслеживать в разделе "DSP CPU" на звуковой панели окна профилировщика.

3. Фоновые/окружающие звуки

Фоновые/окружающие звуки длительностью более минуты.

Тип загрузки: Потоковая передача (или сжатие в памяти, если вы ориентируетесь на WebGL)

Формат сжатия: Vorbis

(Из документации Unity) Vorbis/MP3: В результате сжатия файлы получаются меньшего размера, но с несколько более низким качеством по сравнению со звуком PCM. Степень сжатия настраивается с помощью ползунка «Качество». Этот формат лучше всего подходит для звуковых эффектов и музыки средней длины.

Рекомендуемые статьи
Советы по оптимизации Unity
Unity оптимизирует вашу игру с помощью профайлера
Генератор рекламных щитов для Unity
Улучшение производительности мобильной игры в Unity
Как использовать обновление в Unity
Как создать мобильную игру в Unity
Фундаментальные концепции игрового дизайна