cocos2dX 音乐和声音效果
今天, 我们学习cocos2dX里面音乐和音效, 为什么学他呢, 难道你喜欢看无声电影( 旁白: 我就喜欢关着声音玩), 我们不要管旁白了, 她是个疯子
老规矩, 资源准备好:
一首<故宫神思>作为背景音乐, 话说我最喜欢这样的调调了, 一个hit.mp3作为背景音效, 话说我百度了好久都没找到其它格式的音效, 将就使用mp3的了, 嘿嘿
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMzY0MjQ5NA==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
嗯, 对了, 先来看看音乐和音效的差别吧:
音乐通常是歌曲, 用来作为背景声音的, 音效一般比較短促, 用来作为打斗效果时或者按下的时候的短促声音
我们来看看经常使用的函数有哪些:
音乐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文件:
我们创建四个菜单button, 用来控制声音:
//创建四个菜单button
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");
}
}
我们来看看效果:
事实上也看不见什么效果, 额 仅仅有看看右下角的音量标志证明她在播放了, 今天的代码非常easy, 希望大家写一下, 看看效果, 有不明确的地方能够进群讨论:223856254
版权声明:本文博客原创文章,博客,未经同意,不得转载。
cocos2dX 音乐和声音效果的更多相关文章
- cocos2d-x 音乐/音效设置
cocos2d-x 游戏中声音 有两种 一种是背景音乐一种是音效 载入音乐 或者音效的时候 我们须要先缓存声音 #include "SimpleAudioEngine.h" usi ...
- 基于jplayer实现歌词同步的JS音乐播放器效果
分享一款基于jplayer实现歌词同步的JS音乐播放器效果.这是一款基于jQuery实现的音乐播放器功能代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <textare ...
- Cocos2d-x可以实现的效果总结
Cocos2d-x可以实现的效果总结 动作(Actions) move移动:moveto/moveby 从一个位置移动到另外一个位置 从一个位置移动多少数量级 rotate旋转:rotateto/r ...
- iOS-自定义Model转场动画-仿酷我音乐播放器效果
周末,闲来无事,仿写了酷我音乐播放器效果: 效果图如下: 实现思路: 1.实现手势处理视图旋转 2.自定义Model动画: 1.手势是利用了一个UIPanGestureRecognizer手势: 注意 ...
- Cocos2d-X中的声音和音效
在玩游戏时都会有各种游戏音,如启动游戏时会有背景音,胜利或者失败会有一些音效.在Cocos2d-X中能够使用CocosDenshion实现各种声音 在使用CocosDenshion之前须要在程序中加入 ...
- 【分享】4412开发板ubuntu 12.0.4播放音乐没有声音解决方法
转自迅为论坛:http://bbs.topeetboard.com 准备工作 1.下载 vim 在命令行上输入 apt-get install vim 下载 vim 2.输入 vim /etc/hos ...
- Cocos2d-X 精灵、动作效果
命名空间宏: USING_NS_CC; 感觉事实上挺鸡肋的. NS_CC_BEGIN. == using namespace cocos2d{ NS_CC_END ; } 推断一个精灵被点击: 1.层 ...
- iOS开发之虾米音乐频道选择切换效果分析与实现
今天博客的内容比较简单,就是看一下虾米音乐首页中频道选择的一个动画效果的实现.之前用mask写过另外一种Tab切换的一种效果,网易云音乐里边的一种Tab切换效果,详情请移步于"视错觉:从一个 ...
- android 摇一摇+震动+声音效果
文章链接:https://mp.weixin.qq.com/s/n6EXvfmpNPtWM1kEnGgwUA 摇一摇红包效果已经是老生常谈的了,利用手机的传感器识别摇一摇,同时过程中进行动画+震动+声 ...
随机推荐
- Android 上实现非root的 Traceroute -- 非Root权限下移植可运行二进制文件 脚本文件
作者 : 万境绝尘 转载请著名出处 : http://blog.csdn.net/shulianghan/article/details/36438365 演示样例代码下载 : -- CSDN : h ...
- sdut 6-2 多态性与虚函数
6-2 多态性与虚函数 nid=24#time" title="C.C++.go.haskell.lua.pascal Time Limit1000ms Memory Limit ...
- [WPF]不规则窗体的实现
Microsoft Expression Design 4 导入做好的login.Png图片 调整美工板大小 导出,右边格式为XAML WPF 资源字典,实时效果为XAML效果 文件名login.xa ...
- 高速幂 POW优化
#include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...
- SICP 1.20经验
1.20 两者之间的主要区别是,使我们明白的操作顺序. 网上找一些答案,都死了扩大. 我们所从事的IT的. 展开搞死人IT实践. 首先考虑应用程序 我们得到 gcd(206, 40) -> gc ...
- Linux日志清除
因为数据要求.经常需要抓住和筛选过滤数据,大概花了7 8个月.改变了机旁数据.重新开始,发现"No space left on device" 解决方法: 直接删除日志(简单粗暴) ...
- 重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree
原文:重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree [源码下载] 重新想象 ...
- kNN(K-Nearest Neighbor)最近的分类规则
KNN最近的规则,主要的应用领域是未知的鉴定,这一推断未知的哪一类,这样做是为了推断.基于欧几里得定理,已知推断未知什么样的特点和最亲密的事情特性: K最近的邻居(k-Nearest Neighbor ...
- 重新想象 Windows 8 Store Apps (33) - 关联启动: 使用外部程序打开一个文件或uri, 关联指定的文件类型或协议
原文:重新想象 Windows 8 Store Apps (33) - 关联启动: 使用外部程序打开一个文件或uri, 关联指定的文件类型或协议 [源码下载] 重新想象 Windows 8 Store ...
- C++编程有趣的标题1 于1~9填写的运算结果的中间符号等于100
于1 2 3 4 5 6 7 8 9将九个数字"+"要么"-"符号使得结果100,编程的所有组合. 注意:数字顺序不能改变 <pre name=" ...