さまざまなアンチエイリアシング/マルチサンプリング設定の違いは何ですか?



What Are Differences Between Different Anti Aliasing Multisampling Settings



解決:

「AAはオンかオフか」以外の理由で、これは素晴らしい質問です。さまざまなアンチエイリアシングモードすべてのパフォーマンスへの影響については考慮していませんでした。

So Many AA Techniques、So Little Timeには、3つの「メイン」AAモードの基本的な説明がありますが、最近のほとんどすべてのAAは、MSAAまたはそのいくつかのひねくれた最適化バージョンです。



  1. スーパーサンプルアンチエイリアシング(SSAA)。 この本の中で最も古いトリック-フォワードレンダリングまたは遅延レンダリング、アルファカットアウトのアンチエイリアス、高異方性でのテクスチャサンプリングの向上など、ほとんどどこでも使用できるため、ユニバーサルとしてリストします。基本的に、画像をより高い解像度でレンダリングし、完了したらフィルターを使用してダウンサンプリングします。シャープなエッジは、サイズが小さくなるとアンチエイリアス処理されます。もちろん、人々がSSAAを使用しない理由があります。 それは大金がかかります 。フィルレートの請求が何であれ、最小限のSSAAでも4倍になります。

  2. マルチサンプルアンチエイリアシング(MSAA)。 これは、最新のグラフィックカードのハードウェアに通常あるものです。グラフィックカードは、最終画像よりも大きいサーフェスにレンダリングされますが、サンプルの各「クラスター」(最終画面では1つのピクセルになります)をシェーディングする場合、ピクセルシェーダーは1回だけ実行されます。フィルレートを大幅に節約しますが、それでもメモリ帯域幅を消費します。シェーダーは1xで実行されるため、この手法ではシェーダーからの効果をアンチエイリアスしません。そのため、アルファカットアウトはギザギザになります。これは、フォワードレンダリングゲームを実行するための最も一般的な方法です。 MSAAが最終的な画像サイズに「解決」(縮小)された後に照明の決定が行われるため、MSAAは遅延レンダラーでは機能しません。



  3. カバレッジサンプルアンチエイリアシング(CSAA)。 NVidiaからのMSAAのさらなる最適化[ed:ATIには同等のものがあります]。シェーダーを1xで実行し、フレームバッファーを4xで実行することに加えて、GPUのラスタライザーは16xで実行されます。したがって、デプスバッファはより優れたアンチエイリアシングを生成しますが、生成されたブレンディングの中間の色合いはさらに優れています。

このAnandtechの記事には、AAモードの優れた比較があります。 比較的 ATIおよびNVIDIAの各モードのパフォーマンスコストを示す最近のビデオカード(これは1920x1200です):

--- MSAA --- --AMSAA --- --- SSAA ---なし2x4x 8x 2x 4x 8x 2x 4x 8x ---- ---------- ------ ---- ---------- ATI 5870 53 45 43 34 44 41 37 38 28 16 NVIDIA GTX 280 35 30 27 22 29 28 25

だから基本的に、あなたはパフォーマンスを期待することができます 損失 の..



  • no AA → 2x AA

    約15%遅くなります

  • AAなし→4xAA

    約25%遅い

確かに、ゼロ、2倍、4倍、8倍のアンチエイリアシングの間には目に見える品質の違いがあります 。また、微調整されたMSAAバリアント、別名「アダプティブ」または「カバレッジサンプル」は、ほぼ同じパフォーマンスレベルでより良い品質を提供します。ピクセルあたりの追加サンプル=高品質のアンチエイリアシング。

ピクセルのAAサンプリングとMSAAサンプリングを比較するグラフィック

各カードのさまざまなモードを比較します。ここで、「モード」は各ピクセルの生成に使用されるサンプルの数です。

