我想为场景(Scene)和人物(Character)添加背景音乐,然后在人物做动作的时候让音乐停止。
需要解决的问题是:
1. 同时运行两种背景音乐文件,然后停止与文字变化有关的文件
2. 声音效果可以循环播放
上面的哪个选择可能实现呢?
原问题:Cocos2d play 2 different background music files or loop playEffect
我想为场景(Scene)和人物(Character)添加背景音乐,然后在人物做动作的时候让音乐停止。
需要解决的问题是:
1. 同时运行两种背景音乐文件,然后停止与文字变化有关的文件
2. 声音效果可以循环播放
上面的哪个选择可能实现呢?
原问题:Cocos2d play 2 different background music files or loop playEffect
答:James Webster
(最佳答案)
既然是用cocos2d,我建议你可以用其中的SimpleAudioEngine。如果用SimpleAudioEngine,就不可能运行两种背景路径(background track),但可以通过一些细微的调整完成循环效应:
提供一种a -(int) playEffect:(NSString*) file loop:(BOOL) loop的方法
在这种方法中,你需要找出与控制声音效果有关的ALUInt,借鉴它的工作原理,停止背景音乐。
提供a -(void) stopEffectWithHandle:(int) handle的方法,然后将它添加至OpenAL中,阻止音乐继续。
下面是有关循环效果的代码:
如下是阻止这种循环继续的代码:
答:Firula
我通过this forum post中的方法解决了这个问题,添加背景音乐的代码如下:
如果想要停止这种背景,可以: