SSブログ

Skyrim初心者の戯言:最適なバランス? [Skyrim]

水面の青白さはあきらめましたが、ENBの調整はできる範囲でしつこく地道にやっています。
今回もダラダラと長いですよw

SESFXのFast、Medium、Slowのプリセットをベースに、どのSSAOの組み合わせが品質とパフォーマンスのバランスが取れているのかをいろいろ試してみたのですが、私の環境では結局以前から使っていたLite SSAO (Medium)の設定かなと思っています。
Full SSAO (Slow)もいいのですが、負荷のかかるところでは30fpsギリギリのところで踏ん張っていて、何か今後負荷がかかるMOD等を追加したらあきらめざるを得ない状態になりそうなので、Lite SSAO (Medium)ぐらいがいいのかなと思った次第です。
Quality面ではLite SSAO (Medium)で行くとして、Performance面で1fpsでも向上できないか詰めてみることにしました。

ところでSkyrim 1.5からなのか不明なのですが、マルチスレッドの最適化等やったのでしょうかね?
以前WikiでCore#0しか使っていないから、CPUがボトルネックになってしまうという記述を見た記憶があるのですが、現在CPUのUsageを見てもある程度8スレッドを使い分けているようです。
そのせいなのか以前は40fpsを切るとコマ落ちしたような表示で酔いそうになったのですが、今は30fpsあればスムーズに表示されている感じがします。全く違う要因なのかもしれませんが。

さて話しを元に戻しますが、前回DownloadしたSESFXのマニュアルを見ていたら、こんな記述を見つけました。

personally set anisotropic filtering through the nVidia Control Panel, and leave it off in ENBseries and Skyrim Launcher. 

どうもSESFXの作者さんの環境では、HW側での異方性フィルタリングを使った方がパフォーマンスが良いらしく、nVIDIAのコントロールパネルで指定する異方性フィルタリングを有効にするために、ENBSeriesおよびSkyrim本体の異方性フィルタリング機能を無効にしているようです。
ということはどれかが優先されて処理をしているということではなく、3者がそれぞれ重複した無駄な処理をしているということなのでしょうか?

そういえば私もnVIDIAのコントロールパネルでも、enbseries.ini中でも、SkyrimPrefs.ini中でも異方性フィルタリングを有効にしていました。とりあえずこの作者さんの言うとおり、ENBおよびSkyrim側の異方性フィルタリングは無効にするようにしました。

そこでまたふと思ったのですが、SSAO(アンビエントオクルージョン)もそれぞれの指定が無駄な処理をしているのだろうか?と。
nVIDIAのSkyrim推奨設定をしている身としては、アンビエントオクルージョン:"クォリティ"を選んでいるのですが、enbseries.ini中でも当然ながらSSAOをEnableにしています。
さて、実際はどちらの処理で表示されていて、どちらが無駄な処理をしているのでしょうか? 

排他的なものなのであれば、当然Qualityの高い方の処理だけにしたいのですが、下図のようにnVIDIAのコントロールパネルのアンビエントオクルージョンの項目で選択できる設定は、"クォリティ"か"パフォーマンス"の違いはありますが、結局のところオンかオフの選択ということになります。
このオンとオフというのはどういう意味なのでしょうか?
アンビエントオクルージョン:"オフ"にした場合はアプリケーション側でいくらSSAO処理をしても反映されないのでしょうか? 逆に言えば"オン"にしないとアプリケーション側でのSSAO処理は有効にならないのでしょうか? つまり、重複処理ではなくnVIDIA側での"オン"の指定が前提ということなのでしょうか?
AnbientOcclusion.jpg

そこで、かなり無駄な時間だとは思いつつもこの疑問の答えを求めてやってみましたw
まずは、Quality面での目視による比較です。
HWSWBoth.jpg SWOnly.jpg HWOnly.jpg
     共にSSAO有効             ENBのみSSAO有効        nVIDIAのみSSAO有効

あきらかにnVIDIAのみSSAO有効にした場合は光が明るいというか、軽いというかちょっと不自然な感じがありますね。
共にSSAO有効とENBのみSSAO有効は目で見る限りは変わらないようなイメージで、落ち着いた雰囲気がありますね。
ということは、nVIDIAのSSAOの指定はオンだろうがオフだろうが関係なく、ENB側の処理が優先され、nVIDIA側ではSSAO処理をしていないのでしょうか?

では、この2ケースに絞って、今度はPerformance面で比較してみます。
いつもの私の個人的なベンチマーク場所でのFPSの比較です。
(放置してぐるぐる画面が回っている時の一番低いFPS値のところでのキャプチャー画面です)
FPSHWSWBoth.jpg FPSSWOnly.jpg
     共にSSAO有効             ENBのみSSAO有効

結果、1fps違いますね・・・ ほとんど誤差ですねw
でも、この1fpsが大事なんです!
私の考察としては、ENBとnVIDIA側での無駄な重複処理の結果がこの1fpsに表れていると見ています(キリッ

ということで、nVIDIAコントロールパネルのアンビエントオクルージョンの指定は、グローバル設定(オフ)としましたw


nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:ゲーム

nice! 0

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。