1

20 個の独立した画像があるのではないかと思っていました。これらすべての画像を含む 1 つのスプライトを使用するだけで、パフォーマンスが向上するか、あまり変わらない場合、パフォーマンスが向上しますか? ところで私はopenglでレンダリングしようとしています

4

2 に答える 2

1

アクティブなテクスチャをあまり頻繁に変更しないという最終的な効果がある場合、通常はパフォーマンスが向上します。

これは、GPU がメイン ストレージと描画の間でテクスチャをキャッシュするためです。テクスチャを変更すると、そのキャッシュがフラッシュされます。同じテクスチャを使用し続けると、キャッシュが効果的に機能し、はるかに遅いメイン ストレージへのトリップを節約できる可能性があります。

電話では、CPU と GPU で物理 RAM を共有するのが普通なので、そのアクセスにはコストがかかります。

于 2012-11-09T02:06:30.993 に答える
1

多くの要因に依存するため、質問は非常に広範ですが、一般的には、リソースを組み合わせるとパフォーマンスが向上します。主な理由は、フレームの描画中にテクスチャの切り替えを実行しないためです。つまり、ハードウェアの状態を変更したり、データを複数回アップロードしたりする必要はありません。

ただし、いくつかの欠点が考えられます: テクスチャ ラッピングを発生させたい場合に失敗する可能性がある、スプライトの不適切なパッキングによりテクスチャ サイズが大きくなる可能性があるなどです。

要約すると:それのために行きますが、賢明です:)

于 2012-11-09T02:08:41.907 に答える