スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告|
  3. トラックバック(-)|
  4. コメント(-)

MSAAの代わりにSMAA対応したのでMSAAを廃止してSMAAを使おう

SMAAというアンチエイリアスを実装してみました。

検出したエッジとかの図
拡大

比較図
拡大アンチエイリアスOFFアンチエイリアスON

一時期フリージアでよくアンチできた!勝った!みたいな話題を出してたのでまたかって感じですが、
今まで使っていたのはMSAA(Multisample Antialiasing)というもので、
今回実装したのはSMAA(Subpixel Morphological Antialiasing)といいます。

技術畑の人間ではないので理論はスルーするとして(!)、要点をまとめるとこんな感じ。
・シェーダーでポストフィルタとして処理する。
 → ポリゴン境界だけでなく、半透明テクスチャにも作用する。(抜きの草とか葉とか)
   というかスクショ貼り付けて描画しただけでもこの結果が出せる。
 → (比較的)低負荷。
 → パラメータ変更や、有効無効の切り替えが容易。

・MSAAの制限である「レンダーテクスチャに対しては無効」がなくなる。
 → MRT(マルチレンダーターゲット)が使える様になる(はず)ので、
   歪みあるエフェクトとか、鏡面反射、滝とかガラス窓とかがやりやすくなる。多分。

ちなみに他にも主なアンチエイリアスには SSAA, CSAA, MLAA, FXAAなどがあって、
世代的には今回入れたSMAAが一番新しいみたいです。

割と分かりやすい箇所の原寸比較図。
比較図2

最後に、640*360でレンダリングしてる時の原寸比較図。
キレイにかかりますなぁ。
低解像度での比較図

静止画に効果がでかいアンチですが、じわじわ動いてる時などにチラつかなくなるので
動いてる時の効果も結構でかいです。

シェーダーバージョンが3.0になってしまったのだけは泣き所。
  1. 2012/03/01(木) 15:48:57|
  2. 自作自演|
  3. トラックバック:0|
  4. コメント:0

コメントの投稿

管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://raevatain.blog9.fc2.com/tb.php/1152-896d4120
Map
TweetsWind
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。