Cocos2d / Spritebuilder v3滞后碰撞

时间:2015-04-03 08:24:48

标签: ios objective-c cocos2d-iphone spritebuilder

我在屏幕上扔了很多物体(每0.1秒一个沙滩球)并将它们朝向一个盒子滑动,球在离开屏幕或击球后被回收。我遇到的问题是当多个球撞到盒子时,帧速率急剧下降。我不确定是什么让这种情况发生。是否有更好的方法来执行以下操作,以便它不会滞后?我使用默认的cocos库来播放声音。

-(void)ccPhysicsCollisionPostSolve:(CCPhysicsCollisionPair *)pair can:(CCNode *)nodeA wildcard:(CCNode *)nodeB {
    if([nodeB.physicsBody.collisionType isEqualToString:@"hit"]){
        [[_physicsNode space] addPostStepBlock:^{
            [self remove:nodeA];
        } key:nodeB];
    }else if([nodeB.physicsBody.collisionType isEqualToString:@"floor"]){
        [[_physicsNode space] addPostStepBlock:^{
            [self remove:nodeA];
        } key:nodeB];
    }else {
        [self playSound:@"collide.mp3" bg:YES];
    }
}

0 个答案:

没有答案