モードNVIDIAAMD -------------------- 2 + 0 2x 2x 2 + 2 N / A 2xEQ 4 + 0 4x 4x 4 + 4 8x 4xEQ 4 + 12 16x N / A 8 + 0 8xQ 8x 8 + 8 16xQ 8xEQ 8 + 24 32x N / A

私の意見では、AAの8倍を超えると、違いを確認するには、ワシの目を亀裂に向ける必要があります。合理的にできる「安い」2xおよび4xAAモードを持つことには確かにいくつかの利点があります 近似 ただし、パフォーマンスに影響を与えることなく8倍。これは、パフォーマンスと視覚的な品質の向上に最適な場所です。


この記事を整理すれば、探している情報のほとんどを収集できる可能性がありますが、関連する部分を要約してみます。

まず、MSAAはスーパーサンプリングアンチエイリアシング(SSAA)の一種であることを理解する必要があります。 SSAAは、FSAAとも呼ばれ、画像をより高い解像度でレンダリングすることにより、画像から「ジャグ」を削除します。

スーパーサンプリングによるフルシーンアンチエイリアシングとは、通常、各フルフレームがディスプレイ解像度の2倍(2倍)または4倍(4倍)でレンダリングされ、ディスプレイ解像度に一致するようにダウンサンプリングされることを意味します。したがって、2x FSAAは、各フレームの単一ピクセルごとに4つのスーパーサンプリングされたピクセルをレンダリングします。より大きな解像度でレンダリングするとより良い結果が得られますが、より多くのプロセッサパワーが必要になり、パフォーマンスとフレームレートが低下する可能性があります。

MSAAはFSAAのより効率的な形式ですが、乗数は大まかに同じ意味を持ちます。これは(おそらくご存知のとおり)、乗数が高いほど良い結果が得られますが、より多くの処理能力が必要になることを意味します。

CSAAはSSAAのさらに効率的な形式であり、高度な3Dマジック(本当に知っておく必要がある場合は論文を読んでください)を使用して、より良い結果を提供します。

要約すると、CSAAは、8倍または16倍のMSAAの品質に匹敵するアンチエイリアス画像を生成しますが、標準(通常は4倍)のMSAAに比べて最小限のパフォーマンスヒットしか導入しません。

本質的に、乗数を等しくすると、MSAAはCSAAよりも優れた結果を生成します(ただし、結果はそうではないことを意味します) 大幅 より良い)、しかし処理能力部門にかなり多くを要求するでしょう。

QCSAAは単純にCSAAであり、アンチエイリアシングの実行に使用されるサンプルポイントの数が2倍であるため、明らかにQCSAAの方がCSAAよりも優れています。

ウィキペディアのスーパーサンプリングの記事は、実際には、サンプルが多いほど精度が高くなる理由を示す優れた画像を提供しています。

複数のサンプル

とはいえ、DiRT2がアンチエイリアシングオプションを一覧表示する順序は、控えめに言っても複雑に見えます。乗数が8倍以上になったら、個人的に違いがわかるとは思えないので、パフォーマンスの向上のためにCSAA / QCSAAに固執します。

最後に、特定の単純な画像(最初のリンクの記事から)でのさまざまなテクニックの素晴らしい比較ショットを次に示します。

アンチエイリアシングの結果


NVIDIAは、別のアルゴリズムであるFXAA(高速近似アンチエイリアシング)を作成しました。現在使用されているMSAA、CSAA、およびそれらのバリエーションとは異なり、ピクセルレベルで機能し、ジオメトリに触れることはありません。ギザギザのエッジを見つけて滑らかにします。それは他よりも速いです。 FSAAと同様に、アルファチャネル、シェーダーなどに問題はありません。ただし、結果はよりぼやけます。

FXAAには2つの用途があります。1つはAAが必要な場合ですが、MSAA / CSAAのペナルティはハードウェアに対して高すぎます。次に、ゲームがアルファとシェーダーに大きく依存していて、ハードウェアがFSAAに対して十分に敬虔ではない場合。

エイリアス、4xMSAA、FXAA:

FXAAの比較