Cafe capybara TECH-BLOG

PHPな会社でゴリゴリしてるあかいいぬの技術ブログです

Tom Clancy's Ghost Recon : Future Soldier 最適化

ステルスアクションでそこそこ有名なUbisoftGhost Recon最新作、Future SoldierをCo-opゲームで寝れま10メンバーで購入したので、環境に合わせて設定を最適化してみました。

まず、このゲームはまだ発売されて間もないので、(Ubisoftお得意の)バグが多いです。マルチプレイではラグや接続不良などが見られることがあります。

また、ディスプレイドライバ(NVIDIA, AMD)もまだ最適化がなされていないので、GPUの性能を生かし切れていない可能性があります。

このゲームは、DX11を利用した最先端の描画技術を多数使っているので、基本的にかなり重いです。ミドル~ハイエンドのパソコンでないと良好な画質をキープ出来ないでしょう。

スペック紹介

最初に、ワシの環境を紹介したいと思います。この環境での最適基準なので、スペックの上下に合わせて細かい設定をいじってみてください。

ベースマシン
Dospara Primeシリーズ(2011年製・10万くらい)
CPU
Intel Core i7-2600 @ 3.40GHz(8 CPUs)
インメモリ
8192MB
グラフィックスカード
NVIDIA GeForce GTX 560 Ti
OS
Windows 7 Home Premium 64-bit SP1
グラフィックスドライバ
GeForce 301.42 Driver WHQL

大事な所は「グラフィックスドライバ」。

現時点でゲームに最適化したドライバはないので、最新版を使っています。恐らく数ヶ月以内に最適化ドライバが出てパフォーマンスが向上するかと思います。

ちなみにゲームの最低基準スペックは...

CPU
Intel Pentium D 3.0 Ghz or AMD Athlon64 X2 4400+ 2.2Ghz
インメモリ
2GB Windows Vista or Windows 7
グラフィックスカード
512 MB DirectX–compliant, Shader 4.0–enabled video card based on nVidia GeForce 8600 GTS/AMD Radeon HD 4650
OS
Windows Vista® (with Service Pack 2)/ Windows 7® (with Service pack 1), both 32 bit & 64 bit versions.

推奨スペックは...

CPU
Intel Core2 Quad Q9450/ AMD Phenom II X4 940 or higher
インメモリ
3 GB Windows Vista® & 7®
グラフィックスカード
1024 MB DirectX–compliant, Shader 4.0–enabled video card based on nVidia GeForce GTX 460 or AMD/ATi HD 5850 or better.
OS
Windows Vista® (with Service Pack 2)/ Windows 7® (with Service pack 1), both 32 bit & 64 bit versions.

一応推奨スペックをギリギリクリアしているくらいですね。

このゲーム、CPUよりもGPUに負荷がかかるので、もしゲームに合わせてハードウェアの更新を考える場合は、グラフィックスカードを買い換えることを検討しましょう。

NVIDIAドライバの設定

NVIDIAコントロールパネルというものがコントロールパネルにあると思います。ここでは、ゲーム側で設定の出来ない描画関連の項目を手動でいじることが出来ます。

適切な設定を行うことで、画質の向上・パフォーマンスの改善が出来ることになります。

f:id:expert88:20120813062558j:plain

3D設定の管理→プログラム設定→追加 にて、EXEファイルを追加して、機能をいじっていきます。

グラフィックスカードの種類やOSによって機能があったりなかったりしますので、適宜読み替えてください。

