5
みなさんこんばんわ
慧音2
 
めずらしく連投です。
 PC版ダークソウル1用の高画質MOD「DSfix」についての記事です。
前の記事でお話したとおり、現在では入手困難なPC版ですが
この「DSfix」はかなりクセがある、というか安定して起動しないので
設定について書いておこうと思います。
持ってる方はごく少数とは思いますが、参考になれば幸いです。

 DATA 2015-09-23 19-10-08-294
動画に撮る準備のために、設定をいろいろ見直してたんですが
だいだい決まってきたので、安定動作する設定を書きます。
まずうちのPCのスペックとDSfixのバージョンですが

CPU:Core-i7 3.5GHz
メモリ:32768MB
グラボ:GeForce GTX760 
OS:Windows7 pro
DSfix:バージョン1.9&日本語用DINPUT8.dll

こうなってます。 
特にDSfixバージョン1.9は、このバージョンじゃないと起動しませんでした。
日本語wikiにあるバージョン2.2では60FPS設定で動かなかったです。
ちょっと難しいかもしれませんが、バージョン1.9あたりのバージョンをお探しになることをおすすめします。
どうしても入手困難で、その旨コメントがあった場合、個人用UPローダーにUPします。
DATA 2015-09-23 19-10-46-131
 最新のGeForceのドライバに「DSR」という設定があるんですが
Dynamic Super Resolution」の略らしいんですが
要するにGeDoSaToの設定で説明した、ダウンスケール・ダウンサンプリングのことです。
モニターより高い解像度で一度計算して、それをモニターサイズに縮小表示することによって
画質を上げる効果ですね。
このダークソウル1のMOD「DSfix」でも同じことができるので、それを使いました。
*DSfixの設定を変更するには「DSfix.ini」をテキスト形式で開いて書き換えてください。
# internal rendering resolution of the game
# higher values will decrease performance
renderWidth 2715
renderHeight 1527

# The display width/height
# 0 means use the same resolution as renderWidth/Height
# (use for downscaling - if in doubt, leave at 0)
presentWidth 1920
presentHeight 1080

SSの画像では解像度を2715x1527まで上げて、
それを1920x1080にダウンスケールしています。
この2715x1527という半端な数字は、1080pをちょうど2倍にしたサイズです。
上記のPCスペックだと、2.5倍の3036x1708まで
安定して60FPS出せました。
一番重かったアノールロンドの城門付近で50FPSに低下する程度です。
計算は平方根なんですが
まず出したい倍率、例えば2倍を計算したいとすると
√2を電卓で出します。すると1.4142135と出るので
それに横解像度の1920を掛けると2715.2899≒2715と出るわけです。
1920x1080(16:9)の場合
1.20→2103.254x1183.080≒2103x1183
1.50→2351.510x1322.724≒2352x1323
1.78→2561.599x1440.899≒2562x1441
2.00→2715.290x1527.350≒2715x1527
2.25→2880x1620
2.5 →3035.7864x1707.6299≒3036x1708
3.00→3325.537x1870.614≒3326x1871
4.00→3840x2160
こうなります。

