私は、OpenGL ES 2.0 に依存する画像処理プログラムを開発しているため、さまざまなデバイスに展開できます。多くの場合、人々は小さな画像を使用し、これはテクスチャの制限を回避しませんが、各方向に数千ピクセルの大きな画像では、複数のデバイスでレンダリングできない場合があります。
私が最初に考えたのは、画像を小さな正方形に分割し、それぞれを個別にレンダリングすることでした。これは単純なプログラムでは機能しますが、畳み込みやワーピング効果などの隣接するピクセル値に基づいてレンダリングする必要があるタスクでは、これでは十分ではありません.
Photoshop は、多くのエフェクトに対してアプリケーションに OpenGL サポートを追加して、300,000 x 300,000 の寸法機能をどのように維持していますか?
GL_MAX_TEXTURE_SIZE より大きい画像に対して後処理タスクを実行する最も効率的な方法は何ですか?
表示可能な領域のみにレンダリングし、処理のために送信する前にズーム用に画像を再スケーリングしますか? ただし、これには、単純なズームイン/ズームアウトと画像のパンニングのために画像を再処理する必要があります。このアプローチで私が目にする唯一の問題は、画像を完全な品質の画像としてエクスポートする方法がないことです。そのため、この方法は、ユーザーが作業を保存しようとするまでうまく機能します。