cocos2d-x初探学习笔记--音乐音效
来源:互联网 发布:手机游戏编程语言 编辑:程序博客网 时间:2024/05/22 18:07
小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man
在游戏中,音乐是一个不可缺少的部分,音乐分为游戏中的长时间的背景音乐和短的音效两种,可以为我们的游戏增加效果。Cocos2d-x支持多种音乐格式mp3,wav等音乐格式
1.背景音乐
要使用一个音乐,首先要预加载这个音乐,预加载的方法如下
SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic( CCFileUtils::fullPathFromRelativePath(MUSIC_FILE) );
MUSIC_FILE就是音乐文件相对Res文件夹的相对路径
然后就可以播放了,播放的方法如下
SimpleAudioEngine::sharedEngine()->playBackgroundMusic(std::string(CCFileUtils::fullPathFromRelativePath(MUSIC_FILE)).c_str(), true);
第一个参数中的MUSIC_FILE就是音乐文件相对Res文件夹的相对路径,然后再转换为绝对路径,第二个参数就是是否循环播放,由于是背景音乐,我们定为true
其他函数
SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();//停止背景音乐,可以代一个布尔型参数,表示是否释放音乐文件
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();//暂停背景音乐
SimpleAudioEngine::sharedEngine()->rewindBackgroundMusic();//重头调用背景音乐
SimpleAudioEngine::sharedEngine()->isBackgroundMusicPlaying()//返回布尔型参数,是否在放着背景音乐
SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume(0.5);//设置音量0.0-1.0
2.音效
使用音效,和使用音乐类似,也需要预加载,用法如下
SimpleAudioEngine::sharedEngine()->preloadEffect( CCFileUtils::fullPathFromRelativePath(EFFECT_FILE) );
EFFECT_FILE就是音乐的相对Res文件夹的相对路径
然后播放就可以了
m_nSoundId=SimpleAudioEngine::sharedEngine()->playEffect(std::string(CCFileUtils::fullPathFromRelativePath(EFFECT_FILE)).c_str());
m_nSoundId=SimpleAudioEngine::sharedEngine()->playEffect(std::string(CCFileUtils::fullPathFromRelativePath(EFFECT_FILE)).c_str(), true);
和背景音乐一样,第二个参数是可选的,如果是true就是循环播放,否则就是只播一次
其他函数
SimpleAudioEngine::sharedEngine()->stopEffect(m_nSoundId);//停止音效,可以选择单独停掉一个音效,通过创建时的m_nSoundId停止
SimpleAudioEngine::sharedEngine()->stopAllEffects();//停止全部音效
SimpleAudioEngine::sharedEngine()->pauseEffect(m_nSoundId);//暂停单个音效
SimpleAudioEngine::sharedEngine()->resumeEffect(m_nSoundId);//重新开始音效
SimpleAudioEngine::sharedEngine()->pauseAllEffects();//暂停全部音效
SimpleAudioEngine::sharedEngine()->resumeAllEffects();//重新开始全部音效
SimpleAudioEngine::sharedEngine()->setEffectsVolume(0.5);//设置音效音量
SimpleAudioEngine::sharedEngine()->unloadEffect(std::string(CCFileUtils::fullPathFromRelativePath(EFFECT_FILE)).c_str());//卸载音效
最后要记住,在程序不需要音乐时,要SimpleAudioEngine::sharedEngine()->end();释放sharedEngine()
刚开始研究此引擎,如有错误之处,希望大家多多指正
- cocos2d-x初探学习笔记--音乐音效
- cocos2d-x初探学习笔记--音乐音效
- cocos2d-x初探学习笔记(24)--音乐音效
- cocos2d-x初探学习笔记(24)--音乐音效
- cocos2d-x初探学习笔记(24)--音乐音效
- cocos2d-x初探学习笔记(24)--音乐音效
- cocos2d-x 音乐音效
- cocos2d-x 音乐音效
- Cocos2d-x 音乐/音效
- cocos2d-x 音乐与音效
- cocos2d-x 音乐以及音效
- cocos2d-x 音乐与音效
- cocos2d-x 音乐/音效设置
- cocos2d-x (音效音乐)SimpleAudioEngine
- cocos2d-x (音效音乐)SimpleAudioEngine
- cocos2d-x 音效音乐 SimpleAudioEngine
- 【Cocos2d-X开发学习笔记】第28期:游戏中音乐和音效的使用
- 我的Cocos2d-x学习笔记(二十)音乐与音效
- cocos2dx-3.0 较 cocos2dx-2.x版本 变化内容
- 从零开始使用GitHub(windows下)
- iptables基础
- 软件工程小结
- 深度围观block:第一集
- cocos2d-x初探学习笔记--音乐音效
- 解决错误:the application was unable to start correctly 0xc00007b,应用程序无法正常启动(0xc000007b)
- 数据库连接池技术原理详解
- c++ sizeof 的使用总结
- 虚拟机中oracle RAC 物理环境搭建
- 软件工程的学习过程1
- 转型升级,尚上漆渠道运作双模式。
- Linux设备驱动之pci设备的枚举
- 海量简单数据不想用SQL?试试高效的嵌入式数据库Berkeley DB JE吧!