第四十一章 2D游戏——优化:增加声音

IrrKlang是一个可以播放WAV,MP3,OGG和FLAC文静的高级二维和三维声音引擎和音频库。
下载地址如下:http://www.ambiera.com/irrklang/downloads.html
只需要引入irrKlang的头文件,将他们的库文件(.lib)添加到链接器设置中,并将dll文件复制到适当的目录下,一般是和.exe放在同一目录下。
期中如果要加载MP3文件,需要引入ikpMP3.dll文件。
创建irrKlang::ISoundEngine,用createIrrKlangDevice初始化它并使用这个播放音频:

#include 
using namespace irrklang;

ISoundEngine *SoundEngine = createIrrKlangDevice();

void Game::Init()
{
    [...]
    SoundEngine->play2D("audio/breakout.mp3", GL_TRUE);
}

创建了一个SoundEngine,用于管理所有与音频相关的代码。一旦我们初始化了引擎,便可以调用play2D函数播放音频。第一个参数为文件名,第二个参数为是否循环播放。
如果发生一些事件后进行播放音乐,需要新增触发场景:

void Game::DoCollisions()
{
    for (GameObject &box : this->Levels[this->Level].Bricks)
    {
        if (!box.Destroyed)
        {
            Collision collision = CheckCollision(*Ball, box);
       

你可能感兴趣的:(OPGENGL,游戏,c++,开发语言)