对于我的程序,我正在制作pac-man。每当pac-man吃一个点时,我都想播放吱吱的声音。我已经知道如何播放声音,但会造成太多滞后。滞后时间大约为0.5秒,但总体而言,它减缓了我的游戏。有什么建议么?C++播放声音滞后
#include <iostream>
#include <windows.h>
#pragma comment (lib , "winmm.lib") // Used for sound
using namespace std;
int main()
{
PlaySound(TEXT("Sounds\\pacman chomp.wav"), NULL, SND_FILENAME|SND_ASYNC);
system("pause");
}
如果内存服务,您可能需要'waveOutPrepareHeader'和'waveOutWrite'。基本思想是将文件中的声音数据缓冲区加载到内存中,并为播放做好准备。然后当你需要播放它时,它正在等待并准备好立即播放。 –
我该如何去这条路线? – ThatAwesomeCoder
阅读waveOutPrepareheader和waveOutWrite的文档将是一个好的开始(尽管@Ron Kuper也提出了一个很好的观点)。 –