У реки не одна ближайшая точка
На схеме слушатель стоит между двумя изгибами реки. Если всегда переносить источник звука в ближайшую точку берега, при движении эта точка может резко перескочить на другую сторону.
Rune Skovbo Johansen описал Point Cloud Sound: по точкам вдоль реки рассчитываются суммарная громкость, взвешенное направление и spread. Для каждого звукового компонента используется один источник. Чем короче средний вектор направлений, тем шире spread. Так звук может окружать слушателя, а не прыгать между берегами.
У итогового источника нужно отключить встроенное затухание по расстоянию, иначе оно учтётся дважды. Метод рассчитан на общий фон вроде воды и листвы. Объединять в нём независимые шаги или реплики отдельных персонажей не стоит. В статье — фрагменты алгоритма, не готовая библиотека.
На схеме слушатель стоит между двумя изгибами реки. Если всегда переносить источник звука в ближайшую точку берега, при движении эта точка может резко перескочить на другую сторону.
Rune Skovbo Johansen описал Point Cloud Sound: по точкам вдоль реки рассчитываются суммарная громкость, взвешенное направление и spread. Для каждого звукового компонента используется один источник. Чем короче средний вектор направлений, тем шире spread. Так звук может окружать слушателя, а не прыгать между берегами.
У итогового источника нужно отключить встроенное затухание по расстоянию, иначе оно учтётся дважды. Метод рассчитан на общий фон вроде воды и листвы. Объединять в нём независимые шаги или реплики отдельных персонажей не стоит. В статье — фрагменты алгоритма, не готовая библиотека.