0

ゲームを実装していますが、今は一時停止機能を実装しています。しかし、私はそれを行ういくつかの異なる方法を見てきました。私はこのようなチュートリアルで多くの研究を行いました:チュートリアル

しかし、私はあなたのアプリが本当にこの種のアラートで拒否される可能性があることを見てきました:

UIAlertView の Apple ドキュメントには次のように書かれています。

このクラスのビュー階層は非公開であり、変更してはなりません。

それを行う他の方法は、(私が見たように) UIView を実装することです。しかし、UIalertviews の利点は、一時停止機能が既に実装されていることです。使用せずにすべてのアニメーションなどを一時停止する同じ機能をどのように実行できるかわかりません。

sleep(INFINITY);

このような結果を得るために一時停止メニューと機能を実装するための最良の方法は何でしょう(これは私の引き出しからの写真です):

友達からの一時停止機能

4

1 に答える 1

1

あなたが必要があるかもしれません:

  1. 一時停止モード インジケータの isPaused
  2. ポップオーバー画面

メイン ゲーム ループで最初にすべきことは、BOOL isPaused インジケーターです。これにより、ゲームは一時停止モードにあることを認識します。適切なアクションを実行することで、一時停止モードを他のモードと同様に扱います。他のアクションを完了する必要がある可能性があるため、プロセスを停止するのはあまり良いことではありません。

第 2 に、ポップオーバー スクリーンは、必要な透明度、またはそれ以上のフル スクリーン グラフィックスである場合があります。プログラムで作成された透明度 50% の黒い画像なので、背景を暗くし、ビュー スタックの一番上にアラート ビューを表示できます。

デザインについては少し余談ですが、次の 2 つの部分に分ける必要があります。

  • ゲームパラメータのみを制御するUI
  • ゲームの動作を制御するゲームループ

実際のゲーム ループとコントロールを分けるとよいでしょう。このアラート ビューのようなコントロールは、表示パラメータのみを操作し、他のアクションを呼び出さないようにする必要があります (おそらく CPU の負荷が高くなります)。ゲーム ループは、状態パラメーターに従ってグラフィックを表示するゲームが実行されている間、常に実行される必要があります。

于 2013-03-31T22:26:21.983 に答える