cocos2d中的ObjectAL慢动作效果

时间:2014-03-15 16:16:27

标签: cocos2d-iphone scheduler objectal

如何为游戏中所有当前的playig声音和音乐创建慢动作效果?我正在使用cocos2d v2.1和ObjectAL。

我可以为调度程序设置时间刻度,但我如何才能同时为声音做这个?

1 个答案:

答案 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];