我正在使用XAudio2在我的游戏中播放声音。我有大约16个来源的声音,其中3个是循环效果,需要播放就像一个背景音乐。我有另一个背景音乐,它开始定期播放(一旦完成,它等待1分钟,然后重新启动)。每当另一个效果必须发挥,如按钮点击,枪射击等,我搜索一个可用的来源,并附加缓冲区,并开始播放。
我的问题是,一旦背景音乐开始播放,只会播放循环效果,而其他需要在游戏操作上播放的效果(如按钮单击)不会被播放。当背景音乐停止时,所有这些延迟效应都会被播放。另外,如果我使用一个循环效应(而不是3),所有这些都会按正确的顺序播放。
我正在使用混音的效果和背景音乐是直接提交给掌握的声音。
有人能帮帮我吗?因为我被困在这里了
发布于 2013-09-09 20:05:47
当一个人想在同一时间播放不同的声音时,他或她应该确保这些声音不是按顺序显示在队列中,而是使用不同的线程来显示。
在Milsim的例子中,问题就在这里,很明显,他用任务来显示声音,但它们不是在不同的线程中发出的。他用IAsyncAction解决了他的问题。
https://stackoverflow.com/questions/18669047
复制相似问题