http://rastertek.com/のチュートリアルを使用して、C++ で DirectX 10 2D エンジンに取り組んでいます。私のスプライト システムはhttp://rastertek.com/dx10tut11.html に基づいており、サイズが 1920x1080 の背景テクスチャをレンダリングしようとしました。
私が抱えている問題は、FPS が 3000 から 1800 に低下することですが、小さなテクスチャを約 2800 までしか描画しない場合です。大きなテクスチャを描画すると常にパフォーマンスに影響があることはわかっていますが、これをかなり最適化する方法が必要です。 . 最初は、頂点バッファーが動的であることと関係があると思いましたが、デフォルトのものに変更してもパフォーマンスは最適化されませんでした。シェーダー コードは非常に単純です。ビュー マトリックスに対する頂点の位置を計算し、ピクセル シェーダーがテクスチャ座標を使用してそれらを描画します。DirectX 10 に含まれる D3DXSPRITE システムのみを使用することを考えていましたが、DirectX 11 で削除されたため、使用しないことにしました。
この長い説明の後、私の質問は次のとおりです。コードを最適化して大きなテクスチャを描画するにはどうすればよいですか? 使用することをお勧めするソリューションはありますか?