上記のNVIDIAドライバのDSRという設定は、
同じNVIDIAのGeForce Experienceというユーティリティソフトを入れれば
対応ゲームなら設定可能になります。
ダークソウル2も旧DX9版、新DX11共に対応されてたんですが
新DX11版でこのDSRを使うとオンラインサーバーから弾かれましたw
NVIDIA公式の機能なんだから、フロムと連携しなさいよと(#゚Д゚)
フロムにこの件で問い合わせして無視されたんですがw
後日コソッと直してありましたw 今ではDSRを使用してもログイン可能です。

どう違うのかとか、詳しくは4gamersさんのこちらの記事をご参照ください。

西川善司の3DGE:GeForce GTX 980に搭載された新機能「DSR」「MFAA」とは何か
http://www.4gamer.net/games/274/G027467/20141005001/

草の表現とかは納得の違いです。 

DATA 2015-09-23 19-11-06-630
 というわけで解像度はダウンスケールでUPしてるので、以前貼ったSSや
ニコ動にUPした時より格段に高精細になってます。
あと、FPSを60FPSにアンロックしてあるんですが
これに関してはちょっと注意がいります。 
# Enable variable framerate (up to 60)
# NOTE:
# - this requires in-memory modification of game code, and may get you banned from GFWL
# - there may be unintended side-effects in terms of gameplay
# - you need a very powerful system (especially CPU) in order to maintain 60 FPS
# - in some  instances, collision detection may fail. Avoid sliding down ladders
# Use this at your own risk!
# 0 = no changes to game code
# 1 = unlock the frame rate
unlockFPS 1

# FPS limit, only used with unlocked framerate
# do not set this much higher than 60, this will lead to various issues with the engine
FPSlimit 60
この項目ですね。
この「アンロック」というのは、つまりPC版ダークソウル1は当初から
60FPSで稼動するように作られていたってことです。 
コンシュマー機と差をつけないためにリミッターをかけていた、なんて書いてる方もどこかで見ましたが
まぁ真相はフロムさんしかわかりませんw
このリミッターを解除してFPSを30以上まで上げる項目です。 
そして
ここで60FPSにアンロックすると、様々な不具合が発生します。
まず、最新のGame for Windows Liveにオンラインで繋ぐと、FPSが合ってませんと言われて弾かれていたらしいです(過去形)
今はそのウィンドウズライブ(笑)がもうないので、そこは気にする必要はないですね。
でもゲームのプログラム上、ウィンドウズライブ(笑)にログインする必要がある仕様になってます。
まぁすでにお持ちの方には説明するまでもないとは思うんですが
ゲーム起動時にWindows Liveのアカウントを作成しろ、と言われますので
そこでオフラインアカウントを作ります。
作り方はググればすぐにわかるかと思います。話が長くなるのでここは割愛しますね。

オフラインアカでゲームにログインすれば、FPS問題も解決です。

DATA 2015-09-23 19-12-12-980
 でもまだ60FPSに関する問題はあります。
60FPSにすると、一部の機能が動かなくなり
起動時に「ダークソウルは動作を停止しました」と出てしまいます。
そこで、どの機能をONにすると停止してしまうのか
それを見極めないといけなくなるわけです。
これが今回、設定をご紹介した最大の理由となります。 

############# Anti Aliasing

# AA toggle and quality setting
# 0 = off (best performance, worst IQ)
# 1 = low 
# 2 = medium
# 3 = high
# 4 = ultra (worst performance, best IQ)
aaQuality 0
まずアンチエイリアス。
これはONにすると起動しません。解像度をダウンスケールして上げてあるので
AAなしでも問題ないです。元々この解像度を上げる手法はAAの一種らしいですし。
ここは0にして切ります。

DATA 2015-09-23 19-12-57-304
############# Ambient Occlusion

# Enable and set the strength of the SSAO effect (all 3 settings have the same performance impact!)
# 0 = off
# 1 = low
# 2 = medium
# 3 = high
ssaoStrength 3

# Set SSAO scale
# 1 = high quality (default)
# 2 = lower quality, lower impact on performance
# 3 = lowest quality, lowest impact on performance
ssaoScale 2

# Determine the type of AO used
# "VSSAO" = Volumetric SSAO (default, suggested)
# "HBAO" = Horizon-Based Ambient Occlusion
# "SCAO" = VSSAO + HBAO
# VSSAO and  HBAO types have a different effect and similar performance
# SCAO combines both, with a higher performance impact
ssaoType VSSAO

SSAOの設定です。 
SSAOの機能については、GeDoSaToの記事でもご説明しましたが
影を増やして立体感を上げる機能です。
これが一番PCに負荷がかかり、重くなるんですが
ダークソウル1でも同じように、これが一番重いです。
とはいえ、重いのは「HBAO」とその複合型の「SCAO」です。
あと「SSAO scale」も目に見えて変わります。
HBAOは比べてみると、あきらかに汚いですし(私見です)
うちのPCでは上記の設定にしてます。
Scaleが2なのは 、SSに撮ってあるアノールロンドのあたりはとても重い場所なんですが
この設定だとどこでも安定して60FPS出るためです。
ここでScaleを1にしてしまうと、FPSは40~最低30以下まで低下します。 

 DATA 2015-09-23 19-14-35-192
今度はDOFの設定です。
被写界深度、カメラのピントのように、背景をぼかす機能ですね。
ダークソウルでは1でもデフォルトでこの設定は入ってて
ゲーム内ではON・OFFできないんですが
DSfixではこのように設定してます。
############# Depth of field

# Depth of Field resolution override, possible values:
# 0 = no change from default (DoF pyramid starts at 512x360)
# 540 = DoF pyramid starts at 960x540
# 810 = DoF pyramid starts at 1440x810
# 1080 = DoF pyramid starts at 1920x1080
# 2160 = DoF pyramid starts at 3840x2160
# higher values will decrease performance
# do NOT set this to the same value as your vertical rendering resolution!
dofOverrideResolution 1080

# Depth of Field scaling override (NOT RECOMMENDED)
# 0 = DoF scaling enabled (default, recommended)
# 1 = DoF scaling disabled (sharper, worse performance, not as originally intended)
disableDofScaling 0

# Depth of field additional blur
# allows you to use high DoF resolutions and still get the originally intended effect
# suggested values:
# o (off) at default DoF resolution
# 0 or 1 at 540 DoF resolution
# 1 or 2 above that
# 3 or 4 at 2160 DoF resolution (if you're running a 680+)
dofBlurAmount 1

「resolution」は遠景の解像度です。
デフォルトでは512x360なのでとても荒いです。
もともと遠景をぼかす機能なので、解像度が低いのはよりぼけていいとも言えるんですが
さすがに低いとシャギーが目立って汚いです。
「dotBlurAmount」で遠景をぼかすことができるので
”高解像度に設定しつつそれをぼかす”という選択をとっています。
ちなみにあまり負荷は上がりません。
しかし3840x2160は高すぎるので、それを設定するのはおすすめできませんね。
ちなみにBlurを2にするとぼけすぎて不自然でした。
アノールロンドの遠景がわかりやすいです。上にSS貼ってる場所のことです。

 DATA 2015-09-23 19-14-42-732
 ############# Filtering

# texture filtering override
# 0 = no change 
# 1 = enable some bilinear filtering (use only if you need it!)
# 2 = full AF override (may degrade performance)
# if in doubt, leave this at 0
filteringOverride 2

テクスチャフィルタリングについてですが
私はいまだに違いが全然わかりませんw
重くなるようなら0=no changeでいいと思いますが
全然重くもならないので、最高設定にしてます。
どういう機能なのかはこちらをご参照ください。

「テクスチャの異方性フィルタリング」ってなに?

http://www.4gamer.net/specials/3de/nv_at/nv_at01.html

DATA 2015-09-23 19-14-55-198
# HUD options
###############################################################################

# Enable HUD modifications
# 0 = off (default) - none of the options below will do anything!
# 1 = on
enableHudMod 0

これは武器アイコンなどのUIが大きすぎるので
それを小さくする設定です。
ぜひ小さくしたいのですが、このMODは基本的に英語版をベースに作られているので
日本語版でONにするとあきらかにおかしくなります。
なのでOFF推奨です。

DATA 2015-09-23 19-13-29-368
# Texture Override Options
###############################################################################

# enables texture dumping
# you *only* need this if you want to create your own override textures
# textures will be dumped to "dsfix\tex_override\[hash].tga"
enableTextureDumping 0

# enables texture override
# textures in "dsfix\tex_override\[hash].png" will replace the corresponding originals
# will cause a small slowdown during texture loading!
enableTextureOverride 1

テクスチャの上書き設定です。
ここの「Override」をONにしないと、テクスチャ張替え系のMODは機能しません。
テクスチャ張替えMODを使うならONにしてください。
「Dumping」は絶対にONにしないでください。
ゲーム中に表示されたテクスチャをかたっぱしから外部保存する機能です。
その保存したテクスチャをイジって、MODを作るわけです。


以上でうちの環境でのDSfixの設定はおしまいです。
他にもイントロスキップなど細かいところはありますが
そこはほぼいじってません。
この設定だと「動作を停止しました」と言われず
各地で60FPSで安定して動作します。
ただ、前述のとおり
これはDSfixバージョン1.9&日本語対応dll使用での話なので
他のバージョンでは同じように動かない可能性は高いです。
それとPCのスペックによっては、FPSが低下する可能性もあります。

まぁとりあえず
うちのダークソウル1は設定完了しましたので
この設定で動画を撮ろうと思います(゚∀゚)

 







[YukkuRimゆっくり実況動画 with ブログ]はamazon.co.jpを宣伝しリンクすることによって
サイトが紹介料を獲得できる手段を提供することを目的に設定された
アフィリエイト宣伝プログラムである Amazonアソシエイト・プログラムの参加者です