如何为游戏中所有当前的playig声音和音乐创建慢动作效果?我正在使用cocos2d v2.1和ObjectAL。
我可以为调度程序设置时间刻度,但我如何才能同时为声音做这个?
答案 0 :(得分:1)
保持对每个声音和bg输出的CDSoundSource
的引用:
CDSoundSource *bgMusic = [[SimpleAudioEngine sharedEngine]soundSourceForFile:@"mysong1.mp3"];
[mySoundArray addObject:bgMusic];
然后创建一种方法,以预定的时间间隔减少所有引用的间距:
-(void)testUpdate:(ccTime)dt
{
float myRampVal = 0.05f;
float finalPitch = 0.5f;
for(CDSoundSource *sound in mySoundArray)
{
sound.pitch -= myRampVal;
if(sound.pitch < finalPitch)
{
sound.pitch = finalPitch;
}
}
}
如果您想降低音高,请致电以下人员安排:
[self schedule:@selector(audioDownRamp:) interval:0.1f];