10
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

UnrealEngine AntiAliasingの比較 FXAA・SMAA・TAA・TSR・FSR2.1

Posted at

環境:UnrealEngine5.1.0

はじめに

UnrealEngineには標準、プラグイン、エンジン改造によって色んなAAが選択できます。
いっぱいあってどれがいいのかよく分からない!
ということで調べてみました。

それぞれ簡単に説明

  • FXAA(Fast ApproXimate Anti-Aliasing)
    昔からよく使われてきたAAで若干ジャギが残るが処理が軽くて問題が起きにくい
    UEの標準機能

  • SMAA(Enhanced Sub-pixel Morphological Anti-Aliasing)
    FXAAの発展形らしい。FXAAより綺麗でそこそこ軽いらしい
    エンジン改造で追加可能:https://forums.unrealengine.com/t/enhanced-subpixel-morphological-anti-aliasing-smaa-for-ue5/642606

  • TAA(Temporal Anti-Aliasing)
    とても綺麗にジャギを取ってくれるけれど前フレームの映像を使って処理するので動くと残像が出やすい
    UEの標準機能

  • TSR(Temporal Super-Resolution)
    解像度を下げて描画されたものをアップスケールする手法、TAAより残像が出にくい
    UE5でないと使えない

  • FSR2.1(FidelityFX Super Resolution)
    AMDが2022年に発表したアップスケールする手法。AMD以外のGPUでも使える。UE4でも使える。新しい技術って感じで楽しい
    プラグインで追加可能:https://gpuopen.com/learn/ue-fsr2/

見た目の比較

比較.png

AA無し ジャギジャギ
FXAA 坂道の三角の部分あたりに少しジャギが残って見える、縞模様テクスチャの斜めが綺麗に出てない
SMAA 天井のラインに少しジャギが残っているようにみえるけど縞模様テクスチャは綺麗、少しボケて見える
TAA 十分綺麗だけど少しボケて見える、地面の横ラインが少し薄くなっている
TSR TAAよりラインがちゃんと出てる感じする
FSR2.1 地面の横ラインが消えている
FSR2.1+Sharpness シャープネス設定に1.0入れた場合、ボケがなくなっていい感じ!静止画だと一番いいかも

動いたときの印象

・FXAA、SMAA:問題なし
・TAA、TSR、FSR:すこしぶれて見える

ディザとの相性

  • TAA ディザの奥の絵に汚い残像が出ます。ぶつぶつがひどく汚く見えます
    r.TemporalAACurrentFrameWeightの設定で軽減できるらしいです。
    image.png

  • TSR 残像が出ますがTAAより少しましに見えます。5.0では汚かったのが5.1で改善してる?
    image.png

  • FSR 溶けた感じの残像が長く出るように見えます。ただ、実際のゲームで使ってみると意外と気にならないレベルでした。TAAよりいい
    image.png

  • SMAA FXAAの発展形らしいのになぜか残像がでます。これを使う場合はディザのマテリアルにDitherTemporalAAを使わず自前でやったほうがいいかもしれない。
    image.png

FSR2.1 使うときの注意点

  • 配布されているプラグインはUE5.0用です。
    ソースからビルドした5.1に入れて適当にエラーを直したら5.1でも動きました。
  • 明るいところにチラツキが出る場合は「Auto Exposure」は有効にすると軽減されます。
  • NintendoSwitchでパッケージ作る時にシェーダーコンパイルでエラーがでる時は以下のように書き換え必要
    FSR2TemporalUpscaler.cpp
return IsFeatureLevelSupported(Parameters.Platform, ERHIFeatureLevel::SM5);

return IsFeatureLevelSupported(Parameters.Platform, ERHIFeatureLevel::SM5) && IsPCPlatform(Parameters.Platform);

image.png

まとめ

アクションゲームなど動きが激しいゲームでは静止画だけではなく動かして確認してください。
壁やキャラを透過させる時にディザを多用する場合はディザ越しに見たときの見た目も確認したほうがいいです。

個人的なおすすめは

  • 綺麗さと安定性でTSRが1番。UE5ならこれ!
  • 多少ディザごしに残像が出るけどシャープなところがいいのでFSRが2番。UE4ならこれ!
  • アクションゲームとか動きが激しいとやっぱりブレが気になるのでそのあたりに強い3番SMAA、4番FXAA
  • 問題が多いのでTAAは5番

こんな感じです。参考になればうれしいです。

元画像

  • AA無し
    0None.png

  • FXAA
    0FXAA.png

  • SMAA
    0SMAA.png

  • TAA
    0TAA.png

  • TSR
    0TSR.png

  • FSR2.1
    0FSR.png

  • FSR2.1+Sharpness
    0FSR+Sharpness.png

10
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?