0

最近、プロジェクトを Cocos2d 1.1 から 2.0 に移植しました。これまでのところすべて問題なく動作していますが、iPhone 4 と iPod Touch 4 でフレーム レートが 60 fps から 40 ~ 50 fps に低下することに気付きました。試した他のデバイス (iPad 1 & 3、iPhone 4s)まだ60で走っています。

最初はドローコールが多すぎると思っていましたが、コールを 54 から 17 に減らした後も、両方のデバイスで同じ fps を維持していました。デフォルトの Hello World テンプレートではこの問題は発生せず、コンソールに openGL エラーも発生しないことに注意してください。私のメモリフットプリントは約50MBなので、それも問題ではないと思います. 何か案は?

4

1 に答える 1

0

単純なパフォーマンスの問題があるようです。60 fps で動作する他のデバイス (少なくとも iPad 3 および iPhone 4S) は、iPhone 4 および iPod Touch 4 よりも優れたコンピューティング パワーと優れたグラフィックス プロセッサを備えています。

これは cocos2d 1.1 から 2.0 にアップグレードした後に発生したため、第 4 世代の iPhone デバイスでは OpenGL ES 2.0 コード (シェーダー) が他のデバイスほど速く実行されない可能性があります。また、cocos2d 2.0 自体の問題である可能性もあります。本当に cocos2d 2.0 の機能 (つまりシェーダー) を使用する必要がない限り、最も簡単な方法は単に cocos2d 1.1 に戻ることです。シェーダーを書いていない場合、cocos2d v1.1 は、機能に関しては 2.0 とまったく同じです (現時点では)。

最後に、リリース ビルドのみでパフォーマンスをテストします。デバッグ ビルドを実行すると、ロギングやアサーションなどによってパフォーマンス結果が完全に歪む可能性があります。

于 2012-08-01T21:31:35.410 に答える