Ich habe einen Lade-Sound-Effekt, der 8 Sekunden lang ist, der ausgelöst wird, um nur am Ende jedes Levels in meinem Spiel zu spielen.Der Sound-Effekt stoppt in der Mitte, wenn mehrere Sounds gespielt werden?
Das Problem ist, der Sound-Effekt stoppt auf halbem Weg, wenn andere Sounds zur gleichen Zeit spielen (Laser, Explosionen, etc). Ich habe an anderer Stelle gelesen, dass Sie bis zu 32 gleichzeitige Sounds gleichzeitig spielen können, aber das Spiel kann vielleicht bis zu 7 oder 8 Soundeffekte gleichzeitig spielen. Aber der Auflade-Sound-Effekt hört immer noch auf.
Wenn ich im Spiel nicht schieße und den Aufladungseffekt nur spielen lasse, spielt er den ganzen Weg durch.
ich vorzuladen meine Töne beim Start wie folgt:
-(void)setupSound
{
[[SimpleAudioEngine sharedEngine] playBackgroundMusic:@"Kickshock.mp3" loop:YES];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"explosion_large.caf"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"explosion_small.caf"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"laser_ship.caf"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"powerup.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"railgun.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"metal.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"count.mp3"];
[[SimpleAudioEngine sharedEngine] preloadEffect:@"charge_up.mp3"];
}
-(id)init
{
if((self = [super init]))
{
[self setupSound];
// Rest of other code..
}
return self;
}
und ich sie spielen, wenn nötig (Laser-Schießen, Ende Ebene, Dinge explodieren, etc.):
[[SimpleAudioEngine sharedEngine] playEffect:@"charge_up.mp3" pitch:1.0 pan:0.0 gain:0.4];
I‘ Ich nehme an, dass der Auflade-Sound seinen "Slot" verliert, da andere Sounds spielen? Wie oben erwähnt, habe ich nur 7 oder 8 Sounds, die gleichzeitig abgespielt werden, wenn der Lade-Sound-Effekt abschneidet.
Wenn mein Sound seinen "Slot" verliert, gibt es eine Möglichkeit, dass ich einen bestimmten Sound-Effekt einsperren kann, damit er seinen "Slot" nicht verliert?
Irgendeine Idee, was ich falsch mache oder was ich tun kann, um das zu beheben? Jede Hilfe wird sehr geschätzt! : D Danke fürs schauen.