Я инициализирую FMOD с 32 каналами и играю короткие сэмплы (1 секунда) со следующим кодом:
result = system->init(32, FMOD_INIT_NORMAL , NULL);
// here I load the sounds //
result = system->playSound(FMOD_CHANNEL_FREE, grid[_sound], false, &channel);
Он работает так, как задумано, перекрывая звуки, но теперь я понял, что когда я проиграл 32 сэмпла (не одновременно), одновременно может воспроизводиться только один звук. Похоже, что FMOD_CHANNEL_FREE ведет себя как инкрементный счетчик, и когда он достигает 32, он остается там, останавливая последний звук, пока он еще играет, чтобы воспроизвести новый.
Нужно ли удалять звуки, когда они перестали играть? Как? Я чувствую, что мне не хватает чего-то простого
Спасибо!
Марк