1

レベルが同じ長方形のブロックから構築されているスプライト キットを使用して単純なゲームを構築しています。しかし、多くのブロック (つまり 1000) を追加すると、ゲームが非常に遅くなります (FPS が 20 に低下します)。シーンにブロックを追加する方法は次のとおりです。

-(void)drawLevel
{
    SKSpriteNode *shelf = [SKSpriteNode spriteNodeWithTexture:_initialLevel.earthBoxTexture];
    shelf.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:shelf.size];
    shelf.physicsBody.dynamic=NO;
    shelf.physicsBody.categoryBitMask = platformCategory;

    for (NSValue *positionValue in _initialLevel.boxPositions)
    {
        shelf.position = positionValue.CGPointValue;
        [_platformsNode addChild:[shelf copy]];
    }

    [_world addChild:_platformsNode];
}

_world はメイン シーンの子です。「棚」を一度作成してコピーします。良い FPS を得るにはどうすればよいですか?

アプリは iPhone 5 でテストされました。

4

2 に答える 2