1

かわいいパズル アプリを開発しています - http://gotoandplay.freeblog.hu/categories/compactTangram / - パフォーマンス上の理由から、OpenGL でビューをレンダリングすることにしました。私はそれを学び始めました。本当に基本的な方法でバッファ、頂点、テクスチャを使用できます。

状況: ユーザーが 7 つの puzzlePiece を操作するゲームで、それぞれに 5 つのサブレイヤーがあり、かなりの照明感を得ることができます。ほとんどのテクスチャは 256x256 です。ユーザーは一度に 1 つのピースのみを操作するため、残りはプレイ中に変更されません。グラフィックのないアプリのスケルトン: http://gotoandplay.freeblog.hu/archives/2009/11/11/compactTangram_v10_-_puzzle_completement_test/

質問: それらをどのように整理すればよいですか? 実際のピースの状態を別々のフレームバッファ(?)/テクスチャ(?)で「事前描画」するのは良い考えですか、それともタイムステップですべてのピース/レイヤー(1+7*5=36スプライト)を単純に再描画できますか? 「predraw」を使用する場合、どうすればよいですか? puzzePiece フレームバッファに描画しますか? では、どうすればシーンのフレームバッファに描画できますか? または、テクスチャを「マージ」する簡単な方法はありますか?

私の質問を理解していただければ幸いです。あまりにも薄暗いと思われる場合は、私のブログで実際の作品をレンダリングする方法に関する私の考えをご覧ください (私がやろうとしていることの簡単なフラッシュ実装があります) ここ: http://gotoandplay .freeblog.hu/archives/2010/01/07/compactTangram_072_-_tan_rendering_labs/

4

1 に答える 1

0

テクスチャを処理する一般的な方法は、ゲーム/レベルの開始時にすべての画像を「テクスチャ アトラス」にパックすることです。

テクスチャの最大サイズは 1024x1024 で、iPhone のメモリにはそのうちの約 3 つを保持できます。

これらの「スーパー テクスチャ」にすべての画像がある場合は、大きなテクスチャの関連領域を描画するだけです。これには、テクスチャをバインドする頻度が減り、パフォーマンスが向上するだけでなく、小さな画像を 2 の累乗サイズのテクスチャに配置する必要があるために使用される余分なスペースが削減されるという利点があります。

于 2010-01-28T13:45:46.943 に答える