1

どうすればいいですか?

UIViews (nib ファイル) の 1 つに、ImageView と、フルスクリーンの Cocos2d シーンを開始するボタンがあります。そのシーン内から、それを閉じてUIViewに戻りたいので、ユーザーは後でシーンを再度開くことができますが、ImageViewの別の画像から(そしてシーンの別のコンテンツで)開きます。

ただし、初めてシーンを「閉じる」と、すべてのタッチ イベントに対するアプリ全体の反応が大幅に遅くなります。シーンがオンである限り高速に動作しますが、閉じるとパフォーマンスが低下します。

もう一度再開できるように、シーンを適切に閉じるにはどうすればよいですか? 私は多くのコードサンプルを閲覧しましたが、どこでもreplaceWithScene:newScene.

4

1 に答える 1

0

UIScrollView を Cocos2D ゲームに組み込もうとした人なら誰でもわかるように、実行中の openGL レイヤーを収容する viewController に UIView を追加すると、アプリの速度が低下します。シーンを閉じようとしていますが、アプリケーションのスケジューラとは別に独自のスケジューラを実行している CCDirector を停止していない可能性があります。CPU の優位性をめぐって争うとき、より多くの電力を必要とする頻度が高い OpenGL が常に勝利します。

cocos2D と OpenGL を完全にシャットダウンしていることを確認してください。[[CCDirector sharedDirector] 一時停止] を呼び出しただけでも。

于 2011-08-16T04:53:50.817 に答える