Почему Финч не использует один буфер для его полифонических звуков?

Я провожу некоторые исследования и экспериментирую с OpenAL - в частности, меня интересуют методы полифонии, то есть одновременное воспроизведение одного звука несколько раз. Я наткнулся на Finch, у которого есть функция, поддерживающая это. В моем собственном коде я создал один буфер OpenAL для каждого аудиофайла, а затем инициализировал несколько источников OpenAL этим буфером. Финч, с другой стороны, создает буфер OpenAL для каждого исходного кода OpenAL. Есть ли для этого какие-то функциональные или связанные с производительностью причины?


person ajh158    schedule 26.01.2012    source источник


Ответы (1)


Короткий ответ: автор - деревенский идиот и заслуживает порки. Более длинный ответ заключается в том, что мне никогда не приходило в голову, что вы можете реализовать полифонию, разделяя звуковой буфер между источниками, отсюда и дублирование. Я создал новую проблему и взгляну на код, когда у меня будет время .

(Обновление: он действительно работает очень хорошо и является частью текущего кода.)

person zoul    schedule 27.01.2012
comment
В порядке. Я не эксперт, и совместное использование буфера может повлиять на производительность или поведение - поэтому я задал этот вопрос. Кажется, что это работает и поддерживается, но, похоже, может быть какой-то неочевидный компромисс, связанный с совместным использованием буферов ... - person ajh158; 27.01.2012