- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
读数据到缓冲区://锁定缓冲区BYTE*pSoundPtr1=NULL;BYTE*pSoundPtr2=NULL;DWORDdwSoundSize1,dwSoundSize2;if(FAILED(m_pDirectSoundBuf8-Lock(0,pWaveHeader-DataSize,(void**)pSoundPtr1,dwSoundSize1,(void**)pSoundPtr2,dwSoundSize2,0)))returnfalse;//读数据到缓冲区(文件指针已指向data块后面的声音数据)fread(pSoundPtr1,dwSoundSize1,1,fp);if(pSoundPtr2!=NULL) fread(pSoundPtr2,dwSoundSize2,1,fp);//对缓冲区进行解锁m_pDirectSoundBuf8-Unlock(pSoundPtr1,dwSoundSize1,pSoundPtr2,dwSoundSize2);声音的播放与控制01当声音数据加载到次缓冲区后,就可以调用IDirectSoundBuffer8接口提供的Play函数,将声音播放出来。Play函数实际是将次缓冲区的声音数据送到混声器中,与其他正在播放的声音一起混合,最后输出到主缓冲区自动播放。单击此处添加小标题02HRESULTPlay(DWORDdwReserved1,//保留未用,必须为0DWORDdwPriority,//优先权,一般为0DWORDdwFlags//播放方式);单击此处添加小标题一般设置前两个参数的值为0,最后一个参数取true或false来播放缓冲区的声音,true为循环播放。声音的播放位置,可以通过IDirectSoundBuffer8接口的SetCurrentPosition函数来设置:HRESULTSetCurrentPosition(DWORDdwNewPosition//偏移位置(距缓冲区的开始处));//设置声音的播放位置m_pDirectSoundBuf8-SetCurrentPosition(0);//播放一次if(FAILED(m_pDirectSoundBuf8-Play(0,0,bLoop?true:false)))returnfalse;专题10游戏音乐与音效多媒体程序设计主讲蔡宇辉抛砖引玉如果您在玩一种以跳舞为主的游戏时,您只能看到屏幕上那些上下左右箭头一直在往上跑,但是却不能听到任何的声音,这时,你只能看着那些箭头猛踩踏板,而不能跟着音乐的节拍起舞,那么游戏玩起来还会觉得有趣吗?一个好的游戏,除了有真实而具有震撼力的游戏画面之外,游戏的音乐与音效也是相当重要的部分。像仙剑奇侠传的中国古典音乐,暗黑破坏神的欧美风格的音乐,都给玩家留下了深刻的印象。另外,在很多3D射击游戏中,音效的处理也是相当重要的一个工作,程序员往往需要设计一个真实的3D音效,让玩家根据音效来判断所处的环境。单击此处添加小标题单击此处添加小标题单击此处添加小标题添加标题DirectSound简介声音的播放过程DirectSound的编程步骤3D音效的实现打开率35%25%20%10%DirectSound简介DirectSound是DirectXAudio的一个较底层的部件,提供了丰富的接口函数,实现.wav格式的波形声音数据的播放控制。与一般的WindowsAPI提供的声音播放函数不同,DirectSound可实现多个声音的混合播放,便于在游戏的背景声音下实现各种角色发出声音。DirectSound可充分使用声卡的内存资源,同时也提供了3D声效算法,模拟出真实的3D立体声。次缓冲区1次缓冲区2次缓冲区3混声器(混频器)主缓冲区主缓冲区和次缓冲区声卡或系统内存声卡内存声音的播放过程:若干声音文件数据,装入相应的次缓冲区中。次缓冲区位于声卡或系统内存中,需要事先进行申请。所申请的次缓冲区大小,一般为对应的声音文件大小。将次缓冲区的声音数据输出到混声器进行混频处理,输出数字化的声音数据到主缓冲区。主缓冲区中的声音数据,转换为模拟信号,送入扬声器中进行播放。声音的播放过程声音的播放过程主缓冲区:可以看做是一个DirectSound,是用来播放声音、产生混音效果的区域,它有一个预设的播放格式(8bit、22kHz),而声音文件在播放时便按照这种格式输出。主缓冲区在建立DirectSound对象时自动生成,不过如果需要比默认
您可能关注的文档
最近下载
- 《工程建设标准强制性条文》电力工程部分2016版.pptx VIP
- 2023-2024学年天津市小学三年级数学第一学期期末统考试题含答案.doc
- 2024年广东省深圳33校联考九年级英语试卷(含答案) .pdf VIP
- 2024-2025学年上海市浦东新区九年级上学期期中考语文试卷含答案.docx
- 包材质量承诺书范文.docx
- 经典童话故事宝莲灯.pptx VIP
- 湖南省九校联盟2025届高三第一次联考 英语试卷(含答案详解)原版.pdf
- XXX钢屋架安装技术交底.doc VIP
- IPC7525B2011(CN)Stencildesignguidelines模板设计指南(中文版).pdf
- 个人租房合同(一张纸打印版).docx VIP
文档评论(0)