今天, 我们来学习cocos2dX里面的音乐音效, 为什么学他呢, 难道你喜欢看无声电影( 旁白: 我就喜欢关着声音玩), 我们不要管旁白了, 她是个疯子

老规矩, 资源准备好:

一首<故宫神思>作为背景音乐, 话说我最喜欢这种调调了, 一个hit.mp3作为背景音效, 话说我百度了好久都没找到其他格式的音效, 将就使用mp3的了, 嘿嘿

嗯, 对了, 先来看看音乐和音效的区别吧:

音乐一般是歌曲, 用来作为背景声音的, 音效一般比较短促, 用来作为打斗效果时或者按下的时候的短促声音

我们来看看常用的函数有哪些:

音乐MUSIC:

preloadBackgroundMusic( 音乐文件);                 //加载音乐

playBackgroundMusic( 音乐文件, bool);     //播放音乐, true代表循环播放, false代表不循环

pauseBackgroundMusic()                                   //暂停

resumeBackgroundMusic()                               //继续

stopBackgroundMusic()                                       //停止

rewindBackgroundMusic()                                 //从头播放

isBackgroundMusicPlaying()                             //是否正在播放

setBackgroundMusicVolume()                            //设置音量

getBackgroundMusicVolume()                           //获取音量

音效EFFECT:

额, 这个和音乐的差不多, 我能不把列出来吗?

还是列出来吧, 我就不注释了, 应该没问题

preloadEffect( 音效文件)

unloadEffect( 音效文件)

playEffect( 音效文件, 是否重复)

stopEffect( 音效ID)

stopAllEffects()

pauseEffect( 音效ID)

pauseAllEffects()

resumeEffect( 音效ID)

resumeAllEffects()

getEffectsVolume()

setEffectsVolume()

嗯, 貌似就差不多了, 我们开始写代码吧:

头文件, 我们写几个回调函数用来控制音乐:

void playMusicCallback(CCObject* pSender);       //播放背景音乐void pauseMusicCallback(CCObject* pSender);     //暂停背景音乐void recoverMusicCallback(CCObject* pSender);   //恢复背景音乐void stopMusicCallback(CCObject* pSender);      //停止背景音乐

cpp文件:

我们创建四个菜单按钮, 用来控制声音:

//创建四个菜单按钮CCMenuItemFont* playBG = CCMenuItemFont::create( "play", this, menu_selector( HelloWorld::playMusicCallback));CCMenuItemFont* pauseBG = CCMenuItemFont::create( "pause", this, menu_selector( HelloWorld::pauseMusicCallback));CCMenuItemFont* recoverBG = CCMenuItemFont::create( "recover", this, menu_selector( HelloWorld::recoverMusicCallback));CCMenuItemFont* stopBG = CCMenuItemFont::create( "stop", this, menu_selector( HelloWorld::stopMusicCallback));CCMenu* pMenu2 = CCMenu::create( playBG, pauseBG, recoverBG, stopBG, NULL);pMenu2->setPosition( ccp( visibleSize.width / 2, visibleSize.height / 2));pMenu2->alignItemsVertically();addChild( pMenu2);

加载音乐文件, 并且设置默认音量:

 SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic( "palaceMemories.mp3");      //加载背景音乐SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume( 1.0);                       //设置默认背景音量

我们来实现四个回调函数:

分别播放背景音乐, 暂停背景音乐, 恢复背景音乐, 停止背景音乐, 嗯, 每个回调函数里面还有一个播放音效的, 点击一次菜单, 就会播放一次

