Звук и музыка в играх — FMOD и Wwise
В учебном прототипе достаточно playSound("jump.wav"). В коммерческой игре звук — система: музыка меняется по зонам, шаги зависят от поверхности, голоса распределяются по bus и priority, 3D-позиционирование работает одинаково на PC и консолях. Для этого используют аудиодвижки (audio middleware) — чаще всего FMOD Studio (Firelight Technologies) или Wwise (Audiokinetic).
Базовая теория сэмплов, громкости и форматов — Аудио. Интеграция с движками — Unity, Unreal Engine, первая 2D-игра на Godot. Оптимизация памяти и CPU — Оптимизация игр.
Словарь
- Middleware — промежуточный слой между игрой и файлами звука; настраивает логику без правок кода.
- Event (событие) — логическое действие в проекте middleware:
Play_Footstep,Music_Combat,UI_Click. - Parameter (RTPC) — число из игры (скорость, здоровье, опасность), влияющее на громкость, фильтр, pitch или слой музыки.
- Bank / SoundBank — пакет сжатых звуков для загрузки (Menu, Level_01, Localization_RU).
- Bus / Mixer — группы SFX, Music, Voice, Ambience с общей громкостью и эффектами.
- 3D Event — звук привязан к позиции объекта в мире с затуханием и панорамированием.
- Stem — отдельная дорожка микса (барабаны, мелодия, бас, атмосфера).
- Snapshot — временное изменение микшера (прицеливание приглушает музыку).
- Loop region — зацикленный фрагмент внутри события без щелчка на стыке.
- Multi-instrument — случайный выбор одного из нескольких клипов (вариативность шагов).
- Scatterer — генератор множества однотипных звуков (дождь, листья, толпа).
- Sidechain — автоматическое приглушение музыки при голосе диктора.
- Streaming — воспроизведение длинного трека с диска, а не из RAM.
- Voice pool — лимит одновременно играющих звуков на платформе.
- Attenuation curve — кривая громкости от расстояния до слушателя.
- Occlusion / Obstruction — фильтрация звука за стеной или через щель.
- Localization table — таблица языковых вариантов диалогов в Wwise.
- MetaSounds — нативная аудиосистема Unreal Engine 5, альтернатива middleware.
Ограничения прямого вызова файлов
Прямой вызов WAV/OGG из кода плохо масштабируется:
- десятки звуков превращаются в хаос путей, громкостей и дублирования логики;
- резкая смена музыки без кроссфейдов и без синхронизации по такту;
- 3D-панорамирование, doppler и затухание по дистанции требуют ручной математики;
- разные платформы (PC, Switch, мобилка) из одного проекта без пересборки банков;
- sound designer правит логику без перекомпиляции игры и без доступа к C++ или C#;
- нет централизованного микшера, sidechain и ducking для диалогов;
- QA не может A/B-тестировать варианты без участия программиста.
Middleware решает это разделением ролей: программист вызывает событие и передаёт параметры, sound designer настраивает содержимое события в визуальном редакторе.
FMOD Studio и Wwise — сравнение инструментов
| Критерий | FMOD Studio | Wwise | MetaSounds (UE5) |
|---|---|---|---|
| Лицензия | Indie до $200k/год бесплатно | Indie до $250k/год бесплатно | Входит в Unreal |
| Файл проекта | .fspro | .wproj | .uasset |
| Сборка | Banks (.bank) | SoundBanks (.bnk) | Cook при сборке UE |
| Unity | Официальный плагин FMOD for Unity | Audiokinetic Unity Integration | — |
| Unreal | Плагин FMOD | Плагин Wwise | Нативно |
| Godot | Сообщество (fmod-gdextension) | Через C# / GDExtension | — |
| Музыкальные инструменты | Сильные (timeline, markers) | Сильные (Music Switch, segments) | Модульные ноды |
| Локализация голоса | Через events + banks | Таблицы, Switch containers | Ручная логика |
| AAA-примеры | Hollow Knight, Celeste, INSIDE | The Last of Us, Halo, Cyberpunk | Fortnite (частично) |
| Кривая обучения | Быстрый старт | Больше концепций, глубже | Требует знания UE |
| Профайлер | FMOD Studio + Unity Profiler | Wwise Profiler, SoundCaster | Unreal Audio Insights |
Выбор часто диктует студия, контракт или legacy-проект. Для инди подходят оба middleware. Документация: FMOD, Wwise.
Лицензирование
FMOD
- Indie — бесплатно при gross revenue до $200 000 в год; полный функционал Studio и runtime.
- Basic / Premium / Enterprise — для студий выше порога; Enterprise включает консольные платформы и поддержку.
- Консольные devkit (PlayStation, Xbox, Nintendo) требуют отдельных соглашений с Firelight и платформодержателем.
Wwise
- Indie — бесплатно до $250 000 gross revenue; полный Wwise без watermark.
- Pro / Premium — для крупных студий; Premium включает приоритетную поддержку и дополнительные платформы.
- Лицензия на runtime распространяется на конечный продукт, не на middleware в других продуктах.
Практика для инди
- Учитывайте gross revenue всей компании, не одной игры.
- Заложите middleware в бюджет до выхода на порог.
- Храните
.fspro/.wprojв Git; банки — артефакты CI или LFS. - Уточняйте лицензию на музыку отдельно (SYNC, mechanical rights) — middleware не решает авторское право.
Полный пайплайн от записи до релиза
1. Pre-production
- Sound designer участвует в гейм-дизайне: какие состояния игры, какие параметры нужны (здоровье, биом, время суток).
- Составляется audio style guide: громкость UI относительно SFX, длина crossfade музыки, политика голоса (ducking на −6 dB).
- Выбор middleware и версии SDK под целевые платформы.
2. Production в DAW и middleware
- Запись и монтаж в Reaper, Pro Tools, Logic; экспорт stems и one-shots.
- Импорт в FMOD Studio или Wwise; создание Events, Instruments, Mixers.
- Настройка RTPC, Snapshots, 3D attenuation, randomization.
3. Интеграция с движком
- Установка плагина или GDExtension.
- Генерация C# / C++ stubs (EventReference, AkAudioEvent).
- Привязка событий к анимациям, триггерам, UI-кнопкам.
- Передача параметров из gameplay-кода.
4. Platform banks
- Отдельные банки или варианты сжатия под PC (Vorbis), консоль (hardware codec), мобилку (низкий bitrate).
- Streaming banks для музыки и длинных ambience.
- Master bank + strings bank (Wwise) или Master + Master.strings (FMOD).
5. QA и профилирование
- Проверка voice count, RAM, latency первого воспроизведения.
- Тест на TV, наушниках, моно-динамике ноутбука.
- Regression при смене банков — Тестирование игр.
6. Live-ops и патчи
- Hotfix банков без пересборки exe (если архитектура позволяет).
- Сезонный контент — новые banks в DLC.
- Версионирование events: не переименовывать без миграции кода.
Роли в команде — Команда разработки.
Паттерны проектирования событий (Event Design)
One-shot SFX
- Короткие звуки: прыжок, выстрел, клик UI.
- Multi-instrument с 3–5 вариантами одного действия снижает усталость от повтора.
- Cooldown или priority: не играть два
Footstepв один кадр.
Looping ambience
- Фоновый ветер, гул города — loop region 30–120 сек с crossfade внутри.
- Параметр
TimeOfDayпереключает ночной/дневной слой без остановки bus.
Stateful events
- Дверь:
Open_Start→ loopOpen_Loop→Open_End; состояние держит instance, не one-shot. - Мотор транспорта: RPM как RTPC, pitch и слой двигателя связаны с параметром.
Nested logic (FMOD) / Switch containers (Wwise)
Footstep→ switch поSurface(Concrete, Grass, Metal, Water).Weapon_Fire→ switch поWeaponType+ random container для вариантов.
Global vs 2D vs 3D
- 2D — UI, музыка меню, stinger без позиции.
- 3D — объекты в мире с attenuation.
- Global — pause snapshot, master mute, cutscene ducking.
Priority и stealing
- Голос и диалог — высший priority; ambient — низкий, первым вытесняется при нехватке voices.
- Настройка max instances на event (
Footstepmax 4).
Markers и callbacks
- Music timeline: marker
Bar_32→ код спавнит врага синхронно с битом. - FMOD:
StudioEventEmitter+ callback; Wwise:AkCallbackManager.
Интерактивные музыкальные системы
Vertical layering
- Базовый слой (pad) всегда играет; при
Threat > 0.5добавляются percussion и bass. - Плавное fade-in слоя 0.5–2 сек, чтобы избежать щелчка.
- Пример: DOOM (2016), многие action-игры.
Horizontal resequencing
- Композиция разбита на intro → verse → chorus → bridge с переходами по marker или game state.
- Wwise Music Switch Container; FMOD Timeline с transition markers.
- Цель — музыка реагирует на геймплей вместо одного зацикленного MP3 на четыре минуты.
Stems и adaptive score
- Отдельные stems (strings, drums, synth) в одном event или linked events.
- Параметр
Intensity0–100 управляет громкостью каждого stem. - Экспорт из DAW: один multitrack project → N wav stems.
Diegetic vs non-diegetic
- Diegetic — радио в мире, 3D источник, может быть заглушено snapshot.
- Non-diegetic — score поверх геймплея; отдельный bus с ducking при диалоге.
Silence as design
- Полное отключение музыки в stealth повышает напряжение; параметр
StealthModeглушит Music bus на −∞ с коротким release.
3D-аудио и пространственный звук
Attenuation
- Min distance — полная громкость; max distance — silence.
- Logarithmic curve ближе к реальности, linear проще для arcade.
- Передача позиции listener (камера) и emitter (объект) каждый кадр или при движении.
Panning и HRTF
- Стерео pan для TV; HRTF (head-related transfer function) для наушников — ощущение высоты и направления.
- FMOD 3D Pan Level; Wwise 3D User-defined positioning.
- На консолях — platform 3D audio (PS5 3D Audio, Xbox Spatial Sound).
Doppler
- Смещение pitch при быстром движении источника (сирена, пролетающий самолёт).
- Умеренный scale — иначе cartoon effect.
Occlusion и obstruction
- Obstruction — звук через стену (low-pass filter).
- Occlusion — полная блокировка line-of-sight.
- Raycast из listener к emitter → RTPC
Occlusion0–1; middleware применяет EQ.
Reverb zones
- Trigger volumes задают snapshot или aux send (cave, cathedral, small room).
- Wwise Aux Bus; FMOD Return track + snapshot.
Large worlds
- Обновление 3D позиции только для audible events (внутри max distance).
- Virtual voice — логика работает, звук не микшируется, экономия CPU.
Platform banks и сборка
Структура банков
- Master — строки, общие UI, системные события.
- Menu — музыка и SFX главного меню; грузится при старте.
- Level_XX — контент уровня; load при loading screen, unload при выходе.
- Localization_XX — голоса по языку; подгрузка по системной локали.
Сжатие по платформам
| Платформа | Типичный формат | Заметки |
|---|---|---|
| PC | Vorbis / Opus | Баланс качества и размера |
| PlayStation | ATRAC9 / hardware | Требования Sony |
| Xbox | XMA / xWMA | Требования Microsoft |
| Switch | ADPCM | Ограниченная RAM |
| Mobile | Vorbis низкий bitrate | Streaming обязателен для музыки |
Memory budget
- Задайте лимит RAM на аудио (например Switch 64–128 MB).
- Profiling: FMOD Memory tab, Wwise SoundBank Editor estimated size.
- Split large VO banks по главам.
CI/CD
- Headless build banks из командной строки (
fmod build/WwiseConsole). - Артефакты в pipeline; hash для cache invalidation.
- Не коммитить банки без LFS при размере > 100 MB.
Интеграция с Unity
Установка
- Скачать FMOD for Unity или Wwise Unity Integration с сайта vendor.
- Import package; указать путь к
.fspro/.wproj. - Build banks в Studio; Refresh Banks в Unity editor.
- Добавить
StudioListenerна камеру,StudioEventEmitterна объекты.
Код (FMOD)
using FMODUnity;
using FMOD.Studio;
public class PlayerAudio : MonoBehaviour
{
public EventReference jumpEvent;
public EventReference footstepsEvent;
private EventInstance footstepInstance;
void Start()
{
footstepInstance = RuntimeManager.CreateInstance(footstepsEvent);
footstepInstance.set3DAttributes(RuntimeUtils.To3DAttributes(transform));
}
void Update()
{
footstepInstance.setParameterByName("Speed", rb.velocity.magnitude);
footstepInstance.setParameterByName("Surface", surfaceIndex);
}
public void PlayJump()
{
RuntimeManager.PlayOneShot(jumpEvent, transform.position);
}
void OnDestroy()
{
footstepInstance.release();
}
}
Код (Wwise)
using AkSoundEngine;
public class PlayerAudioWwise : MonoBehaviour
{
public AK.Wwise.Event JumpEvent;
public AK.Wwise.RTPC SpeedRTPC;
public AK.Wwise.Switch SurfaceSwitch;
public void PlayJump()
{
JumpEvent.Post(gameObject);
}
public void SetSurface(string surface)
{
SurfaceSwitch.SetValue(gameObject);
}
void Update()
{
SpeedRTPC.SetValue(gameObject, rb.velocity.magnitude);
}
}
Addressables и загрузка
- Banks как Addressable groups;
LoadBankпри входе в уровень,UnloadBankпри выходе. - Избегайте двойной загрузки Master bank.
Подробнее о Unity — глава 3, справочник 301.
Интеграция с Unreal Engine
Wwise (типичный AAA-путь)
- Установить Wwise Launcher и UE plugin matching version.
- Generate SoundBanks; положить в
Content/WwiseAudio. - Использовать
AkAudioEvent,AkComponent,Post Associated Ak Eventв Blueprint. - RTPC и Switch через
Set RTPC Value,Set Switch.
FMOD в Unreal
- Plugin FMOD Studio в
Plugins/. UFMODAudioComponent,Play Eventна Actor.- Blueprint nodes для parameters и 3D attributes.
MetaSounds (альтернатива)
- Нативные ноды UE5; хорошо для procedural SFX без лицензии middleware.
- Слабее для больших VO и music pipelines с десятками часов контента.
- Комбинация: MetaSounds для оружия, Wwise для диалогов и музыки — встречается в AA-проектах.
Подробнее — Unreal Engine, справочник 401.
Интеграция с Godot
FMOD GDExtension
- Скачать fmod-gdextension под версию Godot 4.
- Положить banks в
res://audio/banks/. - Инициализация в autoload;
FmodServer.load_bank. create_event_instance("event:/SFX/Jump"),start(),release().
# Godot 4 + FMOD (псевдо-API сообщества)
extends CharacterBody2D
@export var jump_event: String = "event:/Player/Jump"
func _ready():
FmodServer.load_bank("res://audio/banks/Master.bank", FmodServer.FMOD_STUDIO_LOAD_BANK_NORMAL)
func jump():
var inst = FmodServer.create_event_instance(jump_event)
inst.set_parameter_by_name("Surface", surface_id)
inst.start()
inst.release()
Wwise в Godot
- Официального плагина нет; интеграция через C++ module или GDExtension с Wwise SDK.
- Для инди на Godot чаще выбирают FMOD или встроенный
AudioStreamPlayer.
Практика — первая 2D-игра.
Оптимизация аудио
RAM
- Streaming для музыки > 30 сек и длинных ambience.
- Decompress at load только для коротких SFX на Switch.
- Unload banks уровней агрессивно при open world streaming.
CPU
- Лимит voices (32–128 в зависимости от платформы).
- Virtualize distant 3D events.
- Сжатие без lossless для SFX; quality tier в настройках игры.
Latency
- Preload bank на loading screen до первого
Play. - Async load bank; не блокировать main thread.
- Warm-up: тихий play при старте уровня (platform-specific).
Disk I/O
- Pack banks в PAK; SSD на PC, картридж на Switch — разные стратегии prefetch.
Battery (mobile)
- Меньше одновременных 3D sources; mono mix option.
См. Оптимизация игр.
Роль sound designer в команде
Обязанности
- Audio style guide и технические лимиты с audio programmer.
- Создание и поддержка middleware-проекта.
- Работа с composer, VO director, локализацией.
- Playtest сессии: читаемость mix, не перекрывает ли музыка диалог.
- Документация events и parameters для программистов.
Взаимодействие с программистом
- Контракт API: список events, RTPC, допустимые диапазоны.
- Code review на hardcoded paths к wav — запрет.
- Совместный debug: FMOD/Wwise profiler + in-game visualization.
Метрики качества
- LUFS целевой для Music / SFX / Voice (например Voice −16, Music −20).
- Нет clipping на master bus.
- Субтитры синхронизированы с VO (см. доступность).
Кейсы — инди и AAA
Hollow Knight (инди, FMOD)
- Компактная команда; FMOD за гибкость музыки и SFX.
- Богатый 2D soundscape с 3D pan на boss arenas.
- Урок: ранняя интеграция middleware, не post-mortem добавление.
Celeste (инди, FMOD)
- Тight feedback: каждый dash и grab с distinct SFX.
- Музыкальные layers реагируют на прогресс уровня.
- Урок: parameter-driven design снижает количество уникальных events.
INSIDE / Limbo (Playdead, FMOD)
- Минимализм и spatial storytelling; звук как narrative.
- Sidechain и silence как инструменты.
The Last of Us Part II (AAA, Wwise)
- Тысячи events, глубокая локализация VO.
- Wwise Switch containers для поверхностей, оружия, эмоций.
- Occlusion и stealth audio критичны для геймплея.
Halo Infinite (AAA, Wwise)
- Масштабный multiplayer mix; priority и bus architecture.
- Spatial audio на консолях через platform integration.
Cyberpunk 2077 (AAA, Wwise)
- Dense urban ambience, radio diegetic music.
- Streaming и bank splitting для open world.
Путь обучения
Неделя 1–2 — основы
- Пройти официальный FMOD Studio Tutorial или Wwise 101.
- Понять Event, Parameter, Bank, 3D attenuation.
- Сделать 5 one-shot SFX с randomization.
Неделя 3–4 — музыка
- Vertical layering на одном loop track.
- Marker callback в тестовой Unity-сцене.
- Прочитать Аудио.
Месяц 2 — интеграция
- Полный mini-project: menu + один уровень + 2 banks.
- Profiler: RAM и voices на target platform build.
- Code review с gameplay programmer.
Месяц 3+ — продакшен
- Occlusion, snapshots, localization bank.
- Участие в playtest.
- Изучение чужих GDC talks (Halo audio, DOOM music).
Ресурсы
- FMOD Learn
- Audiokinetic Academy
- GDC Vault: audio middleware postmortems
- Discord: FMOD, Wwise official communities
Дополнительные паттерны событий
Blending containers (Wwise) и nested events (FMOD)
- Crossfade между
Music_ExploreиMusic_Combatчерез transition matrix с min 2 sec overlap. - Blend track в FMOD Timeline: automation curves на layer volume.
- Avoid hard stop всех layers — оставьте tail reverb на aux.
Randomization без раздражения
- Randomize pitch ±3 semitones для шагов; ±12 для cartoon SFX.
- Randomize volume ±2 dB; выше — mix нестабилен.
- Shuffle bag: не повторять один клип дважды подряд из pool 5.
Dialogue и VO pipeline
- Record 44.1 kHz 24-bit → middleware import → compression per platform.
- Random container для battle barks с cooldown global 3 sec.
- Lip-sync markers export в animation tool (wwise lipsync, faceware).
UI audio hierarchy
- Separate bus
UIс limiter −1 dBTP; не duck от Music. - Hover quiet (−12 dB от confirm); error stinger короткий < 300 ms.
Multiplayer spatial audio
- Server authoritative position для 3D events или client predict с reconcile.
- Voice chat ducking через sidechain отдельно от game VO.
Пошаговая интеграция Unity (чек-лист)
- Window → FMOD → Edit Settings → Scripting Backend compatible.
- Assign Studio Project Path; Build на каждую платформу в Build folder.
- Copy banks to
Assets/StreamingAssetsили Addressables groupAudioBanks. RuntimeManager.StudioSystem.update()автоматически; listener на Main Camera.- EventReference через inspector dropdown после Refresh Banks.
- Build player: verify banks in log
[FMOD] Loaded bank Master. - Profiler: Memory → Audio; Voices count during combat peak.
Unreal Wwise аналог: Project Settings → Wwise → SoundBank path Content/WwiseAudio.
Пошаговая интеграция Unreal (Wwise)
- Audiokinetic Launcher → integrate UE 5.x plugin version match.
- Generate SoundBanks for Windows; commit
.bnk+.jsonили CI rebuild. - Place
AkAudioVolumeдля reverb zones. - Blueprint:
AkGameplayStatics.PostEventon Actor spawn. AkReverbVolume+ aux busCave_Reverb.- Packaging: include
WwiseAudioin staged build; cook log без missing events.
Пошаговая интеграция Godot 4 (FMOD)
- Download GDExtension release for Godot 4.2+ matching platform.
- Enable plugin in Project Settings; banks in
res://StreamingAssets/. - Autoload
FmodServerinit in_readyof bootstrap scene. - Replace
AudioStreamPlayercalls gradually; keep fallback for jam builds. - Export templates: include
.bankfiles in PCK.
Сравнение лицензий и TCO
| Статья | FMOD Indie | Wwise Indie |
|---|---|---|
| Порог revenue | $200k gross | $250k gross |
| Консоли | Отдельный tier | Отдельный tier |
| Support | Forum + docs | Forum + Academy |
| Обучение | 2–4 недели база | 3–6 недель база |
| Hiring pool | Широкий в indie | Широкий в AAA |
TCO включает время audio programmer на integration (40–120 часов первый проект).
Аудиопайплайн и DAW export
Форматы handoff
- SFX one-shots: WAV 48 kHz 24-bit mono/stereo; trim silence heads/tails.
- Music stems: synchronized start bar 0; same BPM metadata in filename.
- VO: 44.1 kHz mono; room tone separate track for seamless edits.
Naming convention
SFX_Player_Footstep_Concrete_01.wav
MUS_Combat_Drums_Stem.wav
VO_NPC_Anna_Line042_RU.wav
Loudness targets (guideline)
- SFX peaks −6 dBFS in source; final mix on bus with limiter.
- Voice normalized −16 LUFS integrated per platform spec variance.
- Music −20 to −24 LUFS under voice; sidechain 3–6 dB duck.
Version control
- Middleware project in Git; binary wav in LFS or Perforce.
- Changelog per event when renaming breaks code contract.
FAQ
Нужен ли middleware для jam-проекта? Нет. Встроенного audio движка достаточно на 48 часов.
FMOD или Wwise для первой коммерческой игры? Оба подходят. FMOD часто быстрее войти; Wwise силён при большом VO.
Можно ли сменить middleware mid-project? Дорого: переимпорт assets, переписать интеграцию. Решайте на pre-production.
Где хранить WAV — в Git? Исходники — LFS или Perforce; в Git middleware project + generated banks по политике студии.
Кто владеет .fspro — программист или sound designer?
Sound designer владеет проектом; программист — integration layer.
Сколько events на инди-игру? 50–300 типично; AAA — тысячи.
Что такое Master.strings.bank? Банк имён events для lookup; обязателен в FMOD.
Как тестировать 3D audio без наушников? Surround setup или симуляция HRTF; обязательно TV stereo pass.
Музыка щёлкает на loop? Проверьте zero-crossing, loop region в middleware, не raw wav loop в коде.
Как ducking музыки при диалоге?
Sidechain на Voice bus или snapshot Dialogue с −6 dB на Music.
Post Event vs Play One Shot? One shot fire-and-forget; Post Event держит instance для RTPC и stop.
Максимум instances Footstep? 4–8; выше — mud mix и CPU.
Switch или RTPC для поверхности? Switch для дискретных типов; RTPC для плавных (скорость, RPM).
Как синхронизировать музыку с gameplay? Timeline markers + callbacks; или beat grid в Wwise Music.
Работает ли FMOD в WebGL? Ограниченно; часто Web Audio API без полного middleware.
Нужен ли audio programmer? На инди sound designer + один programmer; AAA — dedicated audio programmer.
Как версионировать banks? Semver в CI artifact name; hash в manifest игры.
Что если bank load failed? Fallback silence + log; не crash; retry async.
MetaSounds заменит Wwise? Для UE-only проектов возможно; для cross-title pipeline — редко.
Как локализовать VO?
Отдельные banks или switch по Language; Wwise excel pipeline.
Лицензия FMOD после превышения порога? Связаться с sales; до обновления лицензии продолжайте по условиям договора.
Где учить mixing для игр? Wwise/FMOD docs + Game Audio Mixing GDC + практика на референсах.
Как debug missing event? FMOD Live Update; Wwise SoundCaster solo event; check bank load list in log.
Adaptive music при pause? Pause snapshot freezes RTPC or suspend music timeline; resume sync from bar.
VO ducking при explosion SFX? Sidechain compressor on Voice bus triggered by SFX transient send.
FMOD Studio vs FMOD Core API? Studio — designer tool; Core API low-level without events — редко в indie.
Wwise Authoring vs SoundFrame legacy? Modern Wwise unified; ignore deprecated SoundFrame docs.
Godot без FMOD? Built-in AudioStreamPlayer OK для small scope; middleware при >50 events.
Split screen audio? Two listeners or manual pan per player; middleware listener count limits check.
Ray tracing audio? Experimental niche; occlusion RTPC from game raycast standard approach.
Bank encryption? Possible for anti-leak; adds load CPU; rare except competitive titles.
См. также
- Аудио
- Разработка на Unity, Unreal Engine, первая 2D-игра
- Команда разработки — роль sound designer
- Оптимизация игр
- Игровая доступность — субтитры и звуковые индикаторы
- Гейм-дизайн
- Тестирование игр