連載
Version 11.0
- 3DMark 11 /
- S.T.A.L.K.E.R.: Call of Pripyat /
- Battlefield: Bad Company 2 /
- Call of Duty 4: Modern Warfare /
- Just Cause 2 /
- Sid Meier's Civilization V /
- DiRT 3 /
- コラム:Frapsの使い方
業界標準の3Dベンチマークテストシリーズ,3DMark。4Gamerが2006年にベンチマークレギュレーションを導入して以降,DirectX 10が導入されてもDirectX 11が導入されても,「リリースされているゲームタイトルは多くがDirectX 9ベースである」という理由から,DirectX 9世代の「3DMark06」を用いてきたのは,読者ならよくご存じのことだろう。
ただ,GPUの進化に伴い,とくにハイエンド市場向け製品では,「3DMark06では負荷が低すぎて,テスト結果に差が付きにくい」という状況が生じ始めた。また,単体グラフィックスカード市場の主役であるAMDとNVIDIAはいずれもDirectX 11世代への移行を完了しており,3DMarkのバージョンを切り替えるタイミングとしては悪くないと判断し,レギュレーション11世代では,「3DMark 11」を新規で導入した次第である。
従来は,市場で支配的なDirectX 9世代のゲームをプレイする前提で,3DMark06を用い,「最も汎用的な3D性能」を測ってきたが,今後は,これから登場するゲームタイトルにおける性能を推し量るべく,3DMarkを使っていくことになるわけだ。
テストに用いる3DMark 11は,そのときどきの最新バージョンで,レギュレーション11.0では2011年6月7日に公開された1.0.2である。
なお,3DMark 11では,解像度やテクスチャフィルタリングを任意に変更した場合,総合スコアが得られない(関連記事)。そのため,あらかじめ用意されているプリセットの「Entry」「Performance」「Extreme」から,Performanceプリセットを軸に,GPUの立ち位置に合わせてEntryとExtremeを使い分け,総合スコアで比較していくことにした。
プリセットごとにどういった違いがあるのかは,西川善司氏による解説記事を参考にしてもらえらば幸いだ。
テスト方法は以下のとおり。3DMark 11のスコアは大きくブレたりしないため,初回実行時のものをそのまま採用する。
実行手順
- (1)3DMark 11を起動
- (2)「Basic」タブからプリセットを選択
- (3)「Basic」タブから「Benchmark tests only」を選択。「Display Scaling Mode」は「Centered」
- (4)[Run 3DMark 11]をクリックしてベンチマーク実行
ウクライナのデベロッパGSC Game Worldが手掛けるFPSシリーズ,S.T.A.L.K.E.R.。その最新作となるのが,「S.T.A.L.K.E.R.:Call of Pripyat」(邦題 ストーカー 〜コール オブ プリピャチ〜 日本語版,以下 STALKER CoP)である。チェルノブイリ原発事故後に放棄され,ゴーストタウンになっている実在のプリピャチ市を舞台とした,評価の高いシングルプレイFPSだ。
採用されるゲームエンジンはGSC Game World独自開発の「X-Ray Engine」(Version 1.6)で,DirectX 11/10/9に対応。そのため,DirectX 10&9世代のベンチマークテストとしても利用可能だが,4Gamerでは,DirectX 10&9世代のベンチマークテストを別途用意してあるため,STALKER CoPはあくまでも「DirectX 11ネイティブ対応タイトル」として扱うので,この点は注意してほしい。
テストに用いるのは,STALKER CoP公式サイトで配布されている公式ベンチマークソフト「S.T.A.L.K.E.R.: Call of Pripyat Benchmrk」。ゲーム世界を飛び回る,いわゆるFlyby形式のアプリケーションだ。
どのDirectX APIを用いるかは(製品版と同様に)グラフィックス関連オプションから指定するようになっているので,まずはその設定内容を下記のとおりまとめておきたい。
ゲーム設定
Plain benchmark
- Preset:Ultra
- Render:Enhan. full dyn. lighting(DX11)
- Video mode:テストによる
Advanced option
- MSAA:テストによる
- MSAA for A-tested objects:DX 10.1 style [Higher quality](※MSAAを設定した場合のみ)
- SSAO Mode:Disabled
- SSAO Quality:Low
- Use DX 10.1:チェックを入れる
- Enable tessellation:チェックを入れる
- Contact hardening shadows:空欄のまま
設定のポイントは,グラフィックス設定のプリセットを最高の「Ultra」に指定しつつ,「Render」で「Enhan. full dyn. lighting(DX11)」を明示し,DirectX 11モードを有効にしていること。また,「Advanced option」では,DirectX 11世代のGPUが持つ機能を最大限利用すべく,DirectX 10.1やテッセレーションを利用するためのチェックボックスを有効化している。
なお,「MSAA for A-tested objects」は,すぐ上の「MSAA」を設定している場合のみ変更が可能となる。4xアンチエイリアシング(と16x異方性フィルタリング)を適用する「高負荷設定」のテスト時のみ「DX 10.1 style[Higher quality]」とする点に注意してほしい。
なお,SSAO(Screen Space Ambient Occlusion)が「Disabled」のまま放置されているのは,単純に,SSAOを有効化すると描画負荷が高すぎ,ベンチマークテストに適さないためである。
ベンチマークソフトの実行手順は下記のとおりだ。
実行手順
- (1)ベンチマークソフトを起動する
- (2)「Preset」と「Render」,それに「Video mode」を設定
- (3)「Advanced options」を設定
- (4)「Start benchmark」を実行
- (5)テスト終了後に表示されるスコアを記録する
- (6)(2)以降を解像度などを変更しながら繰り返す
STALKER CoP公式ベンチマークソフトでは,同じマップで時間帯や天候を変えた「Day」(日中)「Night」(夜間)「Rain」(雨)「SunShafts」(日差し),4つのシークエンスが順番に実行され,それぞれ異なる平均フレームレートが示されるが,4Gamerではこのうち,マップ上のオブジェクトを見通せるようになっていて,描画負荷が最も低いDayと,それに強い日差しを加え,日光の反射や影を加えることにより,描画負荷が最も高いSunShaftsの平均フレームレートを,それぞれスコアとして採用する。
得られるスコアに大きなブレがないため,テストは1回限り。レギュレーション6〜9世代で用いていた「Crysis Warhead」に代わるタイトルとして,グラフィックス描画負荷はかなり高く設定しているので,プレイアブルかどうかの基準は30fpsあたりにあると考えてほしい。ハイエンドGPUでは平均60fpsあたりが目安となる。
マルチプレイのミリタリーFPSとして,PCゲーマーのなかに知らぬ者はないとさえいえる,Electronic ArtsのBattlefieldシリーズ。その最新作である「Battlefield: Bad Company 2」(邦題 バトルフィールド:バッドカンパニー2,以下 BFBC2)は,開発元EA DICE独自のゲームエンジン「Frostbite」の最新版となるバージョン1.5(以下,Frostbite 1.5)を採用。DirectX 11をサポートするなど,大きな進化を遂げている。
オブジェクトの大半を破壊できるという仕様がマルチプレイで賛否を分けているものの,久しぶりに国内で多くのプレイヤーを集めているマルチプレイFPSと述べていいだろう。
さて,Frostbite 1.5はDirectX 11対応と述べたが,ベースとなる3D APIはDirectX 10。DirectX 11は主に,パフォーマンスの最適化と,ソフトシャドウの適用といった形での,補助的な拡張として実装される。DirectX 11世代の初期タイトルらしい実装といえるだろう(※Frostbite 1.5はDirectX 9にも対応しており,DirectX 9モードではアンチエイリアシングの実装が若干異なっているが,ベンチマークレギュレーション11世代で,BFBC2のDirectX 9モードを用いる予定はないため,この違いは問題にならないと考えている)。
どの世代のDirectX APIを用いてゲームが動作するかは,基本的にゲーム側の自動選択。ゲームのセットアップ時に作成される「Settings.ini」ファイルの内容を書き換えて明示しない限り,GPU側の仕様に沿って決定される。
2010年下半期に登場してきた単体GPUは基本的にDirectX 11世代の製品なので,たいていの場合は自動判別に任せていいと思われるが,グラフィックス機能統合型CPUやチップセットなど,DirectX 10世代までのサポートに留まる製品をテストする場合は,Settings.iniファイルの書き換えを行って,利用するAPIをDirectX 10で揃えたりする場合が生じうるので,その場合は適宜お断りする。
といったあたりを踏まえつつ,テストにあたってのゲーム設定は下記のとおりとすることにした。
ゲーム設定
バージョン:最新版(Steamによる自動アップデート)
セーブデータ:GameSettings.bin(100KB)
セーブデータの保存先:C:\Documents and Settings\【ユーザー名】\BFBC2\GameSettings.bin
OPTIONS−設定−操作反転
- 視点操作時のY軸:チェックを外す
- 飛行時のY軸:チェックを外す
- マウスホイール:チェックを外す
OPTIONS−設定−マウス
- 感度:任意
- ヨー要素:任意
- ピッチ要素:任意
- マウスの加速:チェックを外す
OPTIONS−設定−ジョイスティック
- 感度:任意
- ヨー要素:任意
- ピッチ要素:任意
OPTIONS−設定−ゲームプレイ
- 字幕:チェックを入れる
- ヒントシステム:チェックを入れる
- しゃがみ切り替え:チェックを外す
- PUNKBUSTER有効:チェックを入れる
- 色覚異常:チェックを外す
- ズーム切り替え:チェックを入れる
OPTIONS−設定−ビデオ
- 解像度:テストによる
- 全般のクオリティ:Advanced
- 明るさ:任意
- コントラスト:任意
OPTIONS−設定−ビデオ−全般のクオリティ−ADVANCED
- LOD:HIGH
- テクスチャクオリティ:HIGH
- シャドウクオリティ:HIGH
- エフェクトクオリティ:HIGH
- アンチエイリアス:テストによる
- 異方性フィルタリング:テストによる
- VSYNC:OFF
- HBAO:OFF
OPTIONS−設定−オーディオ
- サウンド音量:任意
- BGM音量:任意
- 会話音声:任意
- サウンドシステム:HIFI(DEFAULT)
- 敵チームのボイスオーバー:ロシア語
- ボイスオーバーの言語:英語
OPTIONS−設定−VOICE OVER IP
- 有効:チェックを入れる
- キーを押して話す:チェックを入れる
- 受信音量:任意
BFBC2における描画オプションは「全般のクオリティ」にプリセットという形でいくつか用意されており,初期設定は「Medium」。これを「Advanced」に変更すると「アドバンスド設定」が表示され,細かな設定を行えるようになる。
レギュレーション10〜11世代では,GPU負荷がなるべく高くなるよう,基本的には軒並み「HIGH」に変更しているが,ここで「HBAO」だけ「OFF」としている点は要注意。HBAOは「Horizon-based Ambient Occlusion」の略で,DirectX 10&11モードでアンビエントオクルージョンを駆使したリアルな影描写を行うものなのだが,負荷がかなり大きいこと,そして本レンダリング技術がNVIDIAの手によるもののため,GeForceとRadeonの公正な比較を阻害する要因になりかねないことから,このように設定した次第だ。
もう1つ,そのアンチエイリアシング,そしてテクスチャフィルタリングの項目は,ゲームオプションにそれぞれ「アンチエイリアス」「異方性フィルタリング」として用意されているのだが,両設定項目の最低値はいずれも「1x」。「無効」とほぼ同義のはずだが,明示的に無効化できるわけではなく,その意味でレギュレーションの規定する「標準設定」とは異なるため,本タイトルでは,標準設定の代わりに,1xアンチエイリアシングと1x異方性フィルタリングを適用した「低負荷設定」を用いるので,この点はあらかじめお断りしておきたい。
さて,テスト方法だが,BFBC2では,シングル/マルチプレイを問わず,専用のベンチマークモードのようなものが用意されていない。そのため,4Gamerのベンチマークレギュレーションでは,シングルプレイの「COLD WAR」における「トラックの荷台に乗って移動しながら,敵の追撃を受ける」というシーンを用意し,その間のフレームレートをFrapsから測定するという手法をとることにした。
テスト用に4Gamerで用意した「GameSettings.bin」を,マイドキュメント内にある所定の場所へと上書きして,下に「実行手順」として示した流れでテストを進めていく。
ただ,ここで注意してほしいのは,「BFBC2は,パッケージ版,デジタル配信版を問わず,Electronic Arts,もしくはValveのソフトウェア配信システム経由で自動アップデートされる」こと。つまり,テストに用いるゲームのバージョンは,そのときどきの最新版になるわけだ。
そして,2010年11月30日に「Map Pack 7」と「Battlefield: Bad Company 2 Vietnam」のリリースに向けたアップデートが実施され,この結果,レギュレーション10.1で用意していたセーブデータは利用できなくなっている。
そこでレギュレーション10.2においてレギュレーション10.0&10.1と同じシーンが始まるよう,新たにセーブデータを用意し直した。レギュレーション11.0でも,この「10.2用」セーブデータを継続して用いる。テストそのものはレギュレーション10〜11世代で共通なので,得られるスコアも同じであり,基本的には横並びの比較も可能だ。
実行手順
- (1)Frapsからベンチマーク計測時間を45秒に設定
- (2)BFBC2を起動する
- (3)グラフィックスや解像度の設定を行う
- (4)メインメニューから「再開」を選択
- (5)ゲームがスタートし,トラックが動き始めたらFrapsによる計測をスタート
- (6)45秒経過するのを待つ
- (7)[Esc]キーを押してプレイ画面を中断
- (8)「リスタート」→「最後のチェックポイントから」と進み,(5)〜(7)をもう一度実行。2回の平均をスコアとする。ただし,ゲームアプリケーション起動後の初回に限り,3回実行して初回のスコアを捨て,後ろ2回の平均を取る
- (9)(3)以降を設定を変更しながら繰り返す
ゲーム中の一部分をFrapsで“切り取る”タイプのテストになるため,どうしても多少の測定誤差からは免れ得ないが,実際のところ,本テストシークエンスにおけるフレームレートのブレはそれほど大きくない。そのため,2回の平均値でも,十分信頼のできるスコアが得られると判断している。
スコアは,概ね60fpsを超えていれば合格点といったところだろうか。CPUが処理できるスレッド数も,インパクトは大きくないが,多少なりともスコアを左右するようになっているようだ。
「Call of Duty 4: Modern Warfare」(邦題 コール オブ デューティ4 モダン・ウォーフェア,以下CoD4)は,2008年の発売後,PCとXbox 360,プレイステーション3で1000万本を超えるヒットとなったFPSだ。
ゲームエンジンはInfinity Wardオリジナルで,DirectX 9世代のプログラマブルシェーダ3.0(SM3.0)ベース。2011年6月時点では,続編「Call of Duty: Modern Warfare 2」どころか,“その次”にあたる「Call of Duty: Modern Warfare 3」の足音も聞こえてきているが,ベンチマークレギュレーション11における唯一のDirectX 9タイトルとして,今なお重要な存在だ。GPU性能を素直に反映するテストなので,ほとんどがDirectX 9ベースとなっている3Dオンラインゲーム用の指標として十分に機能するはずである。
テスト方法はレギュレーション6.0以来,変更していない。マップ「Crash」における5対5のチームデスマッチを“録画”し,これを再生させ,Frapsから平均フレームレートを求めることにしている。
リプレイデータの作成に当たって留意したのは,キャラクターの足を止めないということ。それを実現すべく,今回は4Gamerスタッフの個人的な知り合いを募ってリプレイデータを作成した。そのため,リプレイデータの公開ができない点はご容赦いただきたい。
このほか,テストに当たってのゲーム設定は下記のとおり。パッチは,レギュレーション8.0事前検証開始時点での最新版,Version 1.7をそのまま用いる。グラフィックス設定の詳細については,西川善司氏による解説記事も用意してあるので,興味のある人は併せて参照してもらえれば幸いだ。
ゲーム設定
バージョン:1.7(1.7.568)
リプレイデータ:4Gamerオリジナル(※非公開)
リプレイデータ保存先:C:\Program Files\Activision\Call of Duty4 - Modern Warfare\main\demos(※64bit OSの場合は C:\Program Files (x86)\Activision\Call of Duty4 - Modern Warfare\main\demos )
コンフィグファイルの変更:C:\Program Files\Activision\Call of Duty4 - Modern Warfare\players\profiles\【ユーザー名】\config_mp.cfgを開き,「com_maxfps」の値「85」を「0」に書き換える(※64bit OSの場合,ファイルのパスは C:\Program Files(x86)\Activision\Call of Duty4 - Modern Warfare\players\profiles\【ユーザー名】\config_mp.cfg )
ゲーム設定:「Options−Graphics...」
- Video Mode:テストによる
- Screen Refresh Rate:60Hz
- Ascpect Ratio:Auto
- Anti-Aliasing:テストによる
- Brightness:任意
- Sync Every Frame:No
- Dual Video Cards:テストによる
- Shadows:Yes
- Specular Map:Yes
- Depth of Field:Yes
- Glow:Yes
- Number of Dynamic Lights:Normal
- Soften Smoke Edges:Yes
- Ragdoll:Yes
- Bullet Impacts:Yes
- Model Detail:Normal
- Water Detail:Normal
ゲーム設定:「Options−Texture Settings...」
- Texture Filtering:Automatic
- Anisotropic Filtering:スライダを左端に
- Texture Quality:Manual
- Texture Resolution:Extra
- Normal Map Resolution:Extra
- Specular Map Resolution:Extra
ゲーム設定:「Options−Sound...」
- Master Volume:任意
- Sound EQ Filter:On
- Sound Quality:44KHz
- Speaker Config:Windows Default
ゲーム設定:「Options−Game Options...」
- Show Blood:Yes
- SEnable Console:任意(※デフォルトは「No」)
ずらずらと並べてみたが,要するに「最も高い設定」になっていると理解しておけばOKだ。
このとき注意すべきは,デフォルトだと最大フレームレートが85fpsに固定されていること。上で示したとおり,コンフィグファイル「config_mp.cfg」の「com_maxfps」を「85」から「0」に書き換えることで,この上限を取り払う必要があるので,くれぐれもご注意を。
さて,リプレイデータの読み出しはゲーム内のコンソールメニューからも行えるのだが,この方法ではときおり失敗することがあるので,レギュレーション8世代以降では,CyboPat.net製の「Call of Duty 4 player」(以下,CoD4 player)を利用している。これはその名のとおり,CoD4のリプレイデータを安定して“再生”するための外部ソフトだ。
確実を期した結果,テスト手順は多少面倒なものになった。とはいえ,基本的にはFrapsを利用したベンチマーク方法準拠なので,慣れてしまえば問題ないだろう。具体的には下に示したとおりとなる。
実行手順
- (1)Frapsにてベンチマーク時間を60秒に設定
- (2)CoD4をMultiPlayerモードで起動する
- (3)グラフィックスや解像度の設定などを行う
- (4)CoD4を終了してデスクトップに戻る
- (5)COD4 playerを起動。「OPEN DEMO」でリプレイデータを選ぶ
- (6)ローディングが終わってプレイ画面が表示されたらFrapsでの計測をスタート
- (7)60秒経過するのを待つ
- (8)10キーの[/]キーを押してリプレイの再生を終了する
- (9)(4)〜(8)の手順をもう一度実行し,2回の平均をスコアとする
- (10)(2)以降を,設定を変更しながら繰り返す
ここで重要なのは,設定一つにつき,テストを2回実行すること。
(2)で,ハードウェア構成の変更直後に,「Set Optimal Settings?」というダイアログが表示される点も憶えておきたい。これはゲーム設定を自動的に設定するものだが,ひとまず[はい]を押したあと,あらためてゲーム設定を手動で行うのが安全だ。
次に,同じく(2)で,PunkBusterに登録あるいは接続していない場合,「Error」というメッセージが表示される。CoD4をプレイしている人の環境ではまず出ないが,ベンチマーク用に構成したPCでは表示される可能性があるので,遭遇したときは素直に[Exit]を押してエラー画面をスキップしよう。
スコアの傾向だが,このテストで60fpsを超えていれば,普通にゲーム本体をプレイするには十分。ハイエンド環境の合格ラインは100fps以上となる。
CoD4はマルチスレッド処理に対応しているため,CPUが処理可能なスレッド数に応じてスコアは相応に伸びる。だがそれ以上に,GPUのシェーダプロセッサ数やテクスチャユニット数に応じたスコアになりやすい。マルチGPUでも安定したスコアを示すため,DirectX 9世代のゲームをプレイするに当たって期待できるグラフィックスカードの性能を推し量るのに向いたタイトルであると言えるだろう。
近代的なビルが建ち並ぶ街並みから木々が鬱蒼と生い茂るジャングルまで,環境に富んだ南の島「Panau」(パナウ)を舞台に,主人公のRico Rodriguezが暴れ回る,爽快感重視の三人称アクション「Just Cause 2」。広大なマップと自由度の高さ,そして,開発元であるAvalanche Studios独自のゲームエンジン「Avalanche Engine」(Version 2.0)がDirectX 10対応で,DirectX 9,ひいてはWindow XPをサポートしないという点でも注目を集める話題作である。
爽快感重視ながらもグラフィックス負荷は意外に高く,主にグラフィックスカードのパフォーマンスをチェックするのに向いたタイトルといえるが,レギュレーション10〜11世代では,そんな同タイトルに標準で用意され,メインメニューの「Benchmark」から実行できるベンチマークモードを利用する。
テストにあたってのオプション設定は以下のとおりだ。
ゲーム設定
バージョン:1.0.0.2
セーブ&リプレイデータ:不要
Settings−Display Settings
- HUD Opacity:100
- Motion Blur:On
- Subtitles:On
- Statics Buttons:On
- Floating Buttons:On
- Tutorial:On
Settings−Advanced Display Settings
- Texture Detail:High
- Shadows Quality:Medium
- Anti-Aliasing:テストによる
- Anisotropic Filtering:テストによる
- Water Detail:Very High
- Objects Detail:Low
- Decals:On
- Soft Particles:On
- V-Sync:Off
- High-Res Shadows:Off
- SSAO:Off
- Point Light Specular:Off
- Bokeh Filter:Off
- GPU Water Simulation:Off
Settings−Resolution Settings
- Screen Resolution:テストによる
- Full Screen:On
ご覧のとおり,垂直同期を無効化する以外,設定は基本的に初期設定のままだ。
これは,Just Cause 2の描画負荷がかなり高く,描画オプション設定を高くしてしまうとスコアが大きく下がってしまい,グラフィックスカードのパフォーマンス比較に適さなくなるためである。
もう1つ,異方性フィルタリングに関しては,ゲーム内オプション「Anisotropic Filtering」が最低でも2xで,完全には無効化できない。そのため,本タイトルにおいては,「標準設定」の代わりに,アンチエイリアシングを無効化し,2x異方性フィルタリングを適用した「低負荷設定」を用いることにした。
さて,先ほどJust Causeはゲーム側にベンチマークモードが用意されていると述べたが,具体的には3つ,ジャングルに佇む塔で爆発が起きる「The Dark Tower」,赤茶けた大地が印象的な「Desert Sunrise」,そして,近代的な高層ビルが建ち並ぶ「Concrete Jungle」が用意されている。
いずれも,シーン内をカメラが飛び回る,いわゆるFlybyというシークエンスが用意されるが,今回は以上の3つから,めまぐるしい勢いで時間が経過して,太陽光やビルの証明など様相が変化するうえ,ビルの窓ガラスにも背景が映り込むなど,最も負荷の高いConcrete Jungleを使う。
テスト方法は以下のとおりだ。
実行手順
- (1)Just Cause 2を起動
- (2)「Settings」からグラフィックス設定や解像度設定を行う
- (3)メインメニューにある「Benchmark」にある「Concrete Jungle」を実行
- (4)「Benchmark Complete」画面に表示される「Average framerate」を記録する
- (5)(3)〜(4)を再実行。2回のスコアの平均をスコアとして採用する
- (6)(3)以降を解像度などを変更しながら繰り返す
得られるベンチマークスコアのバラつきはそれほど大きくないのだが,それでも実行するたびに1fps程度の誤差は生じるため,今回は,「2回連続実行し,その平均を取る」ことにしている。
今回のテスト設定で60fpsを維持できていれば,(場合によっては一部描画オプションを下げる必要が出てくるが)十分にプレイできるレベル。高いグラフィックス設定を保ったまま快適にプレイすることを考えた場合には,80fps程度のスコアが必要になるだろう。
4Gamerのベンチマークレギュレーションからストラテジーが消えて久しいが,気を抜くとFPS&TPSに偏りがちになってしまうので,レギュレーション11世代では「Sid Meier's Civilization V」(邦題 シドマイヤーズ シヴィライゼーションV 日本語版,以下 Civ 5)を採用した。
Firaxis Games製のCiv 5は,人気ストラテジーの最新作だ。ゲームエンジンが一から作り直され,前作であったような「ユニット数が増えるとフレームレートが落ち込む」などといった問題にメスが入っている。
そのカギとなったのが処理の分散化で,Civ 5ではグラフィックスエンジンのスレッド化によって,処理速度の向上を果たしている。CPUコア数の違いが,ゲームパフォーマンスを左右しやすいタイトルとも換言できそうだ。
一方,DirectX 11世代とされるグラフィックス描画の負荷はさほど高くなく,どちらかといえば,ローエンドからミドルクラスくらいまでのグラフィックス性能を計測するのに向いたタイトルといえるだろう。もちろん,ハイエンドのグラフィックスカードでもスコアに違いは生じるので,「ハイエンドGPU用には使えない」ということはない。
さて,テストにはゲーム側で用意されたベンチマークモードを利用。Civ 5ではベンチマークモードが「Late Game View Benchmark」「Unit Benchmark」「Leader Benchmark」と3つ用意されているが,レギュレーション11世代では,「18人のリーダーが次々と表示され,その間の平均フレームレートを計測する」というLeader Benchmarkを用いる。3モードのうちで,最もGPUによる性能差が付きやすいことから,これを選択した次第だ。
テストにあたってのゲーム側オプションは下記のとおり。解像度とアンチエイリアシング以外は,垂直同期のチェックを外すぐらいで,ほかの設定は初期設定のまま,一番高い設定から変えていない。
4Gamerのベンチマークレギュレーションでは,「高負荷設定」で16xの異方性フィルタリングを適用するが,ご覧のとおり,Civ 5のグラフィックスオプションにテクスチャフィルタリング関連の項目はない。そのため,ここだけはグラフィックスドライバ側で上書き設定(Override)し,適用することとなる。
ところで,先ほどテストにはベンチマークモードを用いると述べたが,ベンチマークモードの利用には,実行ファイルのショートカットにオプションを付加して起動する必要がある。ゲームを起動しようとすると,最初にDirectX 9モードとDirectX 10/11モードのどちらで起動するのか問われる画面が出るので,ここで後者を右クリックし,デスクトップにショートカットを作成。そのショートカットを右クリックしてプロパティを開き,「リンク先」に「-LeaderBenchmark」と書き加えたうえで,本ショートカットを実行する必要があるので,この点は押さえておいてほしい。
というわけで,テスト方法は以下のとおりとなる。
実行手順
- (1)ゲーム本体を起動
- (2)「オプション」からグラフィックス設定や解像度設定を行う
- (3)ゲームをいったん終了させる
- (4)ベンチマークモード用に作成したショートカットからゲームを起動
- (5)スコアが得られたら,再度(4)を実行。2回の平均をスコアとする
- (6)(1)以降を,解像度などを変更しながら繰り返す
テスト結果はその都度,\\ライブラリ\ドキュメント\My Games\Sid Meier's Civilization 5\LogsにCiv5LeaderBenchmark.csvに保存される。csvファイルには,18人のリーダー別に平均フレームレートが記録されているので,その平均をとってスコアとする。テストは1条件あたり2回実行するので,「18人分の平均フレームレート」2回分の平均がスコアになるわけだ。
Leader Benchmarkのスコアを基にゲームを実行してみたところから判断するに,スコアは40fpsを超えていれば及第点。快適なプレイを望むのであれば60fpsは欲しいところである。
ベンチマークレギュレーションで継続的に採用している“クルマ関連タイトル”だが,レギュレーション11世代ではCodemastersの「DiRT 3」,Steam版を採用する。その名のとおり,レギュレーション9〜10世代で採用してきた「Colin McRae: DiRT 2」(以下,DiRT 2)の続編にあたるタイトルだ。ラリードライバー・Ken Block選手が関わって2作めということもあり,氏の代名詞でもある競技「ジムカーナ」(Gymkhana)が採用されていたりするのが,ゲームとしての見どころだ。
採用されているゲームエンジンはCodemasters独自の「EGO Game Technology Engine」(俗称,EGOエンジン)で,天候や時間の経過がシミュレートされているのが大きな特徴。大筋ではDiRT 2と似た印象で,テスト結果も前作と似た傾向になる。
ただし,DirectX 11周りのグラフィックスオプションに変化がある点は指摘しておきたい。
DirectX 11のショウケース的に登場したDiRT 2の場合,「CROUD」「WATER」「CLOTH」といったDirectX 11関連の設定が「ULTRA」まで変更可能で,そのため,AMDの協力を得て開発され,Radeonへ最適化されているにも関わらず,実際のフレームレートは,DirectX 11世代に強いGeForce 400&500シリーズのほうが高く出ていた。これに対してDiRT 3では,DirectX 11 APIを用いる設定が「HIGH」までに抑えられているのだ。これにより,DiRT 3では,GeForce勢がRadeon勢を圧倒するといったことがなくなった。やや後ろ向きだが,DiRT 3もRadeonに最適化されたタイトルなので,こういうことになっているのだと思われる。
また,設定という点では,「柔らかい影を描く技法」であるアンビエントオクルージョンに関する「AMBIENT OCCULUSION」が,従来の「HIGH」からDiRT 3では「ULTRA」まで選択可能に拡張されており,影生成に関する負荷が高められているのもトピックといえるだろう。
以上を踏まえたグラフィックス設定は下記のとおり。設定に当たってはまず,「DETAIL」の「CHOOSE PRESET」から「ULTRA」を選択。これで,DirectX 11モードかつ最も描画品質の高い設定が指定される仕掛けだ。
ゲーム設定
バージョン:最新版(Steamによる自動アップデート)
セーブ&リプレイデータ:不要
ゲーム設定:「OPTIONS−GRAPHICS OPTIONS−DETAIL」
- RESOLUTION:テストによる
- REFRESH RATE:任意(※デフォルトは60Hz)
- MULTISAMPLING:テストによる
- VSYNC:OFF
- ASPECT RATIO:NORMAL
- GAMMA:任意
ゲーム設定:「OPTIONS−GRAPHICS OPTIONS−SETTINGS」
- CHOOSE PRESET:ULTRA(※選択しても「ULTRA」とは表示されない。ここで選択すると,以下の設定が下記のとおり指定される)
- NIGHT LIGHTING:HIGH
- SHADOWS:ULTRA
- PARTICLES:HIGH
- MIRRORS:ULTRA
- CROWD:HIGH
- GROUND COVER:HIGH
- DISANT VEHICLES:HIGH
- OBJECTS:ULTRA
- TREES:ULTRA
- VEHICLES REFLECTIONS:ULTRA
- WATER:HIGH
- POST PROCESS:HIGH
- SKIDMARKS:ON
- AMBIENT OCCLUSION:ULTRA
- CLOTH:HIGH
ゲーム設定:「OPTIONS−AUDIO」
- AUDIO DRIVERS:SOFTWARE(※本項目を変更した場合は,ゲームの再起動が必須になる)
- SPEECH:任意
- MUSIC:任意
- EFFCTS:任意
- ENGINE:任意
ゲーム画面解像度を変更する「RESOLUTION」と,アンチエイリアシング関連の指定を行う「MULTISAMPLING」は,設定内容を反映するのに,一度[ESC]キーを押して確認ダイアログを表示させ,[OK]→[YES]と選ぶ必要がある。このあたりの操作性もDiRT 2のままだ。
なお,4Gamerのベンチマークレギュレーションでは,「高負荷設定」で16x異方性フィルタリングを適用するが,DiRT 3のグラフィックスオプションにテクスチャフィルタリングに関する項目は用意されていないため,これはグラフィックスドライバ側で適用することになる。
テストの手順は下に示したとおり。DiRT 2のときと同じく,ゲーム側に用意された公式ベンチマークツールを用いる。
テストはDirectX 11モード限定。これもDiRT 2から変わらずだが,DirectX 11対応GPUをDirectX 9モードで実行したときと,DirectX 10.1までに対応したGPUをDirectX 9モードで実行したときとで,描画設定の内容も結果も揃わない傾向が現れるためである。DirectX 10.1以前のグラフィックス機能を評価するとき,DiRT 3は省略することになるので,この点はお断りしておきたい。
実行手順
- (1)DiRT 3を起動
- (2)「OPTIONS」にある「GRAPHICS」を設定
- (3)[ESC]キーを押すと「WARNING」ダイアログが表示されるので[OK],さらに[CONFIRM CHANGES]ダイアログに対しては[YES]を選ぶ
- (4)「OPTIONS」の「GRAPHICS」から「RUN BENCHMARK TEST…」を選択し,公式ベンチマークツールを実行
- (5)ベンチマーク終了後に表示される「AVERAGE FPS」を記録する
- (6)(4)〜(5)を再実行。2回のうち高い方のスコアを採用する
- (7)(2)以降を解像度などを変更しながら繰り返す
DiRT 3公式ベンチマークツールの設計もDiRT 2と変わっておらず,実行ごとにシークエンスが微妙に変わり,いきおい,スコアにも若干の変動がある。「一定のスコアを軸に上下する」というわけでもないので,今回は,平均化するのではなく,高いほうのスコアを採用することにした次第だ。
上で述べたとおり,DiRT 3のウリには天候の変化を挙げられるが,事前検証で公式ベンチマークツールに天候の変化は見られなかった。天候を変更してしまうと,負荷が変わりすぎてしまうということなのかもしれない。
最後にスコアの見方だが,プレイアブルかどうかをチェックする指針としては,前作同様,平均30fpsが基準となる。ハイエンドGPUなら60fps以上が合格ラインとなるだろう。
マルチスレッド処理に対応したEGOエンジンはCPUのコア数に応じてベンチマークスコアが高くなりやすいという特徴を持っているが,その影響が出やすいのはハイエンド寄りのGPUを組み合わせたときに限られるというのも,DiRT 2と同じである。
4Gamerのベンチマーク測定において重要なツールである,Frapsについてここで説明しておきたい。
Frapsは,DirectX/OpenGLで動作するアプリケーション向けのキャプチャーソフトだ。フルバージョンは29.95ドルするシェアウェアで,4Gamerではボリュームライセンスを取得して利用しているが,開発元であるbeepaのWebサイトからダウンロードできる無料の体験版でもフレームレートの計測は行える。
インストールしたら,フレームレートの計測前にFrapsを起動。メインウィンドウが起動するので,「FPS」タブを選び,「Stop Benchmark automatically after」直後にある入力ボックスに,秒単位で数値を入力する。例えばレギュレーション6.0準拠でCall of Duty 4のベンチマークテストを行うなら,「60」と入力すればいい。
続いて「MinMaxAvg」にチェックを入れ,最少/最大/平均フレームレートがログに書き出されるようにしておく。
フレームレート計測を実行するには,まず,Frapsを最小化して,その状態で計測対象のゲームを起動する。すると,画面の隅に黄色の数値が表示されるはずだが,それがリアルタイムで計測されるフレームレートだ。あとはリプレイを再生し,適切なタイミングでフレームレート計測開始のホットキー(標準では[F11]だが,FPSタブの「Benchmarking Hotkey」で変更可能)を実行すればいい。 ベンチマーク計測中はリアルタイムのフレームレート表示が消え,設定した時間が経過すると計測が終了して,再びフレームレートが表示されるようになる。なお,ログファイルはFrapsをインストールしたフォルダ以下,「\benchmarks」の中に保存されるようになっており,上書きされることはない。
掲載されているテスト方法は誤りを含んでいる場合があり,予告なく修正されることがあります。また,公開しているリプレイデータは,4Gamer.netの読者が実際にベンチマークテストを行うに当たっての利便性を図るためだけに提供されるものですが,出典を明示し,かつ4Gamer.netへのリンクを明示的に張る場合に限り,商用/非商用媒体で利用できるものとします。ただし,このファイルを利用することによって,万が一OS,あるいはPC本体やその周辺機器などといったハードウェアに不具合が生じても,4Gamer.net編集部,著者,およびAetas株式会社は一切その責任を負いません。
- 関連タイトル:
ベンチマーク
- この記事のURL: