Итак, все в названии вопроса.
Есть сюжетная карта, суть заключается в том, что главный герой имеет возможность перемещаться меж двумя областями(одна из них - болото, вторая подземелье). Герой перемещается мгновенно(посредством артефакта) - можно ли как-то реализовать плавную смену звукового оформления? Что-то вроде того, что переместился - затухает основная тема болота, идет музыкальная тема подземелья.
Беда скорее в том, что каждый раз музыка начинается сначала. А есть ли возможность начинать ее с того момента, как она остановилась в прошлый раз? Или это невозможно?
`
ОЖИДАНИЕ РЕКЛАМЫ...
1
23
2 недели назад
1
Технически это возможно, но придется запариться с системой.
Есть запуск музыки с указанной точки - но проблема в том, что нет проверки, на каком моменте мы стопаем музыку. Мб есть какие-то нативки в коде, но это уже надо копать.
Как вариант - запускать параллельно таймер, который будет отслеживать длительность звука, и который сам будет музыку перезапускать после окончания. И за счет этого таймера можно будет сохранять время остановки в переменную. А потом продолжать с точки, сохраненной прошлый раз в переменную.
Ответы (6)
0
27
2 недели назад
0
konvan5, таймер вместе со звуком не выйдет, ибо забагуется при паузе игры, когда музыка продолжает играть, но таймер не тикает
0
23
2 недели назад
0
rsfghd, тогда через системное время с периодиком на проверку разницы можно обойти эту проблему. Если делать немного грубую систему, не идеальную, но главное будет работать.
0
27
2 недели назад
0
konvan5, системное время? Как его получить?
0
23
2 недели назад
0
rsfghd, а да.... в стандартном варе же никак XD
0
23
2 недели назад
0
В целом этот функционал очень фоновый, и если система будет отставать из-за пауз в меню, думаю это не сильно повлияет на пользовательский опыт. Ну запуститься музыка не с 50 секунды а с 20 (30 сек в меню посидел). Сильно это на итоговый игровой опыт не повлияет. Главное каждый раз с нуля не будет запускаться - вот такое будет гораздо заметнее, чем продолжение не с той секунды.
0
27
2 недели назад
0
konvan5, я делал такую систему и очень сильно был разочарован. Это серьезно влияет на пользовательский опыт, разрушая атмосферность и добавляя рандомную конфузию от происходящего
0
18
2 недели назад
0
Запускай всю музыку сразу и сделай громкость 0, у всех, затем поставить громкость 80-100 у нужной, и меняй громкость когда требуется ) должно работать. Главное в настройках звуков сделать так, чтобы всё проигрывалось одновременно.
Ответы (9)
0
23
2 недели назад
0
EugeAl, c таким подходом не будет продолжать с того момента где остановился на той самой композиции.
0
18
2 недели назад
0
konvan5, все равно будет на начало сбиваться?
0
23
2 недели назад
0
EugeAl, не, просто будет продолжаться не с того места, где останавливалась конкретная композиция.
0
23
2 недели назад
0
EugeAl, но как решение такое может пойти, почему бы и нет, когда все равно все варианты костыли не идеальные.
0
27
2 недели назад
0
konvan5, разве можно запустить одновременно больше одной композиции? Музыка это не звук же
0
23
2 недели назад
0
rsfghd, если запускать как звук
0
27
2 недели назад
0
konvan5, а если игрок хочет иметь звуки юнитов, боя и так далее, но не хочет слушать музыку?
0
23
2 недели назад
0
rsfghd, ну тогда боль печаль :D
С такой системой игроку придется заслушаться композицией насильно XD
1
18
2 недели назад
1
konvan5, так тут суть в том, чтобы не останавливать композиции, а просто делать их неслышными на нужное время, или слышными. И да , придётся их делать как звуки, и чтобы у них был отдельный канал, не мешающий другим звукам. И отключение придётся делать как то костыльно, через абилку, да )
0
23
2 недели назад
0
Учитывая все плюсы и минусы разных подходов, думаю, лучшим путем будет запускать именно музыку (не звук) со случайным оффсетом (кроме первого попадания в локацию, тогда запуск с самого начала), отключая старую музыку с фейдом. Это максимально простой вариант, который не будет мешать пользователю отключать музыку, или каждый раз запускаться с самого начала.
Единственный минус - при переходе из локации в другую и обратно, музыка будет продолжаться не в том месте, как ожидалось (но опять же, если игрок туда-сюда переходит в течении 5 сек и только тогда это будет заметно).
Можно все-же использовать таймер для оффсета для улучшения пользовательского опыта, но который будет сбиваться при заходе в менюшки (профита чуть больше но запары в разы больше).
0
37
2 недели назад
Отредактирован ScorpioT1000
0
А у области вроде есть настройка фонового звука
Ответы (1)
0
23
2 недели назад
Отредактирован konvan5
0
ScorpioT1000, она работает слегка криво + по камере. А как я понял, автору нужно, чтобы музыка менялась по событию перемещения героя в области, и не важно куда будет смотреть камера.
Но тоже как еще вариант решения.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.