游戏音乐与音效

cocos2d中使用SimpleAudioEngine可以很简单的播放背景音乐和音效

背景音乐默认是循环播放的,音效默认是播放一次,而且一般情况音效都是很短的。

下面我们首先来分析一下SimpleAudioEngine这个类

这个类中有三个属性(backgroundMusicVolume,effectsVolume,willPlayBackgroundMusic)

+ (SimpleAudioEngine*) sharedEngine

获取单例的方法

-(void) preloadBackgroundMusic:(NSString*) filePath

加载背景音乐,通过这个方法可以把游戏中需要用到的背景音乐提前加载好

-(void) playBackgroundMusic(NSString*)filePath;

-(void) playBackgroundMusic(NSString*)filePath loop:(BOOL) loop;

filePath:文件路径(项目中的文件名);loop:播放循环 YES是循环播放 NO是播放一次  缺省了loop则默认为YES

停止背景音乐

-(void) stopBackgroundMusic;

暂停背景音乐

-(void) pauseBackgroundMusic;

恢复播放背景音乐

-(void) resumeBackgroundMusic;

倒回,即重新开始播放背景音乐

-(void) rewindBackgroundMusic;

判断背景音乐是否正在播放

-(BOOL) isBackgroundMusicPlaying

-(ALuint) playEffect:(NSString*) filePath;

ALuint :是无符号整形变量(unsigned int)同义词,即别名。这个返回值表示播放的音效ID。

filePath :文件路径

-(void) stopEffect:(ALuint) soundId;

在这里我们可以通过soundId,来停掉某一个音效,soundId的值是上一个方法获取到的。

预加载音乐文件

-(void) preloadEffect:(NSString*) filePath;

预加载音效文件,在播放的时候,直接根据filePath找到相应的音效播放。预加载可减少响应时间

-(void) unloadEffect:(NSString*) filePath;

释放某一个音效

-(CDSoundSource *) soundSourceForFile:(NSString*) filePath;

这个方法我们可以通过filePath来获取相应的音效的配置信息(CDSoundSource),CDSoundSource属性中有soundId,当我们想要停止某一个音效的时候可以通过这个方法来获取soundId。

-(void) setMute:(BOOL) muteValue

禁声,muteValue 值为YES时没有声音,相反则有声

-(void) setBackgroundMusicVolume:(float) volume

设置背景音乐音量volume这里如果不设置的话默认为1.0f,值越大音量越大

-(float) backgroundMusicVolume

获取背景音乐音量值

-(void) setEffectsVolume:(float) volume

设置音效音量volume这里如果不设置的话默认为1.0f,值越大音量越大

-(float) effectsVolume

获取音效音量值

//下面是常用的方法

加载背景音乐

[[SimpleAudioEngine sharedEngine] preloadBackgroundMusic:@"background.mp3" loop:NO];

播放背景音乐

[[SimpleAudioEngine sharedEngine] playBackgroundMusic:@"background.mp3"];

暂停背景音乐

[[SimpleAudioEngine sharedEngine] puseBackgroundMusic];

继续播放背景音乐

[[SimpleAudioEngine sharedEngine] resumeBackgroundMusic];

停止背景音乐

[[SimpleAudioEngine sharedEngine] stopBackgroundMusic];

播放音效

[[SimpleAudioEngine sharedEngine] playEffect:@"effect1.wav"];

加载音效

[[SimpleAudioEngine sharedEngine] preloadEffect:@"effect1.wav"];

设置噤声

[[SimpleAudioEngine sharedEngine] setMute:YES];

设置音量

[[SimpleAudioEngine sharedEngine] setBackgroundMusicVolume:0.5f];

[[SimpleAudioEngine sharedEngine] setEffectsVolume:2.0f];

