2016年10月23日日曜日

【Fallout4】アンビエントオクルージョン比較(OFF / SSAO / HBAO+)



◆◆ 概要 ◆◆

アンビエントオクルージョン(以後AO)の設定による見た目の違いと、
パフォーマンスに及ぼす影響をまとめました。

※AO (Ambient occlusion)
 環境光が届きづらい所に対して影を落とす技術です。
 
 光源を元に真面目に影を計算しているわけではなく、
 物体同士が隣接していたり、窪んでいたり、穴が開いていたりなど、
 現実世界で比較的光が届きにくそうなところを暗くする仕組みのため、
 仮にまったく光源が無いシーンでも、影が落ちます。


◆◆ AO OFF ◆◆

AOをOFFにした状態です。
当然ながら最も軽いですが、影が少なくなって少し物足りなく感じるかもしれません。


iniで設定を行う場合は、Fallout4Prefs.ini に以下のように記述します。
[Display]
bSAOEnable=0

[NVHBAO]
bEnable=0


◆◆ AO SSAO ◆◆

AOにSSAOを用いる設定です。
物と物の間や、角になる部分などに影が落ちており、立体感が出ています。

 ※画像をクリックすると、AO OFFの状態との比較ができます。
  真ん中の緑色のバーをドラッグし、比較してみてください。

iniで設定を行う場合は、Fallout4Prefs.ini に以下のように記述します。
[Display]
bSAOEnable=1

[NVHBAO]
bEnable=0


◆◆ AO HBAO+ ◆◆

AOにHBAO+を用いる設定です。
SSAOに比べて影が濃くなっていて、より立体感が増しています。

 ※画像をクリックすると、AO OFFの状態との比較ができます。
  真ん中の緑色のバーをドラッグし、比較してみてください。

iniで設定を行う場合は、Fallout4Prefs.ini に以下のように記述します。
[Display]
bSAOEnable=1

[NVHBAO]
bEnable=1


◆◆ 画像比較 ◆◆

以下のリンクから、スクリーンショットの比較ができます。



◆◆ パフォーマンス比較 ◆◆

パフォーマンス面での影響ですが、私の環境(GTX980)では以下のようになりました。


比較した中では、やはりHBAO+が一番重たいですね。
GodRayのLow設定と同じくらいの重さがありそうです。
ただ、見た目への効果は大きいので、 FPSに余裕があれば是非使っていきたい設定です。

SSAOはそれほど重くないようですが、HBAO+に比べれば効果も控えめですね。
それでもOFFよりは良いので、最低限SSAOは適用したいですね。


以上、AOの各設定の比較でした。

2016年10月16日日曜日

【Fallout4】GodRay Ultra設定を軽量化する


◆◆ 概要 ◆◆

ゲーム内でコンソールコマンド "gr" を使用すると、
ゴッドレイの細かい設定を変更することができます。

このコマンドを使用して、
ゴッドレイ設定 "Ultra" の品質を維持しつつ、
なるべくFPSが稼げる設定を探していきます。


◆◆ "gr"コマンドについて ◆◆


 "gr"コマンドには以下のようなオプションがあります。

 gr info
  現在のゴッドレイの設定を表示します。

 gr grid <整数>
  gridの値を変更します。(初期値=64)
  値を大きくするほどゴッドレイの密度が上がりますが、高負荷です。

 gr quality <整数>
  0~3の値を設定します。(0:Low ,1:Middle ,2:High ,3:Ultra)
  ゴッドレイをOFFにしていると、-1 がセットされています。

 gr maxcascade <整数>
  1~3の値を設定します。(初期値=2)

  内部的にどのように使われているのかわかりませんが、
  gridの値と併せて設定する必要があります。

  例)
   gr maxcascade 2 ; gr grid 64 ; と、
   gr maxcascade 1 ; gr grid 24 ; の設定が同程度の負荷になる様子。

   ※計測場所によっては結果が変わるかもしれません。

 gr scale <実数>
  ゴッドレイの光線の長さを設定します。(初期値=1.0)

  ゴッドレイがチカチカする場合は、gr scale 0.7などにすると
  多少目立たなくなります。

 gr on / gr off
  ゴッドレイのON・OFFを切り替えます。

 gr debug <整数>
  ゴッドレイのデバッグモードです。

  0 = デバッグモード無効
  1 = ワイヤーフレーム表示
  2 = ゴッドレイだけ表示

 他にもあるようですが使用しないので割愛します。



◆◆ 検証方法 ◆◆

サンクチュアリヒルズの大木を見上げた状態で、
"gr"コマンドで設定変更、FPSを計測しました。


◆◆ 設定比較 ◆◆


設定1:


 gr grid 4 ;
 gr maxcascade 1;

 描画負荷が GodRay設定 Low と Middle の間くらいまで改善されますが、
 チカチカする感じになってしまいます。

 Ultra設定との比較(YouTube):


設定2:

 gr grid 6 ;
 gr maxcascade 1;

 gridの値を 4 → 6 に変更しました。
 GodRay設定 Middle 程度の負荷になっていますが、
 チカチカした感じが軽減されています。

 Ultra設定との比較(YouTube):


設定3:

 gr grid 8 ;
 gr maxcascade 1;

 gridの値を 6 → 8 に変更しました。
 GodRay設定 High と Middle との間程度の負荷になっていますが、
 さらにチカチカした感じが軽減されています。

 Ultra設定との比較(YouTube):


設定4:

 gr grid 12 ;
 gr maxcascade 1;

 gridの値を 8 → 12 に変更しました。
 GodRay設定 High 程度の負荷が掛かりますが、
 Ultra設定と遜色ないレベルだと思います。

 Ultra設定との比較(YouTube):


設定5:

 gr grid 12 ;
 gr maxcascade 2;

 grid の値のみ変更しました。
 設定1より僅かに軽く(誤差?)、僅かにチカチカするような…(気のせい??)

 Ultra設定との比較(YouTube):


設定6:

 gr grid 24 ;
 gr maxcascade 2;

 grid の値を 12 → 24 に変更しました。
 設定3と結果はほぼ同じです。

 Ultra設定との比較(YouTube):


グラフで比較:

 GodRayの各設定(Low~Ultra)と、
 grコマンドによって設定変更した場合のFPSの比較です。
 


◆◆ 比較まとめ ◆◆

gr grid、gr maxcascade を色々変更してきましたが、
個人的には、gr grid 6; gr maxcascade 1; か、gr grid 8; gr maxcascade 1; あたりが、
FPSを稼ぐことができて良いかと思います。


なお、"gr"コマンドで変更した設定は再起動すると消えてしまうので、
Fallout4.ini に以下のような記述をしておくと良いです。
(Fallout4.ini は \マイドキュメント\My Games\Fallout4 に置かれています)

[General]

sStartingConsoleCommand=gr quality 3;gr grid 8;gr maxcascade 1;