• Уважаемые гости и новички, приветствуем Вас на нашем форуме
    Здесь вы можете найти ответы практически на все свои вопросы о серии игр «Готика» (в том числе различных модах на нее), «Ведьмак», «Ризен», «Древние свитки», «Эра дракона» и о многих других играх. Можете также узнать свежие новости о разработке новых проектов, восхититься творчеством наших форумчан, либо самим показать, что вы умеете. Ну и наконец, можете обсудить общие увлечения или просто весело пообщаться с посетителями «Таверны».

    Чтобы получить возможность писать на форуме, оставьте сообщение в этой теме.
    Удачи!
  • Друзья, доброго времени суток! Спешите принять участие в оценке работ на конкурсе "Таинственные миры" 2024!
    Ждем именно вас!

    Ссылка на конкурсную тему - тык
    Ссылка на тему с работами участников- тык

Gothic ½ wav в качестве музыки | zWaveMusic [плагин для Union]

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
zWaveMusic
Позволяет использовать wav файлы в музыкальных зонах



Доступно к скачиванию через Менеджер ресурсов в разделе 'Плагины'
- Скачать Менеджер Ресурсов -
189423-cfc49ff95563339347d83ed59dec2588.png

Требования: Union 1.0k или выше
Платформа: Gothic I, Gothic Sequel, Gothic II, Gothic II NoTR

Исходный код: GitHub

Русский English


  • Описание
    Плагин позволяет использовать в качестве музыкальных тем наборы из wav файлов. Подразумевается, что это развяжет руки разработчикам, которые хотят качественно внедрить новую музыку в обход DirectMusic Producer. Данная система работает в симбиозе с обычной dm (DirectMusic) системой. Ключевой особенностью плагина является то, что он позволяет добиться результата, максимально приближенного к dm.

    Использование
    Для того, чтобы движок проигрывал именно wav файлы, необходимо, чтобы название музыкальной зоны содержало имя звукового файла. Например Valley.wav.

    Темы и состояния
    * Тема - группа звуков, имена которых начинаются одинаково.
    * Состояние - свойство музыкальной темы, описывающее ситуацию и звук, который должен быть проигран.
    Состояния:
    - стандартное - предписывает звук по умолчанию, который указан в качестве имени музыкальной зоны. Например Valley.wav.
    - ночное состояние - предписывает звук, который проигрывается ночью. Имеет суффикс _Night. Например Valley_Night.wav.
    - боевое состояние - предписывает звук, который проигрывается во время боя. Имеет суффикс _Fight. Например Valley_Fight.wav.
    - состояние угрозы - предписывает звук, который проигрывается в момент угрозы. Имеет суффикс _Threat. Например Valley_Threat.wav.

    Переходы
    Переход - это звук, который проигрывается при переключении тем или состояний. Для проигрывания перехода используется суффикс _Out, который может комбинироваться с суффиксами состояний. Переход может имеет два вида:
    - стандартный переход - это звук перехода по умолчанию, который используется темой при любом переходе. Имеет суффикс _Out. Например Valley_Out.wav.
    - строгий переход - это звук, который воспроизводится между конкретно заданными темами. Имеет суффикс _Out_[имя следующей темы]. Например Valley_Out_Xardas.wav.

    Дополнительно
    - присутствует тайм-аут между переходами и составляет 5 секунд для предотвращения спама при быстрых переходах из зоны в зону.
    - обращаю внимание, что музыкальная зона считается активной, если в ней находится камера, а не персонаж.
    - если мод использует несколько одинаковых звуков в разных темах, рекомендуется использовать оптимизацию томов из VDFS tool. Это позволит сократить вес тома.

  • Description
    The plugin allows you to use sets of wav files as musical themes. The implication is that this will free the hands of developers who want to introduce quality new music, bypassing DirectMusic Producer. This system works in symbiosis with the dm (DirectMusic) system. The key feature of the plugin is that it allows you to achieve the result as close as possible to dm.

    Using
    In order for the engine to play exactly wav files, it is necessary that the name of the music zone contains the name of the sound file. For example Valley.wav.

    Themes and states
    * Theme - a group of sounds whose names begin the same.
    * State - is a property of the theme song that describes the situation and the sound to be played.
    States:
    - standard - prescribes the default sound that is specified as the name of the music zone. For example Valley.wav.
    - night state - prescribes a sound that is played at night. Has a _Night suffix. For example Valley_Night.wav.
    - fight state - prescribes the sound that is played during the fight. Has a _Fight suffix. For example Valley_Fight.wav.
    - threat state - prescribes the sound that is played at the moment of the threat. Has the _Threat suffix. For example Valley_Threat.wav.

    Transitions
    A transition is a sound that plays when you switch themes or states. To play the transition, the _Out suffix is used, which can be combined with state suffixes. The transition can be of two types:
    - standard transition - This is the default transition sound that is used by the theme for any transition. Has a _Out suffix. For example Valley_Out.wav.
    - exact transition is a sound that is played between specific themes. Suffixed with _Out_[name of next theme]. For example Valley_Out_Xardas.wav.

    Additionally
    - there is a timeout between transitions and is 5 seconds to prevent spam during quick transitions from zone to zone.
    - I draw your attention to the fact that a music zone is considered active if there is a camera in it, and not a character.
    - if the mod uses several of the same sounds in different themes, it is recommended to use the volume optimization from the VDFS tool. This will reduce the weight of the volume.


Пример

dm зона из G2A на пересечении с wav зоной.
unknown.png


Обычные wav зоны
unknown-1.png

unknown-2.png


wav зона, имеющая тот же звук, что и зона по умолчанию.
unknown-3.png


wav зона по умолчанию
unknown-4.png