cocos2d音效设置相关推荐

  1. cocos2d中,设置层的可视区域

    http://www.cocoachina.com/bbs/read.php?tid=97164 cocos2d中,设置层的可视区域在真机上不管用 -(void) visit{     glEnabl ...

  2. Qt--场景切换和音效设置

    场景切换主要是应用于返回按钮的点击后,当前显示的场景与点击按钮前的场景不在同一个地方,为了使得前后场景出现的位置一致需要调用一个函数,前一个this是下一步要显示的场景的函数,其中的参数是当前的场景的 ...

  3. cocos2d怎么设置屏幕朝向?横屏 or 竖屏设置

    在cocos引擎里面找了好久.没找到相关接口,网上也搜索了好久,最后发现.原来须要依据各个平台分别进行设置. android 改动项目根文件夹 proj.android\AndroidManifest ...

  4. php eq是什么意思,音效设置EQ中那些数字代表什么,EQ怎么设置

    EQ是Equalizer的缩写,翻译成中文就是均衡器的意思,.在winamp,foobar,以至于MP3播放器中都能找到它们.别小看了这些滑块,适当的调节可会使您得到更满意和健康的音质哦!均衡器的模样 ...

  5. 声音均衡器怎么调好听_汽车10段音效最佳设置,手把手教你调节车载音响均衡器...

    几乎每一个车主都希望自己的车载音响能够展现最佳的音效,但是往往事与愿违,车载音响中的均衡器难倒了无数车主,调出来的音效也不符合自己.今天指南君就来教一下大家如何调车载音响均衡器,以及推荐几种个人感觉最 ...

  6. ios中设置app音效音效和震动

    在项目中使用AudioServicesPlaySystemSound 这个接口来进行声音和震动的播放, 当然需要在工程中加入AudioToolBox.framework 我们可以写一个文件来封装声音和 ...

  7. 添加类iOS cocos2d 2游戏开发实战(第3版)

    这两天一直在学习添加类之类的问题,现在正好有机会和大家讨论一下. 第1章 简介 1 1.1 第3版中的新增内容 2 1.2 选择ios版cocos2d的来由 3 1.2.1 收费 3 1.2.2 开源 ...

  8. (译)如何使用cocos2d来制作一个打地鼠的游戏:第一部分

    免责申明(必读!):本博客提供的所有教程的翻译原稿均来自于互联网,仅供学习交流之用,切勿进行商业传播.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作 ...

  9. idea设置中文界面_英雄联盟手游中文翻译--游戏主页设置界面翻译

    英雄联盟手游B测已经开启有一段时间了,此次的测试资格发放数量极多,不知道有没有抢到测试资格呢? 当然目前阶段的测试暂时还是没有中文语言的.熊猫特地为大家带来了英雄联盟手游主页和常用设置页面的翻译. 后 ...

  10. viper4android最新,ViPER4Android FX音效驱动下载-ViPER4Android音效驱动 v2.4.0.1 正式版_手机乐园...

    软件简介 ViPER4Android(V4A)是一款用于Android系统的音效驱动程序,V4A由一个Native Code的驱动库和一个控制面板程序构成. 官方网站: http://vipercn. ...

最新文章

  1. 使用java连接JanusGraph进行操作,hbase报错信息为:Caused by: org.apache.hbase.thirdparty.io.netty.channel.AbstractCh
  2. 还有 13 天,苹果就要关上 HTTP 大门了
  3. javascript操作对象的方法
  4. OpenCASCADE:使用扩展数据交换 XDE之自定义注释note
  5. uni中动态加载class_SpringBoot中使用LoadTimeWeaving技术实现AOP功能
  6. javaweb利用servlet与struts2实现可点击刷新的基础图片验证码
  7. bzoj3732-Network【Kruskal重构树模板】
  8. 贪心算法-区间选点问题-种树
  9. cad怎么卸载干净_CAD无法卸载,又无法安装怎么办?
  10. Linux硬链接与软链接的区别
  11. ASP.NET MVC分页的实现(上)
  12. java批处理框架 pdf_史上最轻松入门之Spring Batch - 轻量级批处理框架实践
  13. linux shell并发执行命令
  14. 遗传算法优化模糊控制规则
  15. 视频批量添加水印的方法
  16. idea + tomcat中文乱码处理
  17. NXP JN5169 ZigBee 3.0开发环境搭建
  18. 查询ip区间的ip地址的sql语句
  19. Elastic Search(搜索引擎)
  20. Go语言操作excel

热门文章

  1. nat64 dns64 linux 内核支持,NAT64与DNS64
  2. myeclipse未能启动服务器,myeclipse启动服务器时,tomcat出错问题
  3. HTML+CSS+JS在线客服对话框迷你版
  4. 单片机学习——看门狗
  5. 嵌入式开发日记(3)——利用Python接收并处理JY61传感器数据
  6. font标签的size属性
  7. 深入 CoreML 模型定义
  8. android录制视频设置分辨率,Android录制视频的全面屏适配
  9. DXP2004/Altium Desinger 自己画元器件和封装,及注意事项
  10. ubuntu20.04设置登录壁纸