影がギザギザになるのを防ぎたい

動画を見るとわかるように設定で影のギザギザ具合が変化する。上手く skyrimPrefs.ini を設定すれば同じような負荷でもギザギザ具合を抑える事もできる。動画出ている設定を参照

http://youtu.be/0VAHDJr9vWg

For mid-high end PCs:

iShadowMapResolution=4096
iShadowMaskQuarter=5
iBlurDeferredShadowMask=4
fShadowDistance=2500

For low-mid end PCs:

iShadowMapResolution=2048
iShadowMaskQuarter=5
iBlurDeferredShadowMask=6
fShadowDistance=2500

追記:動画が消えてしまっていたので類似性のある違う動画を一応紹介


http://youtu.be/0hygJctLq3Q

色々見ると、負荷を下げても綺麗に見せる設定のコツとして、fShadowDistance を少なめにする方法があるらしい。fShadowDistance は影が表示される距離を設定するもので、数値を下げる事で影が表示される距離が近くなる。数値を大きくすると遠くまで影が表示される。影がゆがんでいる場合に遠くまで影が表示されるとギザギザが目立つ上、影を描画する範囲が広いためメモリ使用量などの負荷も高くなる。スペック不足の場合影の品質を落とすことで描画距離を維持するのでさらに影がギザギザに。低スペでも同じ負荷ならば fShadowDistance を低めにして変わりに iShadowMapResolution をあげる方が影の解像度が上がり綺麗に見える(代わりに影の表示される距離が短くはなるけど)。

iBlurDeferredShadowMask は影に入れるぼかしの強さを決める。数値が大きいほど強くぼかすようになる(数値の範囲は 0 ~ 7 or 32)。最大の数値については下の*1を参照。影自体がギザギザでも iBlurDeferredShadowMask を大きめにしておけばぼやけてギザギザを目立たなく出来る。数値を上げた場合に、画面表示にグリッド状の模様が出てしまう現象もあるそうなので、適正な値にしなければ意味はなさそう。逆に影が綺麗に表示される設定の場合は iBlurDeferredShadowMask も低い数値にした方が影が効果的に見えるようだ。ブリーズホームで影が縞々になるのは、暖炉のバグが関係しているらしいので、iniの設定では多少改善する程度になる。

岩などに縞々模様が入る影

地形の岩などに縞々の影が入るケースでは、fShadowBiasScale を大きくすると改善が見られる。fShadowBiasScale が小さいと、地面の凹凸が縞々の陰がつく場合がある。

環境依存もあるかと思うが、個人的な経験では

fShadowBiasScale=0.7

で縞々がほぼ消えた。0.6以下でも縞々にはならないが、ちらつきのある影がでる。数値が小さすぎると ちらつきのある影の幅が狭まり徐々に縞模様のような影が出てきた。

ENB 環境で布地のような粗く付く影

ENB を導入している環境で出る布地のような陰影を持つ影は

UseBilateralShadowFilter=true

で、消えるケースがあった。ENB環境では先に書いた fShadowBiasScale で縞々になる問題は別の影をぼかすエフェクトで消すことも出来る。

*1:日本語のWikiやそのソースと思われる hardocp.com では32と書かれていたが、geforce.com の記事を見ると ”iBlurDeferredShadowMask=0 // Increases the sharpness of shadows. 0 is the best setting; 7 the worst.” と説明されており、7がもっとも大きな数字のような表記になっている。しかも worst と画質的には最も悪いらしい。

参考 – デフォルトの設定の数値

Ultra
    fShadowDistance=8000
    iShadowMapResolution=4096
Low
    fShadowDistance=2000
    iShadowMapResolution=512

関連項目

Skyrim.ini を簡単に編集したい | スカイリム FAQ
http://skyrim.ologies.net/2013/skyrim-configurator/
「ブリーズホーム」の中で影が縞々になる | スカイリム FAQ
http://skyrim.ologies.net/2013/%e5%ae%b6%e3%81%ae%e4%b8%ad%e3%81%a7%e5%bd%b1%e3%81%8c%e7%b8%9e%e3%80%85%e3%81%ab%e3%81%aa%e3%82%8b/