Sampled Anti-Aliasing」(マルチサンプルアンチエイリアシング)の略だ。 設定できる値は1,2,4,8,rmt。1は事実上「MSAA処理なし」を意味し,MSAAが適用されるのは2以上。値は,「MSAA処理にあたって,何点の深度バッファをサンプルするか」を意味しており,例えば値を4とした場合,いわゆる4x MSAAが適用される。 4x MSAAを例に話を続けると,4x MSAAでは,アンチエイリアシング処理に4個分のサブピクセルを処理して1ピクセル分の結果に集約する。 しかし,4つのサブピクセル位置すべてでピクセルシェーダを動かし,その結果を基にアンチエイリアシング処理を行うSuper Sampled Anti-Aliasing(スーパーサンプルアンチエイリアシング)方式とは異なり,MSAAでは大胆は省略(=手抜き)が行われる。具体的には,「4xサンプルにあたり,ある代表点のサブピクセル位置におけるシェーディング結果(=ピクセルシェーダがシェーダプログラムを実行して出力した結果)を,残る3サブピクセルのシェーディング結果としてしまう」のだ。 一方,Diablo3 RMT,アンチエイリアシング処理時にカギとなる深度バッファ(Zバッファ)のサンプルは4つすべてのサブピクセル位置で行う。なのでアンチエイリアシング効果としての説得力は高い。 当然だが,このオプションの設定値を上げれば上げるほど深度パッファの参照箇所が増えてつまりメモリアクセスが増えてパフォーマンスは下がることになる。 MSAAに関するより詳細な技術解説については筆者の連載バックナンバーを参照してもらえれば幸いだ。 なお,前述のような“手抜き”により,描画品伽瑜辘馑俣趣蛑匾暏筏皮い隡SAAでは,サンプル数を増やしても品伽蛏悉筏摔ぁ¥饯卫疑悉耸兢筏?連の画像で,4x MSAAと8x MSAAとでは,GPU負荷が理論値で2倍異なるにもかかわらず,品伽芜`いはわずかでしかない。 GPUは,テクスチャを読み出すときに,その座標を計算して,当該箇所のテクセル(=テクスチャを構成する画素)を読み出すのだが,それだけではなく,周辺のテクセルや,あらかじめ用意しておいた縮小テクスチャ「MIPMAP」側に用意された対応テクセルまでもを読み出し,それらを総合的に処理して最終的なテクセル値を確定する。CPUが指定アドレスのメモリ内容を読み出すのと比べても,かなり高度な処理が行われるのだ
関連トピック記事:
没有评论:
发表评论