void HelloWorld::playMusicCallback(CCObject* pSender)
{SimpleAudioEngine::sharedEngine()->playBackgroundMusic( "palaceMemories.mp3");{//播放音效SimpleAudioEngine::sharedEngine()->playEffect( "hit.mp3");}
}void HelloWorld::pauseMusicCallback(CCObject* pSender)
{SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();{//播放音效SimpleAudioEngine::sharedEngine()->playEffect( "hit.mp3");}
}
void HelloWorld::recoverMusicCallback(CCObject* pSender)
{SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();{//播放音效SimpleAudioEngine::sharedEngine()->playEffect( "hit.mp3");}
}
void HelloWorld::stopMusicCallback(CCObject* pSender)
{SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();{//播放音效SimpleAudioEngine::sharedEngine()->playEffect( "hit.mp3");}
}

我们来看看效果:

其实也看不见什么效果, 额 只有看看右下角的音量标志证明她在播放了, 今天的代码很简单, 希望大家写一下, 看看效果, 有不明白的地方可以进群讨论:223856254

cocos2dX 之音乐与音效相关推荐

  1. 关于COCOS2D-X 中的音乐与音效应用的备注

    UI在游戏中占有很重要的地位,但吸引玩家的除了这些看得到的界面和动画之外,游戏在后台中播放的背景音乐及游戏中打击.动作等音效的配合则会让游戏更受玩家的喜爱.在Cocos2D-X中也为我们封装了一个跨平 ...

  2. cocos2dX 学习笔记——音乐、音效和进度条

    每个游戏都需要音乐和音效,当然进度条也是必不可少一种,可以用于于技能CD,所以就用代码介绍和实现一下以上三种. .cpp中 #include "FifthScene.h" #inc ...

  3. 音乐、音效素材库,好听的BGM都在这~

    推荐6个超好用的音频素材网站,免费可商用,热门BGM配乐都能找到,自媒体视频剪辑必备!建议收藏! 1.菜鸟图库 https://www.sucai999.com/audio.html?v=NTYxMj ...

  4. QQ音乐银河音效技术实践——音乐重放效果的补偿与修饰

    音效渲染是音频或音乐播放器最为重要的后处理模块之一.LiveVideoStackCon 2022 北京站邀请到腾讯音乐银河音效开发负责人--闫震海,为大家介绍银河音效在QQ音乐播放器中的创新应用,包括 ...

  5. pygame-KidsCanCode系列jumpy-part14-背景音乐及音效

    没有音乐和音效的游戏是没有灵魂的,这回讲解如何处理背景音乐及跳跃音效.加载music及sound的方法,之前已经写过,见:pygame 笔记-8 背景音乐&子弹音效 . 先介绍一个很棒的生成各 ...

  6. 技术答疑丨如何区分游戏短音乐与音效以及配音

    在游戏的声音领域,一般游戏音乐.音效与配音,但是每个类别又有不同的细分,在我们奇亿音乐与游戏厂商的日常沟通中,发现这些问题一直困扰着大家,一起来看看吧. 1.如何区分游戏的音效与配音? 游戏音效也是泛 ...

  7. 游戏音乐/游戏音效/游戏配音优选

    奇亿(北京)音乐有限公司于2011年5月在北京正式成立,是一家专为游戏研发公司和个人游戏研发团队提供最优质的游戏音乐制作.游戏音效制作.游戏配音等服务的专业级制作团队,主要针对PC网络客户端游戏.网页 ...

  8. Qt程序添加音乐和音效,解决QtCreator中给程序添加音乐失败的问题

    Qt程序添加音乐和音效,解决QtCreator中给程序添加音乐失败的问题 最近写了个Qt小游戏,希望添加个背景音乐,却失败了很多次,下面总结一下经验. 添加音乐或者音效一般需要使用multimedia ...

  9. UE4添加音乐、音效

    目录 一.目的: 1.想:UE4添加音乐.音效 二.参考 1. 三.操作:完成 1.前述: 1.导入音乐 1.创建Cue 1.Cue进行设置 1.创建音乐 1.播放和暂停音乐 一.目的: 1.想:UE ...

最新文章

  1. mysql用户权限与安装Linux操作系统
  2. 深入分析Php处理浮点数的问题
  3. 分析PCB技术印制电路板的可靠性设计(z)
  4. js正则限制字符串长度_正则笔记(3)万字长文,慎点。
  5. 百度SEO资源吧emlog模版全套源码
  6. mysql 自动 分库 备份_MySQL分库备份的方法
  7. C# 获取动态类中所有的字段
  8. BZOJ4293 : [PA2015]Siano
  9. RS232接口芯片内部原理
  10. Windows开启SSH连接
  11. 数学建模竞赛国赛模板latex
  12. android 视频 缩略图,安卓平台生成视频缩略图的几种方法
  13. 应版权方要求,无法下载----替代迅雷的下载神器:EagleGet
  14. 普华永道:AI到2030年将带动全球GDP增长14%,中国成最大受益国
  15. *帅帅老师,编写函数,将999-9999整数放入一个数组当中
  16. Java利用数组求某年某日某月是某年的第几天(数组)
  17. 阿卜杜拉国王科技大学的计算机,阿卜杜拉国王科技大学,沙特国王大学开设专业。...
  18. c语言检测邮箱地址,C语言实现电子邮件地址验证程序
  19. asp.net控件,服务器标记的格式不正确问题解决方法
  20. 利用NSA的MS17-010漏洞利用工具攻击Windows7

热门文章

  1. 推荐一本书《亚马逊网络书店传奇》
  2. sql server中的怎么把数值型转换为字符串
  3. html设置径向渐变色,【前端Talkking】CSS系列-css3之径向渐变初探
  4. 实现抖音闪烁效果---OpenCV-Python开发指南(54)
  5. 由浅入深分布式(5)dubbo提供者用内网地址注册provider以及 spring boot admin client用主机名注册spring boot admin server
  6. 阿迪达斯进博会展示首款碳足迹低于3千克运动鞋;霍尼韦尔携30余项产品和解决方案亮相进博会 | 美通社头条...
  7. [ Oracle EBS ] 资产 摊销调整、累计折旧等介绍
  8. mysql复制数据到同一张表
  9. 小程序赚钱快,对不起我只能告诉你这么多!
  10. 计算机图形学 | 欢迎来到图形世界