Hardtmuth 5 586 Опубликовано 21 июля, 2020 Автор: Macron Что такое Sound Environment в STALKERе? Это принудительное изменение привычных звуков в определенных зонах. Например, логично, если зайдя в подвал/пещеру/под мост мы начнем слышать эхо от выстрелов/перезарядки/своих шагов и т.п. Сами зоны ставятся вручную в SDK и в дальнейшем добавляются в папку уровня в виде файла level.snd_env (или как level.sound_environment для старых билдов). Все билды от 18xx до Тень Чернобыля / Чистое Небо поддерживают Sound Environment. Из движка Тень Чернобыля его никто не вырезал. Спойлер Но есть проблемы с реализацией: Первая проблема в том, что Sound Environment работает только при включенном EAX. Вторая проблема в том, из OpenAL-библиотек (OpenAL32.dll+wrap_oal.dll) начиная где-то с 2006 года вдруг исчезла поддержка EAX для звуковых карт за предыдущие годы. Третья проблема в том, что EAX даже если поддерживается звуковухой, нормально работает/определяется не со всяким драйвером. Четвертая проблема в том, что в ТЧ в опциях звука разрешено ставить галку на EAX в любом случае, то есть игра не проверяет включен ли он на самом деле, что приводит к самообману, если не читать лог. Пятая проблема в том, что в финалке ТЧ этот самый Sound Environment зачем-то был вырезан на большинстве уровней. Остался только где-то на: l07_military l08_yantar l12u_sarcofag testers_mp_factory testers_mp_pool Спойлер добавлен !!!_dsound_software для принудительного включения Generic Software добавлен !!!_backup для восстановления на случай серьезных проблем добавлены варианты 15-19 добавлен !!!_sound_fixx_for_cs_cop добавлен !!!_sound_fixx_for_shoc_10004 добавлен !!!_sound_fixx_for_shoc_10006 обновлен eax.dll до v4.0.1.0 добавлена поддержка ЗП (при использовании !!!_sound_fixx_for_cs_cop) Ссылка: https://yadi.sk/d/lGuwBsvVQpnub Данная сборка (EAX FIXX) предназначена для включения поддержки EAX игрой, а следовательно и Sound Environment как для существующих уровней, так и для перспективных модов, в первую очередь для ТЧ. Текущая сборка предназначена для билдов от 18xx до ТЧ/ЧН. Сборка состоит из пронумерованных папок с dllками, где в разных комбинациях встречаются портированные из билдов/ТЧ/ЧН OpenAL-библиотеки всевозможных версий. Каждая папка включает:eax.dll (стандартная версия) OpenAL32.dll wrap_oal.dllЗадача сборки: методом перебора всех комбинаций подобрать вариант, при котором на конкретном оборудовании в конкретном билде/игре заработает EAX, а следовательно, включится поддержка Sound Environment.Установка: 1. В user.ltx один раз правим (или через консоль вводим) команды:snd_efx on (разрешаем игре использовать эффекты)snd_targets 24 (старые варианты dllок могут ругаться, если число больше. Можно после тестов выставить 32.)snd_volume_eff 1 (максимальная громкость эффектов)snd_volume_music 0 (музыку отключаем, чтобы не мешала)snd_volume_master 1 (общая максимальная громкость, команда для билдов 18xx) 2. Запускаем игру (билд от 18xx до ТЧ/ЧН/ЗП) и смотрим, что написано в консоли или логе в двух строчках, определяющих EAX. Если написано:* sound: EAX 2.0 extension: present * sound: EAX 2.0 deferred: present значит, скорее всего, и так все в порядке, EAX работает. Дальнейшие эксперименты можно не проводить.Если написано:* sound: EAX 2.0 extension: absent * sound: EAX 2.0 deferred: absent Или только в одной строчке absent, значит, EAX не работает или может глючить, и можно поэкспериментировать. 3. Куда-нибудь бекапим папку bin. Если используем билды, пункт 4 пропускаем. 4. Если используем ЧН/ЗП, то в папку bin суем все из !!!_sound_fixx_for_cs_cop Если используем ТЧ 1.0004, то в папку bin суем все из !!!_sound_fixx_for_shoc_10004 Если используем ТЧ 1.0006, то в папку bin суем все из !!!_sound_fixx_for_shoc_10006 5. Проверяем. Для ЧН/ЗП в случае отсутствия EAX или проблем со звуком, в игре меню звуковых опций меняем Generic Hardware на Generic Software или наоборот, перезапускаем игру, проверяем снова. Для билдов/ТЧ в случае отсутствия EAX или проблем со звуком, копируем dsound.dll из !!!_dsound_software в папку bin. Звук должен принудительно перейти в режим Generic Software. Для ЧН/ЗП, если в опциях не переключается (Generic Hardware/Generic Software), можно тоже попробовать с dsound.dll. 6. Если не заработало, начинаем полномасштабное тестирование:(Для ЧН/ЗП полное тестирование можно проводить дважды - сначала с выбранным в опциях вариантом Generic Hardware, потом с Generic Software). (Для билдов/ТЧ полное тестирование можно проводить дважды - сначала обычно, потом через !!!_dsound_software). Берем все dllки из папки 01_18xx-22xx_default и кладем в папку bin. Запускаем игру и читаем в логе/консоли строчки о EAX. Далее берем dllки из папки 02_18xx-22xx_tweaked1, проделываем то же самое, и так далее, проверяем все варианты. Запоминаем, где включился EAX (пишет present в обеих строчках). Если EAX включился в нескольких вариантах, оставляем тот, где даты файлов новее, или звук кажется лучше. Возможны случаи, когда в логе в одной строчке написано present, в другой absent. Скорее всего Sound Environment не попрет. Некоторые варианты могут оказаться несовместимы с конкретным билдом/игрой/системой и во время тестов привести к вылету/зависанию игры при запуске. При включенном EAX с разными версиями возможно появление новых мелких глюков, например щелчков. Нет гарантии, что на разных билдах/играх будет корректно работать один и тот же вариант. Если в результате тестов в ТЧ/ЧН/ЗП звук ухудшился, или игра не запускается - удалите dsound.dll (если устанавливали) и восстановитесь из !!!_backup.Что делать, если не помогло: 1. Если звуковуха отдельная, попробовать обновить ее драйвера, обращать внимание на поддержку EAX. Драйверов может быть несколько вариантов, в том числе неофициальные. 2. Если звуковуха встроенная, например Realtek, попробовать обновить ее драйвера. Часто на сайтах поддержки материнских плат лежат устаревшие варианты. То есть лучше искать драйвера непосредственно от производителя чипа звуковухи. Также можно погуглить на тему проги "Realtek 3D SoundBack", может пригодится. 3. За 20 баксов приобрести простенький Sound Blaster Live/5.1. В зависимости от модели/операционной системы не исключены проблемы с поиском драйверов, но по крайней мере эти звуковухи должны поддерживать EAX с одним из вариантов фикса. 4. Скачать исходники OpenAL и будучи крутым программистом скомпилировать под свою звуковуху персональные OpenAL32.dll+wrap_oal.dll.Как самостоятельно в SDK создать Sound Environment? Допустим, у нас уже открыт какой-то уровень.Edit Mode -> Sound Env -> Ставим точку на карте. Появится кубик. Правой кнопкой заходим в его свойства. Environment Inner ставим long_corridor (например).Environment Outer ставим open_space. Далее зумим/вращаем наш кубик, чтобы заполнить нужное помещение. Когда наставили достаточно кубиков, говорим Compile -> Make Game. И суем готовый level.snd_env в игру в папку уровня. Спойлер Спойлер Alley - АллеяArena - АренаAuditorium - Аудитория (типа того как в институтах, или как за в кинотеатрах, где сидения типа лесенки)Bathroom - Ванная комната (скорей всего помещение покрытое кафельной плиткой)Carpeted Hallway - Коридор (прихожая) с ковровой дорожкой (скорей всего влиять будет на звук шагов ?)Cave - ПещераCity - ГородConcert Hall - Концертный залDizzy - ГоловокружительныйDrugged - Под воздействием наркотиковForest - ЛесGeneric - ОбщийHallway - КоридорHangar - АнгарLivingroom - ГостинаяMountains - ГорыPadded Cell - Палата, обитая войлокомParkinglot - Стоянка для машинPlain - РавнинаQuarry - КарьерRoom - КомнатаSewer Pipe - Канализационные трубы (типа того, что на Янтаре)Stone Corridor - Каменный коридорStone Room - Комната из камняUnder Water - Под водой 5 Как оформить тему Правила форума Вопросы по сайту Личное пространство на Trello Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pepel 80 Опубликовано 28 января, 2023 хорошая инфа. только вчера вот задавался вопросом почему еррор при попытке пересобрать кордон вылез. никто мне не ответил на этом сайте что это и в чем причина. уровень запустился, а вопрос остался. Теперь он раскрыт. Как раз копаюсь в 1.4 тч, надо как-нибудь попробовать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 28 января, 2023 Pepel оно всё равно криво работает, нет смысла в этом копаться 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pepel 80 Опубликовано 28 января, 2023 imcrazyhoudini ок. тогда не буду туда лезть и заморачивать. но хотя бы знаю теперь с чем связана ошибка и что она не критическая Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 116 Опубликовано 28 января, 2023 Pepel я тебе об этом говорил в другом раздел Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Pepel 80 Опубликовано 28 января, 2023 imcrazyhoudini говорил, но не объяснял с чем это связано, а тут более глубоко раскрывается. теперь ясно не только лишь вчерашний день, но и сегодняшний XD 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Garage Head 43 Опубликовано 30 июня, 2023 (изменено) >Тут< есть метод проще. Чел говорил что в ТЧ возвращал звук EAX. Просто кинул специальную библиотеку в папку с exe. У меня работает, я пробовал в Гансе. Плохо реализовано. От стрельбы вообще никакой разницы, реверберации нет. Но теперь звук по другому слышно, например на вокзале люди не кричат на все помещения, когда от них отходишь, звук плавно уменьшается. ГГ почти не слышно, шаги, вздохи, боль и т.д. Надо больше тестить в разных местах Изменено 30 июня, 2023 пользователем Garage Head 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 995 Опубликовано 30 июня, 2023 (изменено) Garage Head Много тонкостей. Возможно на крайняк с комбинацией с dsoal, добавлять в батник параметр -dsound Дополнено 1 минуту спустя 51 минуту назад, Garage Head сказал: От стрельбы вообще никакой разницы, реверберации нет. А там сами звуковые зоны на локации расставлены? Изменено 30 июня, 2023 пользователем macron 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Garage Head 43 Опубликовано 30 июня, 2023 (изменено) 13 минут назад, macron сказал: А там сами звуковые зоны на локации расставлены? А разве в оригинале ЗП они не расставлены? В Гансе же оригинальные локации. Раз в игре есть галочка EAX, подумал что зоны должны быть. Может не везде они есть, я устал уже тестить, завтра ещё побегаю. Поэтому в начале думал что не работает. Кстати в опциях появился вариант с Generic hardware. Изменено 30 июня, 2023 пользователем Garage Head Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 995 Опубликовано 30 июня, 2023 (изменено) 16 минут назад, Garage Head сказал: Раз в игре есть галочка EAX, подумал что зоны должны быть. Вообще нет связи. За зоны и их расположение на локациях отвечает только левел-дизайнер. Даже если EAX включен и правильно определился движком, эха в нужном месте может не быть тупо из-за отсутствия там зон или вообще отсутствия в уровне файла level.snd_env Даже с включенными галочками EAX может по факту не работать - надо читать, что в логе пишет движок при инициализации. Поэтому тема с EAX скользкая и не все любят с ним ковыряться. Дополнено 18 минуты спустя Вот зоны для некоторых уровней ТЧ и ЗПhttps://disk.yandex.ru/d/64hRfDchDkAGRg Изменено 30 июня, 2023 пользователем macron 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Garage Head 43 Опубликовано 30 июня, 2023 24 минуты назад, macron сказал: За зоны и их расположение на локациях отвечает только левел-дизайнер Ну, догадывался конечно, что они раздолбаи, судя по тому какую сыромятину выпускали(( Жаль конечно что всё это в таком плачевном виде 1 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 995 Опубликовано 15 июля, 2023 Garage Head на кастомном ТЧ-движке заработало. Вообще, xray движки рассчитаны жрать всё, где есть _oal на конце. Так как в ТЧ вручную указать нужный драйвер нельзя, там рекомендую dsoal-aldrv.dll заранее переименовать во wrap_oal.dll и подставить (вместе с dsound.dll и alsoft.ini ) в bin.https://community.pcgamingwiki.com/files/file/1363-dsoal/ 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ruslan_Gallyamov 18 Опубликовано 18 ноября, 2023 Помню на форуме Gameru, пользователь с ником "vlad_54rus" расставлял зоны для ЗП, никто о нём не слышал больше что-нибудь на просторах сталкера ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
macron 995 Опубликовано 22 ноября, 2023 Ruslan_Gallyamov если в гугле не забанили, можешь заняться поиском и аналитикой. Иногда так можно находить людей. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты