私のゲームでは、プレイヤーが左にスワイプして他のプレイヤーが何をしているかを確認できる 2 プレイヤー モードに取り組んでいます。事実上2つのiPhone画面。
私の質問は、画面の外にあるスプライト、パーティクル (つまり、プレーヤー 2 の場合) が、画面上にあるかのようにレンダリングおよび処理されているかどうかです。もしそうなら、cocos2d がこれらを別の方法で処理して、ゲーム全体のパフォーマンスを低下させないようにする方法はありますか? (fps)
私のゲームでは、プレイヤーが左にスワイプして他のプレイヤーが何をしているかを確認できる 2 プレイヤー モードに取り組んでいます。事実上2つのiPhone画面。
私の質問は、画面の外にあるスプライト、パーティクル (つまり、プレーヤー 2 の場合) が、画面上にあるかのようにレンダリングおよび処理されているかどうかです。もしそうなら、cocos2d がこれらを別の方法で処理して、ゲーム全体のパフォーマンスを低下させないようにする方法はありますか? (fps)
オーバーヘッドを下げる唯一の方法は、sprite.visible プロパティを NO にすることです。この場合、描画はまったく計算されません。オフスクリーン スプライトは、可視として設定されている場合に描画されます。また、「FPS」関連の決定を下す前に、実際のデバイスで何が得られるかを確認してください。シミュレーターは、パフォーマンスに関して非常に不十分であることがわかります。
visible
プロパティをに設定するNO
と、実際にオーバーヘッドが削減されます。スプライトが画面の外にある場合でも、スプライト自体は描画されます (つまり、オーバーヘッドを減らすために NO に設定できます)。ただし、visible
プロパティ値に関係なく、すべてのスプライトはメモリなどを消費します。
アニメーションがある場合は、再生を続けます。これらのスプライトのスケジュールを解除して、さらに処理を解放できます。
このvisible
プロパティに関して私が行った質問が役に立つかもしれません: .visible プロパティはパフォーマンスに影響しますか?