Ви повинні робити жертви, ви не можете мати однакове занурення, коли деякі звуки не повинні чути всі гравці. Деякі двигуни вбудували рішення цієї проблеми ( приклад ), але я не зміг знайти жодної інформації про спосіб її роботи.
Використовуйте стерео, щоб розділити звук
(ідея wiz3kid у коментарях)
Якщо екран розділений вертикально, ви можете керувати різними звуками, які відтворюються збоку належного програвача. Це було описано тут (Use Case 1).
У цьому прикладі звуки ослаблені на -96dB з іншого боку, що еквівалентно вимкненню. (Якщо мій аналіз є правильним, -96,3 дБ - це поділ на 15 мільйонів). Я думаю, що це не повинно бути таким жорстоким. Якщо ви відтворюєте кожен звук здебільшого на стороні програвача, який повинен їх почути, гравці зможуть відрізнити звук, що виходить від їх половини чи ні, і все одно буде трохи стерео.
Це найкраще працює, коли є лише два гравці, але у випадку 4 гравців ви можете комбінувати звуки від програвачів вертикально, щоб використовувати той самий метод.
Виберіть відтворені звуки
Я думаю, що ефект какофонії виникає від тривалих звуків. Наприклад, у маріо карти, гучність дрейфуючого звуку дуже низька порівняно зі звуком під час вибору предмета. Звук гри може здатися безладним, але це не стільки з урахуванням звуків, які відтворюються. Це може бути легко непізнати.
Тому рішенням може бути фільтрація довгих або повторюваних звуків дуже часто. Пом'якшуючи загальний шум, важливіші звуки будуть легше розрізнити. Я не думаю, що гравцеві є проблемою чути звуки, які він не повинен чути, поки він може легко чути важливі для нього звуки.
Відносно найближчого гравця
У цій темі вони погоджуються, що звуки повинні відтворюватися один раз (не один раз для кожного гравця) відносно найбільш зацікавленого гравця, наприклад, найближчого.
Точка зору Тінуса
Посилання
Я його не знаю, але він робить плагін об'єднання для обробки розділеного звуку на екрані. Він пояснює метод, яким він би користувався на одному зі своїх постів. Я не знаю, чи це правильний підхід, оскільки я не розумію більшості його.
Спочатку перейдіть до наївного підходу, просто накладіть точки зору прослуховування та відправте їх на стереовипуск. Це не спрацює із слухово напруженими іграми, але є також безліч ігор, для яких це повинно бути добре.
Далі введіть додаткові інструменти, за допомогою яких можна краще контролювати суміш. Як ви будете використовувати їх, залежить від гри, яку ви робите, і як ви думаєте, що це має звучати, але є деякі можливі загальні моделі. З верхньої частини голови:
Компресор / обмежувач / Побічні ефекти на слухачів і стереовиходи. Досить важко уберегти слухові щільні ігри Unity від відсікання, не кажучи вже про те, коли ви додаєте декількох слухачів до суміші. Простий компресор в кінці ланцюга сигналів не був би елегантним рішенням цієї проблеми, але це було б швидким вирішенням. Я можу спробувати свої сили в реалізації компонента Compressor, використовуючи OnAudioFilterRead.
Звук високого динамічного діапазону Нові записи серії Battlefield використовують це з великим ефектом. Знову ж таки, це не чарівна куля, яка автоматично виліковує вашу суміш. Але парадигма HDR здається потужним інструментом для організації густих та дуже динамічних сумішей. Таким чином, елегантно обробляються вилучення та визначення пріоритетів, що, без сумніву, стане в нагоді і для налаштувань спліц-екрану. Застереження: DICE використовує спеціальне програмне забезпечення (не впевнений, чи FMOD може бути присяжним для цього), а вимоги до створення аудіо-активів стають більш високими.
Дозвольте виконавцям звуку визначати пріоритети звуків та мати якийсь мікшер, який керує пріоритетом звуку між слухачами. Якщо гравцеві 2 справді справді потрібно почути цю ракету, яка ось-ось вдарить його, можливо, ви можете приглушити звук гравця 1.