我在用 fmod 调整 pitch 时遇到问题。我可以用 channel::setfrequency 做到这一点,但我需要在更大的 sfx 上使用它,因此需要 DSP 的准确性 [没有节奏变化]。但是我似乎无法应用过滤器。
FMOD::DSP* dsp;
result = m_soundSystem->createDSPByType(FMOD_DSP_TYPE_PITCHSHIFT, &dsp);
dsp->setParameter(0, 2.0f);
result = m_soundChannels[i]->addDSP(dsp, 0);
那里什么也没发生。此代码在我的自定义播放功能中,并在我播放声音之前执行(我在 true 时加载暂停,然后进行更改)。这两个函数都不会向结果变量抛出任何错误。那怎么了?:S