Тестовая локация
Также в менеджере можно найти ресурс с тестовой локацией из видео выше. Она оформлена в виде мода и может быть запущена из стартера. Содержит 6 звуковых зон, которые можно изучить самостоятельно через любой удобный редактор миров. В этой локации представлены несколько возможных ситуаций: пересечения нескольких wav зон, пересечения зон с зоной по умолчанию, пересечения wav с dm зонами, пересечения зон с одинаковыми wav, наличие или отсутствие звуков для разных состояний тем.
 
Последнее редактирование:

Rey22

Участник форума
Регистрация
16 Мар 2016
Сообщения
162
Благодарности
112
Баллы
230
Все затестим:)
Огромное спасибо за работу. Аналогов директу реально не хватало.
 

Beowulf

Участник форума
Регистрация
21 Ноя 2010
Сообщения
1.845
Благодарности
1.209
Баллы
380
Вот это я понимаю - годный плагин! *thumbs up* *thumbs up* *thumbs up*
Тоже надо будет проверить*lupa*
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Четко! Но есть есть вопросы - вавы обычно очень тяжелые. По своему опыту могу сказать что стерео вавы очень сильно нагружают игру и память, в отличии от миди библиотек. Возможно ли использование OGG вместо вав? Второй вопрос - что насчет переходов между зонами? Баг с наложением нескольких вавов не всплывет вновь? Ну а так конечно адовым мучениям с DMP пришел конец.
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Ты видео смотрел?
Там вроде нормально переходы проделываются... :confused:

Смотрел. Это не критично. Но больше волнует 1 вопрос. В моих реалиях мне дорог каждый байт :)
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Возможно ли использование OGG вместо вав?
Возможно. Но мне не понравился мерзкий фриз, который происходит в результате распаковки ОГГа целиком в память. Вообще я допускаю вариант внедрения других звуковых форматов в качестве альтернативы вавкам.

Второй вопрос - что насчет переходов между зонами?
Я бы лучше беспокоился за проблему с кривыми кешем, который может сломать воспроизведение вообще всех звуков :D
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
Возможно. Но мне не понравился мерзкий фриз, который происходит в результате распаковки ОГГа целиком в память. Вообще я допускаю вариант внедрения других звуковых форматов в качестве альтернативы вавкам.


Я бы лучше беспокоился за проблему с кривыми кешем, который может сломать воспроизведение вообще всех звуков :D

Ну вавки это вобще звездец. Вся озвучка идет на ОГГ, а музон в 30-40 метров на вавке - ну скажем прямо вобще не варинат. Сужу по опыту использования вав вайлов в в2 внедренных в формат dmp

Как его вычислять насколько он крив? :)
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Trazege, ну смотри. Если огг для музыки не смерть ушам, то наверное могу научить систему их асинхронной распаковке.
Хотя аудиофил тебе и за твою вавку в 40 метров пояснит почему она хвост собачий :)
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.125
Благодарности
3.218
Баллы
485
Позволит ли этот плагин отказаться от DM в оригиналах без изменения миров, чтобы полноценно играть на Wine/Proton?
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Позволит ли этот плагин отказаться от DM в оригиналах без изменения миров, чтобы полноценно играть на Wine/Proton?
Ну сделать не сложно. Тут либо ассоциативная таблица [key=имя dm зоны, value=звук], либо создание звука, имя которого идентично имени dm зоны.
 

D36


Модостроитель
Регистрация
3 Дек 2014
Сообщения
2.125
Благодарности
3.218
Баллы
485
Ну сделать не сложно. Тут либо ассоциативная таблица [key=имя dm зоны, value=звук], либо создание звука, имя которого идентично имени dm зоны.
А давай попробуем. У меня и подопытный имеется, желающий протестировать.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
В общем пошаманил с файловой системой и сделал такую штуку: теперь, пока проигрывается звук перехода между темами или состояниями, файловая система в отдельном потоке распаковывает OGG файл в память. И когда подходит время проиграть музыку, готовые данные тупо копируются в движок, что исключает какие-либо фризы со стороны файловой системы. Саму файловую систему также добавил в установщик плагина.

Заодно перезалил тестовую локацию, снизив вес с 203 МБ до 16 МБ. При этом 12% веса полученного тома облегчилось оптимизатором VDFS tool.
 

Fabiosek

Участник форума
Регистрация
17 Июн 2017
Сообщения
147
Благодарности
47
Баллы
190
Good job, thanks! I had a music system with "BASS (library) before, but I think yours will be better. I will definitely test it soon and let you know how and if it works (for me, because for me nothing ever works right away xD).
 

Trazege

Участник форума
Регистрация
20 Фев 2008
Сообщения
1.760
Благодарности
1.394
Баллы
340
В общем пошаманил с файловой системой и сделал такую штуку: теперь, пока проигрывается звук перехода между темами или состояниями, файловая система в отдельном потоке распаковывает OGG файл в память. И когда подходит время проиграть музыку, готовые данные тупо копируются в движок, что исключает какие-либо фризы со стороны файловой системы. Саму файловую систему также добавил в установщик плагина.

Заодно перезалил тестовую локацию, снизив вес с 203 МБ до 16 МБ. При этом 12% веса полученного тома облегчилось оптимизатором VDFS tool.


Расширение файла по такой же системе что и озвучка? *.wav, а на самом деле ogg. Или можно прямо фалу с расширением ogg пихать в проект?
 

Fabiosek

Участник форума
Регистрация
17 Июн 2017
Сообщения
147
Благодарности
47
Баллы
190
Gothic_II_audio_settings.png


Music volume doesn't work with music on this system, only Sfx volume. In my opinion this is incorrect.

PS. Screenshot from Google.
 

Gratt


Модостроитель
Регистрация
14 Ноя 2014
Сообщения
3.281
Благодарности
4.581
Баллы
625
Сверху Снизу