1

2D タイル エンジンのボトム エンドとして OpenGL を使用しています。すべてが 2D の場合、特定の問題を最適化するのは簡単です。たとえば、スクロール。画面の特定のセクションを下からスクロールする必要があることがわかっている場合は、その部分をブリットするだけです。一度に1ピクセル以上移動しています。明示的なハードウェア サポート (古いニンテンドー ハードウェアを考えてください) がなければ、これには多くのピクセル書き込みが必要です。オンチップ bitblt は次善の策です。

基本的に、効率的なハードウェア ブリットとして VRAM テクスチャ レンダーを使用するために GL 呼び出しを最適化する方法を検討しています。

GL にフレームバッファをスクロールさせることは可能ですか、それとも、フレームごとにシーン全体をダブルバッファリングして再レンダリングすることをやめるべきですか?

どうも

4

1 に答える 1

0

少なくとも、フレームごとにテクスチャを使用してフルスクリーンの四角形をレンダリングする方法がわかりません(実際にスクロールしている場合)。グラフィック カードのフレーム バッファ ポインタを移動する機能は、しばらく見ていません。

ただし、各フレームをレンダリングするために必要なシーンの量を制限できます。スクロール シーンをテクスチャとして保持する場合は、オフスクリーン フレーム バッファーにバインドし、その無効化された部分をレンダリングできます。次に、UV 操作を使用して、最終的なフル スクリーンの四角形のブリットを行います。

于 2010-03-17T15:36:49.447 に答える