0

我只是在 c++、opengl 和 glut 中有一个小行星游戏项目。我正在尝试使用 minGW 和 Visual Studio Code 中的Windows.hand播放推力船的声音,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,我会遇到同样的错误。

如果有人有任何想法,请发布。

4

0 回答 0