8

デフォルトのフレームバッファと比較して FBO を使用すると、視覚的な結果が異なるという問題があります。

これを色の選択に使用するため、OpenGL シーンをフレームバッファ オブジェクトにレンダリングします。問題は、シーンをデフォルトのフレームバッファに直接レンダリングすると、画面上の出力が非常に滑らかになり、オブジェクトのエッジがアンチエイリアス処理されたように見えることです。シーンを FBO にレンダリングし、その後出力を使用してビューポート全体にまたがるクワッドをテクスチャリングすると、オブジェクトに属するすべての色付きピクセルを簡単に確認できる非常にハードなエッジがオブジェクトに表示されます。

良い:

dtizcto7.png

悪い:

wy7hg754.png

現時点では、この理由が何であるかはわかりません。私はある種のアンチエイリアスを使用していません。

システム:
Fedora 18 x64
Intel HD Graphics 4000 および Nvidia GT 740M (同じ結果)

編集1:

Damon と Steven Lu が述べたように、おそらくシステムによってデフォルトで有効になっているある種のアンチエイリアシングがあります。これまでのところ、この機能を無効にする方法がわかりませんでした。
問題は、この設定がデフォルトのフレームバッファにのみ影響し、FBO によって処理されるものではない理由に興味があったことです。FBO のアンチエイリアス エッジも取得するには、おそらく独自の AA メソッドを実装する必要があります。

4

1 に答える 1

7

シーンをカスタム FBO に描画すると、外部で定義された MSAA レベルは適用されなくなります。FBO を構成して、途中でサンプル レベルの数を設定するマルチサンプル テクスチャまたはレンダー バッファー アタッチメントを設定する必要があります。こちらが参考になります。

于 2013-05-14T13:17:09.293 に答える