-1

弾丸が絡むゲームを作っています。その機関銃なので、同時に複数の弾丸が画面に表示されます。1つの弾丸のプロパティとアクションのコードを記述し、1つの弾丸の複数のインスタンスのように、それらすべてに適用するにはどうすればよいですか?

4

2 に答える 2

1

サブクラス化を試しましたUIImageViewか? そうすればcreateBullet、サブクラスを作成UIImageViewして画面に追加する関数を持つことができ、サブクラスにはアニメーションなどのための関数とプロパティを含めることができます...

于 2012-06-25T19:10:26.190 に答える
1

ゲームを作成する際の重要なポイントは、スプライトの概念です。つまり、グラフィカルな表現を持ち、動き回ることができる軽量のオブジェクトです (衝突の管理など)。

Core Animation を使用して CALayers の上にスプライトを実装しようとするか、 Cocos2D のようなゲーム フレームワークを使用することを決定することができます

最初のアプローチについては、この短いチュートリアルをご覧ください。これは、UIImageViews を使用してスプライトを実装する場合にも役立ちますが、CALayer は軽量であり、UIView はそうではないことに注意する必要があります。

弾丸を複製するという問題に関しては、基本的に重要な提案は、メモリ内の同じ画像を複数回複製することを避けるために、何らかの形式のキャッシュを使用することです。UIImage便利なコンストラクターを使用すると、クラスで非常に基本的なキャッシュ メカニズムを使用できますimageNamed

繰り返しになりますが、優れたパフォーマンス (40 ~ 60 fps など) の本格的なゲームを作成する場合は、Cocos2D を使用することをお勧めします。Cocos2D は、シンプルなインターフェイスにラップされた Open GL グラフィックスのすべての機能を提供します。

于 2012-06-25T19:13:26.643 に答える