CUDA - GPU
CUDAとは、GPU上で演算(加減乗除)を行うことが出来る技術です。そのまま(すべて)で問題なし
アンチエイリアシング - FXAA
3Dの境界に現れるギザギザ(エイリアシング)を取り除く手法の1つ。最新の技術でパフォーマンスにほとんど影響なくエイリアシングを取り除くことが出来ます。問題が出なければオンに。
アンチエイリアシング - ガンマ修正
オンのまま
アンチエイリアシング - トランスペアレンシー
半透明テクスチャ上のエイリアシングを取り除く機能です。マルチサンプル(画質重視)またはオフ(パフォーマンス重視)に。
アンチエイリアシング - モード
アンチエイリアシングの手法を選択出来ます。GRFSではゲームでアンチエイリアシングが設定出来ますのでアプリケーションによるコントロールに。
スレッドした最適化
CPUが複数個ある場合に並列で演算を行なってパフォーマンスを上げる機能。CPUによって結構変化があるので、ここは自分の目で確認してオンオフ分けてください。基本はオンでいいはず。
テクスチャフィルタリング - クオリティ
テクスチャをどう処理するかを設定します。よほどスペックが高くなければ、パフォーマンスでも十分な画質です。
テクスチャフィルタリング - トリリニア最適化
フィルタリングの無駄を省いてパフォーマンスを向上させる設定です。オン推奨。
テクスチャフィルタリング - ネガティブ LOD バイアス
パフォーマンス重視は「許可」です。
テクスチャフィルタリング - 異方性サンプル最適化
フィルタリングの無駄を省いてパフォーマンスを向上させる設定です。オン推奨。
トリプルバッファリング
全画面でVSync(後述)をONにする場合はオンにするとパフォーマンスが上がるかもしれません(が逆に不安定になることも)。
レンダリング前最大フレーム数
ここの数値が大きくなると入力動作から実際の画面への反映までに時間がかかるようになります。1に設定することでその状態を回避出来ます。
垂直同期
VSyncのことです。ゲームの描画頻度をディスプレイのフラッシュレート(大抵60Hz=60フレーム毎秒)と合わせます。ゲーム側で設定出来るので「3Dアプリケーション設定を使用する」。
異方性フィルタリング
テクスチャのぼやけを防止します。数値が大きいほどパフォーマンスが悪くなるので、オフでもそこまで気になりません。
テクスチャフィルタリング - 異方性フィルター最適化
当環境だと設定出来なかったので割愛。

ゲームのグラフィック設定

今度はゲーム側の設定を見てみます。

この中にはありませんが、ウィンドウモードでプレイしたい場合は、
C:\ユーザー\○○(ユーザ名)\マイ ドキュメント\Ubisoft\Tom Clancy's Ghost Recon Future Soldier\default.cfg
の中の「Fullscreen True」を「Fullscreen False」に変えて起動するとウィンドウモードで起動します。

f:id:expert88:20120813064513j:plain

Resolution
1920x1080(フルHD)だと当環境だと重すぎたので、1600x900でやっています。
Vsync
全画面でプレイする場合はON推奨。
Antialiasing
上でFXAAをONにしている場合はパフォーマンスの影響小さくアンチエイリアシングが出来る(はずな)のでON推奨。
Detail objects
マップ中の置き物や銃の細かさ(未検証)。パフォーマンスへの影響はそれほど大きくない。
Shadows
Highにするとソフトシャドウ(やわらかい陰影)になりますが、負荷急上昇。見た目も大きく変わりますが、影をまじまじ見ることは少ないのでMediumかLowで十分かと。
Volumetric light
明るい部分の空気が光っているように見える(家の中から外を見た時など、現実的にいえば雲の切れ間から見える太陽光)設定。ゲームの雰囲気に大きく影響するので出来るだけHighでやりたい(もちろん光って見えづらくなるのがイヤな場合は下げる)。
Ambient occlusion
周囲に隠蔽物があって隠れている部分を暗くすることで、見た目をとてもリアリティにする設定。ある程度のグラフィックスカードならそれほどパフォーマンスに影響なくONにすることが出来ます。
Parallax mapping
視差マップ。テクスチャのデコボコをよりリアルに表現する設定。ある程度パフォーマンスに影響するが、OFFにすると壁や地面が平べったく見える。
Motion blur
視点の移動などで視界がブレて見えるようにする設定。映像作品っぽく見たいならON、ぼやけてよく分からないのはダメって場合はOFF。
Improved physics
物理表現をより正確にする設定(未検証)。CPUへの負荷が上がるが元々それほどでもないのでON推奨。
Gamma correction
ガンマ値を設定可能。
Stereoscopic 3D
3Dディスプレイを使っている場合はこれをONにすると立体視が可能になる。
DirectX 11
DirectX11の機能を使ってTesselation(後述)とGlobal Illumination(後述)を行うかどうかの設定。ON/OFFで負荷と描画が大きく変わる。
Tesselation
近くに見えるオブジェクトをより細かく分割することで、輪郭のガタガタを減らしたり細かい部分を表現する設定。パフォーマンスに大きく影響するが、動いていたら正直分からないレベルなのでLowで良いかも。
Global Illumination
太陽光だけでなく、周りのオブジェクトからの光の反射も計算して、例えば青い布の近くの物が青く光ったりするような表現をする設定。陰影表現に大きく影響。


このくらいの設定で、大体大台の30FPSがギリギリ出たり出なかったりというくらいです。もうちょっと設定を下げた方がいいのですが、Volumetric lightとGlobal Illuminationは雰囲気に大きく影響するから下げたくないというのが印象。どうトレードオフつけるかが難しい所です。

もちろん、「画質なんてどうでもいいぜ!ゲームを快適にプレイ出来ればいいぜ!」な方は設定がん下げで行っちゃいましょう。