Здравствуйте, друзья ! В этом коротком посте я спешу поделиться с осенившей меня мыслью, касающейся формированию глубины 3D сцены. Прежде всего, хочу обратиться к звуковым инженерам, разработчикам видео-игр, был бы рад услышать Ваше экспертное мнение .
Как нам всем известно, окружающий нас звук обладает рядом параметров : основными из которых являются АЧХ источника, окружающая среда и направление. Уже существует множество технологий, позволяющих сэмулировать объёмный звук в наушниках . Есть ряд технологий различных компаний, в которых учитываются задержки между левым и правым ухом а так же изменения в АЧХ при различных положениях головы от источника звука . Но, отсутствует один , на мой взгляд, ключевой параметр, это задержка звука от источника до слушателя, то есть не учтено время за которое звуковая волна доходит от источника до слушателя. В основном мы слышим удалённый объект с меньшей громкостью, но без учёта той самой временной задержки . Конечно, необходим визуальный контакт, но как мне кажется, такие задержки добавят глубину сцены . Как Вы считаете ?
Комментарии (39)
iReedar
13.06.2022 15:16+1со всем уважением ) сама тема имеет право на обсуждение, но
сила звука источника должна быть такой что бы не погаснуть из-за расстояния и остаться значимой для игрока-слушателя - много ли таких звуков?
звуковая картина в голове слушателя восстанавливается скорее по тем самым реверам и тд от окружения, если убрать их то для восстановления слушатель начинает крутить головой )
на расстоянии 100 м реального мира большинство объектов перестают быть истинно трехмерными - LOD, placeholders и тд посему это доп работа по восстановлению того, что было спецом отрезано
в кино уже давно существует глубина резкости, но операторов которые используют их так, что это дает художественный эффект на зрителя единицы. имхо здесь так же - попытка переложить на алгоритмы художественную работу - стоит ли?
производители игровых движков, AAA тайтлов, игрового звука довольно внимательны к звуку и 3d звуку в частности и думаю не просто так приходят к компромисам.
в игре задача не воссоздать реальность, а произвести художественный эффект на зрителя-слушателя-игрока, а это все-таки в большей степени сродни искусству нежели инженерии
3DSound Автор
13.06.2022 15:22Не совсем с вами согласен. Да в играх присутствует художественная часть, та же музыка, создающая атмосферу. А объёмный звук, именно качественный объём, позволяет нырнуть в игру с головой, не говоря уже об актуальности чёткой позиции в шутерах . 100 метровое расстояние - грубый пример, в основном, конечно это объекты ближнего поля.
Я хочу донести свою основную идею - формирование глубины сцены за счёт задержек и более точных значений амплитуды .
iReedar
13.06.2022 15:53+2так и понял ваш посыл, но не согласен )
Цитата из описания психоакустической модели восприятия
https://dic.academic.ru/dic.nsf/ruwiki/1109512
"Человеческий слух во многом подобен спектральному анализатору, то есть, ухо распознаёт спектральный состав звуковых волн без анализа фазы волны. В реальности фазовая информация распознаётся и очень важна для направленного восприятия звука, но эту функцию выполняют ответственные за обработку звука отделы головного мозга. Разница между фазами звуковых волн приходящих на правое и левое ухо позволяет определять направление на источник звука, причём информация о разности фаз имеет первостепенное значение, в отличие от изменения громкости звука воспринимаемого разными ушами. Эффект фильтрации передаточных функций головы также играет вэтом важную роль."
сорри - копи-паста как-то странно сработала )
PS - а вообще можно даже попробовать сделать сцену по вашему рисунку на стандартном движке (например Unity) и с вашими предложениями (костылями какими-нибудь) и послушать )
3DSound Автор
13.06.2022 17:25Да! Практический опыт лучше всяких теорий. Как только будет возможность, проведу такой эксперимент .Понадобится некая демо-сцена с различными звуковыми объектами и стерео наушники, либо созданный мной физический многоканал . Снова всё упирается в деньги, за просто так никто эксперементами заниматься не станет, а брать опять кредит на оплату работы программистов уже не выйдет ) .
Но я всё таки думаю, что разность по громкости задаёт направление источника, а разность фаз - глубину. Но оба эти параметра должны работать в совокупности .
iReedar
14.06.2022 12:14+2ну, если опишете на одном листе базовую сцену, я ее подниму в Unity на стандартном звуке с 3d настройками. (с заморочками майнкрафта в такой степени просто не знаком)
А ваши предложения распишите поподробнее - придумаю как сделать эти задержки.
так, что обойдемся без лишних трат пока )
Аудиотракт у меня старенький, но вполне приличный (AVID Mbox + ямаховские мониторы ближнего поля + высокоомные уши) так, что для начала хватит, а потом попросим кого-нибудь здесь провести слепой тест, для чистоты эксперимента )
Javian
14.06.2022 06:07Думаю Minecraft был бы лучше. Удобнее рассчитывать отражения от только вертикальных и горизонтальных поверхностей. Возможность модифицировать сцену изнутри строя стенки и препятствия. И наконец - популярность. даже в альфа версии могут найтись массовые поклонники идеи, что может привести к развитию идеи сообществом.
Zvukodoc
14.06.2022 08:30+2На экспертное мнение разумеется не претендую, но в силу того, что по роду деятельности близок к звукорежиссуре в студии и на концертах, кое-какими мыслями из собственного опыта всё же рискну поделиться (не побоявшись даже зарегистрироваться после многолетнего чтения ресурса). Задержки в этом деле вещь достаточно важная, а возможно и действительно в определённой степени решающая для создания той самой "глубины звуковой сцены" (правда это как-то по аудиофильски, а по звукорежиссёрски это скорее будет "создание звуковых планов") при записи и микшировании музыкальных фонограмм. При многоканальной записи как акустических инструментов отдельно, так и музыкальных коллективов целиком как правило используются несколько микрофонов (или групп микрофонов), расположенных на разных расстояниях от источника звука. Для примера три условных плана: ближний план (т.н. подсветочные микрофоны), средний план (микрофоны ближе или в районе т.н. радиуса гулкости помещения), и дальний план (микрофоны за границей радиуса гулкости). В процессе микширования выстраивается некая комбинация из имеющихся планов для достижения максимальной естественности звучания, при этом ключевой характеристикой имеющей в своём составе ту самую глубину или плановость. По сути это использование естественной реверберации помещений записи. Вся эта история весьма жанровозависима и подвержена определённой вкусовщине, имеется очень много различных методик и подходов, как и в любом подобном творческом процессе. Также очень широко используется (а по факту - чуть менее чем везде) и искусственная реверберация и задержка, а во многих жанрах популярной музыки - только она и используется, а естественной реверберации при записи может и вовсе практически не быть. При этом запись акустических инструментов и голосов ведётся только микрофонами ближнего плана в достаточно сильно заглушенном (а порой и переглушенном) помещении - влияние акустики помещения специально сводится к практически неслышимым значениям, а при сведении для создания пространства используются специальные электронные устройства - ревербераторы и дилеи, которые могут быть как цифровыми (в подавляющем большинстве случаев нынче), так и аналоговыми (это уже скорее артефакты истории). Так что в теории вы абсолютно правы - именно задержки (и реверберация как их совокупность) вкупе с прямым сигналом и дают 3D-звук.
Теперь же немного о практической стороне именно вашего вопроса (заранее извиняюсь, если какую ересь напишу - сам последний раз играл на спектруме ещё).
Думается мне, что не учитывается эта задержка исключительно из-за того, что игра - это вещь аудиовизуальная. Чтобы ощущать некое звуковое пространство именно в глубину - нужно слышать как прямой сигнал, так и отражённый - нужна некая точка отсчёта, относительно которой мозг это самое пространство для себя выстраивает. В противном случае никакого 3D не получится - будет просто некая плоская каша в случае реверберации, или как раз этот вот "тот же самый звук, только тише и с изменённой АЧХ" в случае задержки, если некие отражающие поверхности совсем отсутствуют (то самое чистое поле с травой, рассеивающей звук отразившийся от земли). Если в момент выстрела источник звука нам не виден - на такую задержку мозгу получается пофиг, ибо тупо не с чем сравнивать, вот мы и слышим по факту "то же самое". Если момент выстрела источник нам виден (в некий бинокль, например) и задержка явно ощутима (100 метров это грубо 300 миллисекунд, а ощущаться задержка именно как задержка начинает примерно с 8-9 миллисекунд для звуков с перкуссивным характером) - ну наверное да, с точки зрения физики всё более правильно, но всё равно это никакой не "3D-звук", а просто более точное моделирование реальности нашего мира в игре. Насколько это необходимо - ещё вопрос. Ведь оттого, что мы просто отодвинули аудио от видео на какое-то время - сам звук более тридешным не становится, не так ли? Тридешным он становится исключительно обогащаясь реверберацией и задержками того пространства, в котором распространяется, а не задержкой самого себя относительно слушателя.В общем случае пространство в игровых движках (насколько я это по дилетантски понимаю, ибо лично не сталкивался) также делается с помощью эффектов реверберации и дилеев, так что при желании всё вполне себе так же, как и в музыке. Практически у всех цифровых ревербераторов есть регулируемые параметры pre delay (причём иногда отдельно для ранних отражений и для позднего реверберационного хвоста), которые вполне себе несложно крутить в зависимости от местоположения источника звука. В общем случае берём самый простой дилей и отодвигаем что угодно и насколько нужно. В движках же есть возможность автоматизации параметров во времени и/или от событий? Вот только реально нужен ли в играх этот самый аудиовизуальный раскардаш? Мне кажется, это будет скорее мешать. Также есть подозрение, что все эти тонкие задержки просто замаскируются фоновой музыкой и прочими SFX-ми, так или иначе присутствующими в играх. Про безэховую камеру не понял, простите - шутер в таком помещении это как минимум странно... Короче говоря, если бы всё это имело сколь-либо критичное значение - наверняка бы в движках всё это было. А если нет - значит либо овчинка выделки не стоит, либо и вовсе отрицательно повлияет на успешность игры.
3DSound Автор
14.06.2022 08:57-1Спасибо за содержательное мнение. Безэховой камеры, конечно в играх нет, просто я привёл с ней пример чтобы показать, что современные звуковые движки не учитывают скорость распространения звуковой волны от объекта до слушателя, отсечь реверберацию от окружающего пространства и выделить разность фаз для левого и правого уха, при прямом звуковом контакте, для чёткого обозначения параметра глубины, который по моему предположению, формируется именно за счёт временной задержки, или фазового сдвига, плюс обязательный визуальный контакт. В большинстве случаев, задержки принимают разные значения для левого и правого уха, за исключением случаев, когда голова симметрична относительно источника .
Реверберация имеет прямое отношение к глубине, это безусловно так, но не все игровые сцены это закрытое помещение. На открытых пространствах, дальность ощущается только по громкости, которая так же зачастую не соответствует реалистичной .
И ещё одна важная деталь, которую я не упомянул в заголовке. Речь о глубине идёт в наушниках, а не внешней АС . И я думаю, добавление фазовых сдвигов, которые будут рассчитываться расстоянием между слушателем и источником звука , дадут эффект .
Zvukodoc
14.06.2022 14:40+1Мне кажется, что по поводу задержки и фазового сдвига тут возникает некоторая путаница. Да, суть явлений одна, но в аудио традиционно фазовый сдвиг - это как раз задержка, которая на слух таковой не является в силу своих малых величин. Проверил сейчас себя - начинаю различать задержку именно как задержку на перкуссионном источнике (семпл малого барабана) со значений 8-9 миллисекунд. На более плавных звуках без ярко выраженных перкуссионных атак (пэды, например) время увеличивается до 20-30 миллисекунд. Всё то, что менее 8-20 миллисекунд (зависит от характера самого звука) ощущается как эффекты фейзера (до 5мс, тут само название как бы намекает), фленджера (5-15 мс), хоруса (15-20 мс), но никак не задержки (дилея). Опять же ключевая мысль - все эффекты основанные на задержке и реверберации имеют место быть исключительно в совокупности с прямым сигналом, а также с использованием множественной задержки, когда сигнал с выхода подаётся обратно на вход (ПОС) и снова задерживается. Единичная задержка выше 20-30 миллисекунд ощущается именно как эхо (delay) и к фазовому сдвигу (именно к его специфическому звучанию!) отношения уже практически не имеет, из-за весьма слабой коррелированности исходного и задержанного сигналов. Также не следует забывать, что суммирование исходного сигнала и его не сильно задержанных копий в одной точке пространства вызывает ощутимый эффект гребенчатой фильтрации, звучащий зачастую весьма некрасиво. Все эти проблемы и пытаются по своему решать имеющиеся технологии 3d-звука (HRTF и прочие подобные). И наушники, и многоканальные системы воспроизведения, и задержки, и реверберация - всё это там используется в полной мере. Так что всё же не совсем понимаю что именно вы изобретаете - фейзер, фленджер, хорус, дилей, или всё вместе? И самое главное - зачем, ведь тут вроде бы всё уже придумано - и все эти x.1, x++.1, и прочие долби атмосы? Тот самый "15-й конкурирующий стандарт"?
iReedar
14.06.2022 17:07+1"все эффекты основанные на задержке и реверберации имеют место быть исключительно в совокупности с прямым сигналом"
имхо, вот суть немного ускользающая от топик стартера ) со всем уважением )
3DSound Автор
14.06.2022 21:03Вы когда слышите, скажем птичку на ветке, к вам звуковой сигнал моментально приходит или спустя время, за которое звук преодолеет дистанцию до вас ?
Абсолютно любой звук в реальном мире доходит до нас спустя какое-то время. И моя идея заключается в том, чтобы перенести такую модель в виртуальный мир, хотя бы смоделировать демку и посмотреть, что получится .
Другое дело, что мембрана динамиков не способна повторить звук, который мы слышим в реальности. Вот это я не учёл.
iReedar
14.06.2022 23:55+2до прихода прямого звука у меня нет никакого сигнала. тишина, даже не смотря на то что звук уже существует где-то
- потом приходит прямой сигнал с задержкой относительно реального времени его появления в среде (но у нас нет данных о том когда же он реально прозвучал)
- потом приходит сигнал отраженный окружением (с задержкой и искажениями вызванными окружением)
и именно сумма этих сигналов обработанная слуховой корой и позволяет распознать его направление и дальность3DSound Автор
15.06.2022 07:35Вы забыли про зрительный контакт, о котором я не раз писал, плюс, не забывайте о разнице в задержке сигнала от объекта между левым и правым ухом(которая определяется не расстоянием между ушей, а расстоянием от уха до объекта), что в свою очередь, так же задаёт глубину . И я думаю, эффект будет . В реальности,по крайней мере так работает.
Ну тут всплывает уже другая проблема. Сами динамики не отработают большое количество объектов да ещё с разных сторон с разными задержками, поэтому мою идею технически невозможно осуществить . И расстояние, как и глубину, остаётся выстраивать за счёт амплитуды .
Javian
15.06.2022 09:47Можно легко и быстро провести эксперимент. Встаньте перед двумя акустическими системами (динамиками), которые воспроизводят один и тот же сигнал. Т.е. например просто выведем на них синусоиду (например 800 Гц). И с закрытыми глазами вращаем головой.
Я в 2000х как-то сделал такой эксперимент - я не мог идентифицировать положение источника в пространстве. Хотя условия для сдвига фаз идеальные.
3DSound Автор
15.06.2022 10:50Да, есть такое дело. И при слепом тесте практически все люди путаются с положением источника в пространстве, даже натурального и тут вся теория летит к чертям и все байки про супервычислительные способности мозга туда же . Вот тут подкинули хорошее видео на эту тему 0:49:00 . Ещё по своим наблюдениям, заметил что звук с одной частотой, запущенный с тоногенератора, очень хреново позиционируется, а вот уже набор частот, даёт более чёткую позицию .
Но у меня гипотеза, что визуальный контакт в плюс задержки по расстоянию дадут эффект глубины. Этого в играх нет, просто хочу смоделировать и проверить, может я абсолютно неправ, а может, действительно будет эффект .
3DSound Автор
14.06.2022 18:35Всего лишь хочу попытаться воссоздать звук, который мы слышим в реальном мире. И если убрать сложную физику переотражений, скажем эксперимент в безэховой камере, то дальность до объекта будет складываться из разности по амплитуде и фазового сдвига исходя из расстояния и положения относительно головы . Со звуком в студии я не работал, это лишь моё предположение, что задержка даст больший эффект при визуальном контакте, нежели чем просто разница в громкости .
scherbakovalexej
15.06.2022 07:46Моделируется ли должным образом в звуковых игровых движках эффект Доплера на звуке приблежающегося или удаляющегося объекта в сцене?
Javian
Хорошо забытое старое:
Как включить 3D-звук в играх в Windows 7/8/10 https://habr.com/ru/company/ruvds/blog/523234/
Environmental Audio Extensions
3DSound Автор
Это понятно, технология формирующая звук в конкретной среде, путём вычисления переотражений . А как там обстоят дела с временными задержками от источника до слушателя ? Учитывается ли в EAX этот параметр ?
Javian
Отражение это и есть задержки =расстояние/скорость звука. Там же в вики:
Расчёты Ray-Tracing (отражение лучей) для получения параметров отражения для каждого источника звука.
Отдельные отражения для дальних эхо.
3DSound Автор
Хорошо. Более простой пример. Берём чистое поле, мягкий грунт с травой по пояс. Переотражения минимальны. В этом поле производит выстрелы боец спецназа из винтовки. Мы находимся на удалении 100 м. Заложено ли в EAX разность во времени, когда звуковая волна дойдёт до нас, либо мы услышим выстрел синхронно, с разницей только по громкости ?
Либо безэховая камера, где переотражений нет. Ассистент ходит вокруг нас с колокольчиком, по разноудалённым орбитам. Есть ли в алгоритме EAX рассчёт дистанции от источника до слушателя ?
Radisto
Определяется задержкой, вам же выше уже написали, да и вы сами этот параметр уже упомянули
3DSound Автор
Я понимаю, что задержкой. Только эта задержка не учитывается практически ни в EAX, ни в одной из современных игр. Вот, о чём речь.
И до сих пор нет ответа эксперта, как быть в безэховой камере, где нет переотражений.
Javian
Насколько я помню была 3D аудио демо в софте Creative, которая наглядно показывала, где позиционируется источник и как на звук влияет окружающее пространство:
Видя мир ушами
P.S. Статья 2003 года на Ixbt: Современные звуковые технологии в играх
3DSound Автор
Нет, ну тут вы снова пишете коммерческие статьи про среды. Вопрос стоит конкретно о скорости звука, о задержках от объекта до слушателя. Среду давайте возьмём безэховую. Есть ли в технологии EAX расчёты задержки звука от объекта до слушателя, в приведённых мной условиях ?
Ritan
Насколько мне известно - нет, задержка из-за расстояния до источника не учитывается. Но вопрос насколько это существенно?
Hidden text
Вообще должно быть довольно заметно. 300мс со 100 метров.
Засада в том, что у большинства игроков у аудиотракта будет своя задержка в районе 100мс(микшер игры, все свистоперделки ос, микшер ОС, буфер карты). А это убьёт всю точность на близких расстояниях, где это имхо было бы куда более значимо.
Более того, в EAX даже отражения не настоящие - это просто пресеты разных окружений с небольшим набором параметров, которыми можно "поиграться", чтобы получить эффект, подходящий под ситуацию.
Только в A3D был более-менее честный расчёт переотражений звука с учётом окружения. Но Creative предпочла его убить.
3DSound Автор
Aurial Vortex , была в своё время передовой звуковой картой. Это пионеры в области эмуляции звука от окружающей среды.
Но я всё же ставлю упор в своей статье на корреляцию глубины звуковой сцены от задержек, помимо окружения. К сожалению у меня пока нет средств проверить свою гипотезу, но есть некое внутреннее убеждение, что теория подтвердится и будет широко использоваться в виртуальной звуковой среде. Ведь в природе, каждый источник звука доходит до нас не моментально.
Отражения, без всякого сомнения создают объём, особенно мне понравилась работа звукорежиссёров в игре Soma. Но если туда добавить ещё все натуральные задержки, получится очень реалистичная картина.
Javian
Конкретно скорость звука здесь причем? Мало игр типа Subnautica Below Zero, где игрок перемещается между физическими средами с разной величиной скорости звука. Поэтому для воздуха это величина постоянная, а учитывать её небольшую девиацию от температуры - это уже через чур.
Безэховая вполне и давно удовлетворительно реализуется в виде разности громкости в случае "Мы находимся на удалении 100 м.".
Большинство игровых сценариев - это помещения с отражениями, разными материалам стен.
3DSound Автор
А притом, что именно звуковая задержка формирует у нас глубину сцены, расстояние до объекта, помимо бинаурального слуха, формирующего позицию. Визуальный контакт этот эффект усиливает ещё больше . И я зачем-то вам пытаюсь вам это объяснить , а вы мне всё про среды пишете .
Звук в играх изменится кардинальным образом, в сторону реализма, если добавят расчёт задержек звуковых волн от любых звуковых объектов, в любых средах до слушателя .
Пример на одном звуковом объекте . Помимо задержки между правым и левым ухом должно вычисляться время прихода звуковых волн, которое так же будет разное для L1 и L2 таким образом, мозг помимо позиции будет определять дальность, появится глубина звуковой сцены .
Javian
Ну не задержки же, а отражение.
Имхо момент для этого утерян. Массовый интерес к 3D звуку прошел, люди перестали покупать "домашний кинотеатр", а многие, наверное, слабо представляют себе аудиосистемы 5.1-7.1. Отчасти виновата Microsoft с Win7, где они убрали 3D звук.
Javian
Для расстояния 100 метров разница между L1 и L2 пренебрежимо мала.
3DSound Автор
Расстояние между ушами ещё меньше, однако временная задержка играет ключевую роль в формировании позиции звукового объекта. Даже мизерная задержка с расстоянием 2 м до объекта будет давать ощутимый эффект .
А насчёт того , что интерес прошёл, не соглашусь с вами. На пороге эпоха виртуальной реальности, где 3D звук будет занимать ключевую позицию, туда же новую моду на 3D музыку. И нет необходимости покупать дорогую внешнюю АС, сейчас технологии позволяют обойтись наушниками с виртуальной либо физической реализацией 3D звука .
Javian
По-моему все проблемы описанные в 1999 году остаются и сейчас актуальными для реализации действительно полного 3D звука.
Вопросы и ответы по EAX
Hidden text
Используется ли в EAX геометрическая модель окружающей среды? Можете ли вы дать нам простое объяснение, как работает модель геометрической акустики, и является ли такой метод эффективным решением для интерфейса 3D игр?
Модель распространения света, основанная на геометрии пространства, повсеместно используется в графическом мире и известна под названием "ray tracing" (распространение лучей), имеет акустический эквивалент. Для реализации геометрической акустики требуется компьютерная модель физического пространства: четкое определение того, какой объект и где расположен и какие звукоотражающие или звукопроводящие свойства имеет каждый объект. Затем рассчитывается количество слышимых пользователем звуков, отраженных от этих объектов для каждого источника акустики. Также, в расчет могут приниматься ослабление звукового сигнала во время прохождения сквозь стены или преграды на пути прямого распространения звуковых волн и каждого из отраженного звука. Ray tracing и другие модели распространения звуков на основе геометрии пространства — такие, как метод зеркальных источников звука — являются техниками, зависимыми от времени и широко применяются в качестве поддержки при вычислении акустики помещений в архитектурном дизайне. Подобная техника допускает, что звуковые волны отражаются в "зеркальной" форме, которая является аппроксимацией игнорируемых дифракции и диффузии звука. Совсем недавно, этот метод геометрического моделирования был адаптирован для воспроизведения 3D звука в некоторых экспериментальных интерактивных системах виртуальной реальности.
Модель распространения звука, основанная на геометрии пространства, такая, как ray tracing, может быть очень привлекательна для использования в API трехмерного звука. Разработчик просто определяет модель 3D звукового мира, располагает источники звука и слушателя в этом мире, а затем механизм ray tracing определяет пути распространения звуковых волн для завершения работы по созданию реалистичной акустической окружающей среды. На практике, тем не менее, такое применение геометрической модели в мире интерактивного компьютерного звука имеет несколько серьезных недостатков.
Полный расчет отражений от множества объектов для нескольких источников звука является сложной задачей. Не смотря на то, что физические принципы лежащие в основе геометрической модели просты (и обеспечивают лишь аппроксимацию реальных отражений звука) для ее расчета требуется серьезные вычислительные ресурсы. Главное следствие, в 3D играх, это то, что техника расчета распространения акустических волн (ray tracing) может оперировать лишь ограниченным числом отраженных звуков и не может быть использована для воспроизведения затухания запаздывающей реверберации. Чтобы понять, почему это так, рассмотрим источники звука в реальном мире.
Источники звука испускают звуковые волны, которые отражаются от первого объекта, которого достигнут, затем от второго объекта, затем от третьего, и т.д. В обычном помещении существует бесконечное число непрямых путей распространения звуковых волн от источника звука через отражение к слушателю. Когда эти отраженные звуковые волны достигают слушателя, запаздывающие отражения все больше и больше ослабляются, и следуют друг за другом все ближе и ближе по времени. Эти запаздывающие отраженные звуки быстро формируют континуум (сплошную среду), известный как "реверберация". Так как сложность полной модели увеличивается экспоненциально с течением времени, на практике моделирование геометрической акустики в реальном времени должно быть ограничено одним "отскоком" от препятствия ("первоочередные" ранние отраженные звуки) с целью экономии ресурсов CPU. Следовательно, механизм расчета распространения акустических волн в реальном времени не может использоваться для расчета затухания запаздывающей реверберации, которая является составной частью отраженных звуков в типичной акустической среде. В результате 3D звуковой окружающей среде не хватает живости и ощущения реалистичности. Это также приводит к несовместимости, так как первоочередной отраженный звук может стать явным, а затем исчезнуть, согласно физической модели — появляется чувство разочарования, потому что ожидаемого эффекта нет, так как нет запаздывающей реверберации для заполнения свободного акустического пространства, когда первоочередные отраженные звуки исчезают. Для избавления от этой проблемы, в интерфейсе EAX от Creative используется статичная модель распространение звуков, которая оперирует ранними отражениями и затуханием запаздывающей реверберации, и, следовательно, обеспечивает более полное и сильное ощущение звуковой окружающей среды.
Другая серьезная проблема с моделью распространения на основе геометрии пространства, применительно к звуку, состоит в том, что разработчик должен создать и манипулировать сложной моделью акустической окружающей среды для создания отраженных звуков. Поэтому, акустика, базирующаяся на геометрии пространства, может применяться для очень впечатляющих демонстрационных программ, но очень сложна для эффективного использования в реальных приложениях.
Создание эффективной акустической модели это не простая задача, как об этом могут говорить дизайнеры акустики в реальном мире. Дизайнер может потратить месяцы, и даже годы для создания холла с приемлемой акустикой, но даже тогда он может не добиться успеха. Разработчики игр оказались перед этой проблемой дизайна в виртуальном мире при использовании геометрической модели: правильно ли они определили коэффициент поглощения звука для этой стены? Достаточно ли прозрачен для звука этот объект? Им приходится произвести массу настроек, чтобы все было правильным, даже если геометрический API обеспечивает их списком материалов, из которых программист может выбирать. Кроме того, в дополнение к необходимости определения свойств материалов, обычно существует необходимость преобразования графической геометрической информации в форму, которую может использовать звуковой механизм (движок). И то и другое не является простой рутинной задачей.
Последнее и возможно самое важное замечание для игроков и разработчиков заключается в том, что геометрическое моделирование может создавать только конечный результат, который по своей природе является ограниченным, даже с точки зрения производящего сильное впечатление качества звука. Даже если геометрическая модель акустики сможет создать безупречную копию реальной звуковой сцены, эта форма реализма не всегда будет подходящей или эффективной для озвучивания, о чем хорошо осведомлены звукоинженеры киностудий. Слух является в большей степени чувством внутренних ощущений, чем зрение. Для создания наилучшего ощущения от звука, часто требуется использование звуковых эффектов, которые очень далеки от тех, которые могут существовать в физической реальности. Вот почему многие звуки в фильмах — от шуршания одежды до оружейных выстрелов — часто заменяются звуками, которые были "подправлены". Также на звуковых дорожках к фильмам часто записывают имитацию реверберации, подобно той, которую воспроизводится с помощью EAX.
Использование EAX реверберации позволяет создавать в играх виртуальную акустическую окружающую среду, которая отличается от среды, изображаемой на мониторе. В этой виртуальной акустической среде персонажи или объекты звучат так, будто они находятся ближе или дальше от слушателя, чем это выглядит на экране, т.е. плоскому изображению сообщается объем. API EAX создан с целью обеспечить именно такую форму звучания, в тоже время, все задачи по внедрению интерактивности в игру перекладываются на процесс звукового дизайна, т.е. это дело разработчика, как, и в каких объемах использовать и добиваться интерактивности звучания.
0x131315
Это нужен соответствующий звуковой движок, и ресурсы на него. В большинстве игр только имитация, ради экономии ресурсов: слышишь только то, что близко. В симуляторах типа армы, насколько знаю, заморачиваются по полной: задержки, невидимые взрывы, огибание холмов. Просто там звук - важная часть игрового процесса, как и небосвод например - все это позволяет ориентироваться и в игровом мире и в боевой обстановке. Так что подобные технологии стоит искать там, где они востребованы - вопрос этот на местах как-то решается, просто об этом мало где пишут, да и мало кто замечает/обращает внимание.
Но н думаю что инициатива массово тащить реалистичный звук в игры в принципе жизнеспособна - там у каждого свои костыли и соображения. Недавно видел как человек менял конфиг игры (апекс или пабг), так там отдельными параметрами задана дистанция/слышимость звука веревки. Подобное - хороший маркер, демонстрирующий всю глубину используемых костылей.
3DSound Автор
Многие игры не то что временные задержки, ту же громкость не могут подать адекватную объекту и расстоянию до него, и я думаю вложенные силы и средства в звуковой движок, который будет точно передавать громкость и задержку исходя из расстояния, будут оценены как игроками, так и разработчиками .
0x131315
Будут конечно, хороший тому пример - UnrealEngine.
Но на этом примере можно оценить, насколько больших усилий требует продвижение такого продукта, даже при условии доступности, бесплатности, открытости, и хорошего финансирования. Большинство продуктов оказываются не готовы к такому, не выдерживают конкуренции.
SmallSnowball
Я ненастоящий сварщик и звуком особо не занимаюсь, поэтому могу ошибаться, но в wwise при расчете переотражений можно указывать скорость звука и учет расстояния там тоже есть. Есть ли учет расстояния для случая с отсутствием отражений - не знаю, но как минимум руками задержки там прописывать можно
https://www.audiokinetic.com/library/edge/?source=Help&id=wwise_reflect_plug_in_effect
Также есть вот этот вот тред про то, почему в fmod намеренно нет этой задержки:
https://qa.fmod.com/t/automated-listener-speed-of-sound-delays/11814
Вкратце: звуковые события обычно нужны для геймплея как своевременная индикация происходящих событий и задержка чаще всего нежелательна, помимо проблем с расчетами.
Но вообще игры с реалистичной задержкой звуков существуют, как минимум в катсценах со всякими взрывами часто такое наблюдал. Правда скорее всего в катсценах это делается без помощи звукового движка, просто задержкой на отправку эвента
Upd2: говорят в Escape from tarkov такое есть для выстрелов