我只是在 c++、opengl 和 glut 中有一个小行星游戏项目。我正在尝试使用 minGW 和 Visual Studio Code 中的Windows.h
and播放推力船的声音,mmsystem.h
然后再放入我的行编译器代码。
g++ GLasteroid.cpp -o GLasteroid.exe -L"C:/MinGW/freeglut/lib" -lglu32 -lopengl32 -lfreeglut -lwinmm -I"C:\MinGW\freeglut\include\GL"
accelerate
当按下 Glut specialKey UP 时,我执行了一个小函数:
void accelerate() //make ship accelerate
{
if (Shipacell == true){
glColor3f(1.0f, 0.0f, 0.0f);
glVertex2f(0.0f, 0.0f);
glVertex2f(0.0f, -0.075f);
glVertex2f(0.01f, 0.0f);
glVertex2f(0.01f, -0.062f);
glVertex2f(-0.017f, 0.0f);
glVertex2f(-0.017f, -0.062f);
glVertex2f(0.024f, 0.0f);
glVertex2f(0.024f, -0.049f);
glVertex2f(-0.035f, 0.0f);
glVertex2f(-0.035f, -0.049f);
//PlaySound(TEXT("sounds/thrust.wav"), NULL, SND_FILENAME);//Lag delay bad, with SND_ASYNC not work
PlaySound(L"\\sounds\\thrust.wav", 0, SND_FILENAME );// got error parameter 1
}
}
看方法一,歌曲播放有延迟很长的延迟和SND_ASYNC
不工作。使用方法 2,我在终端上遇到错误:
In file included from c:\mingw\include\windows.h:62,
from GLasteroid.cpp:8:
c:\mingw\include\mmsystem.h:1561:24: note: initializing argument 1 of 'BOOL PlaySoundA(LPCSTR, HMODULE, DWORD)'
BOOL WINAPI PlaySoundA(LPCSTR,HMODULE,DWORD);
如果我尝试放置所有路径C:\\MinGW\\projetos\\sounds\\thrust.wav
,我会遇到同样的错误。
如果有人有任何想法,请发布。