2010-12-07 3 views
1

私は1つのUIViewとGraphicsContextを使ってiPhoneゲームアプリケーションを開発しています。 どのようにiPhoneのゲームアプリケーションをスピードアップするには?

UIGraphicsBeginImageContext(CGSizeMake(320, 480)); 
CGContextRef contextRef = UIGraphicsGetCurrentContext(); 

がcontextRefで描画:belowsのは、私がやっているものです

UIImage* imageContext = UIGraphicsGetImageFromCurrentImageContext(); 

... call [self setNeedsDisplayInRect]; 

(void)drawRect:(CGRect)rect { 

     [imageContext drawAtPoint:CGPointMake(0, 0)]; 
     // it takes a lot time (about 0.120 seconds) to draw imageContext on iPhone 4 device.... 
} 

問題がimageContextを描画することは、多くの時間を要するということです。約0.12秒以上かかります。 iPhoneデバイスでは、描画イメージに時間がかかります。ですから、問題を解決したり、画像を短時間で描画するためのソリューションを探しています。

誰も時間を減らす方法を知っていますか? iPhoneでゲームを開発するには? App Storeでは、たくさんのゲームがあります。すべてのゲームには適切なスピードがあります。

UIViewを1つ使用してゲームを開発する方法や例をお勧めします。

ありがとうございます!

+0

一般的に私は、あなたのゲームにゲームエンジンを使用することを検討するべきであるというBoneghとlm2sに同意します。これは、ゲームでできることがAPIとパフォーマンスの両方で優れているからです。つまり、drawRect以外のグラフィックスコンテキストになぜ描画しているのだろうと思っています。通常は、drawRectで図面を作成するだけです。既にそこに設定されているグラフィックスコンテキスト内です。 – Ryan

答えて

4

フレームワークを使用して、cocos2dは2dゲームのiphoneで最もよく使用されています。 UIViewとCGContextRefを使用して2dゲームを作っていると思っている場合は、Unityや他のいくつかの3Dフレームワークもあります。

http://www.cocos2d-iphone.org

このフレームワークは、スプライトをレンダリングするOpenGLESを使用して、それが使用する2つの異なる物理エンジンが付属しています(私はBOX2D好む)から助けを得るために非常に忙しく、有用なコミュニティがあります。

幸運を祈る!

+0

Sparrow 2dエンジン(http://www.sparrow-framework.org/)もあります。「彼ら」は理解しやすく、使いやすいと言います。 – lm2s

+0

両方を使用していたのですが、私はまだ、box2dとchipmunkの両方の物理エンジン、賑やかなコミュニティ、たくさんのチュートリアルをGoogleで見つけ出すだけでなく、ダウンロード可能なツールをたくさん作成して、作成に役立てるためにcocos2dを勧めていますあなたのゲーム。例えばZwoptex、Particle Creator、LevelSVG、Inkscape、完全にコメント付きのサンプルファイル。 – Bongeh

関連する問題