9

そのため、私は openGL と GPU とグラフィックス全般について多くのことを読んできましたが、トリプル バッファリングは無料でパフォーマンスを向上させるものとして頻繁に言及されています。それが役立つ理由はわかっています。実際には、60、30、20、15 などのフレームレートの選択に制限されることなく v-sync を実行できるため、実際には、たとえば 55fps を達成できます。しかし、実際にこれにはコストがかかりますか? 直観的には、トリプル バッファリングは出力を 1 フレーム遅らせ、すべてに非常にわずかな遅延を追加すると予想します。

4

2 に答える 2

6

Akenine-Möller ほかによる優れた「リアルタイム レンダリング」本 ( http://www.realtimerendering.com/ ) の 835 ページからの引用。ラグを考慮した質問:

「トリプル バッファリングには、ダブル バッファリングよりも大きな利点が 1 つあります。それを使用すると、システムは垂直帰線を待っている間に保留中のバッファにアクセスできます。ダブル バッファリングでは、スワップによってグラフィックス パイプラインが停止する可能性があります。[...]トリプル バッファリングの欠点遅延が 1 フレーム全体まで増加することです. この増加により、キーストロークやマウスまたはジョイスティックの動きなどのユーザー入力に対する反応が遅れます."

于 2010-06-21T06:46:04.550 に答える
6

55 FPS では、1 フレームは 20 ミリ秒を少し下回ります。したがって、完全に無料というわけではありませんが、ほとんどの場合、費用に見合うだけの価値があります.

ただし、15 FPS では、かなり目立つ可能性があります。(ちなみに、これは POS ラップトップです。ほとんどの 3D ゲームは、私にとってはそれくらいの速度で実行されます。いくつかのゲームはさらに遅いです。)

一部の人々は、特にフレーム レートが低い場合に遅延に気付き、トリプル バッファリングが期待どおりに機能しないことがあります。(特に OpenGL では、ハードウェアで十分にサポートされていないものが (潜在的に非常に遅い) ソフトウェア エミュレーションにフォールバックする可能性があります。最近ではあまり問題にならないはずですが、そうです。) したがって、トリプル バッファリングを使用するほとんどのプログラムは、無効にするオプションを含めます。同じことを検討したいかもしれません。

于 2010-06-21T06:14:07.213 に答える