DirectX游戏编程入门——第二部分(游戏编程工具箱) ——播放音频
本系列文章由 net_assassin 整理编写,转载请注明出处。
http://blog.csdn.net/net_assassin/article/category/1100363
作者:net_assassin 邮箱: net_assassin@hotmail.com 期待着与志同道合的朋友们相互交流
音频对于游戏是至关重要的!为了让游戏者沉浸于游戏的虚幻体验中,音效和音乐起了极大的作用,而且在游戏者中建立了情绪反应。
本章在探究DirectSound的同时,也将利用这一机会进一步处理精灵碰撞。
使用DirectSoundDirectSound是DirectX中为游戏处理所有声音输出的组件,它有一个多通道的声音混合器。基本上,只需告诉DirectSound要播放的声音,它会处理所有的细节(包括将这个声音与当前播放中的声音混合在一起)。使用DirectSound创建、初始化、装载及播放波形文件所需的代码比起我们前面所学的位图和精灵代码来说要复杂一些。所以,为了避免重复劳动,这里将把使用Microsoft自己的DirectSound包装器的方法介绍给大家。 DirectX SDK 包括一个称为DXUTsound的实用工具库。最新版的DirectX将这些类藏到了一组文件中:SDKsound.h SDKsound.cpp SDKwavefile.h.由于不一致性问题的存在,所以我创建了一对新的音频文件以便我们自己使用,它们的名称为 DirectSound.h DirectSound.cpp .我们感兴趣的是定义在SDKsound (以前的DXUTsound)中的三个类:CSoundManager 主DirectSound设备CSound 用于创建DirectSound缓冲区CWaveFile 帮助将波形文件装载到CSound缓冲区中