■リアルゲーム系ベンチマーク
ベンチマークというのは専用プログラムであることが多いのだが,ベンチマークのためだけに作られたプログラムでの結果などに意味はあるのかという疑問を感じる人も少なからずいるだろう。ベンチマークの代表格である3DMarkはゲームエンジンのデモを兼ねていたとはいえ,長い間非現実的なベンチだと思っていた人のほうが多いだろう。かといって,ビデオチップメーカーやCPUメーカーの作るベンチマークはやはり偏りが気になるし,それではとViewPerf(標準的OpenGLベンチマーク)とか大がかりなものを持ち出しても,ゲームでの性能とはかけ離れてしまう。
ひと口に「ゲーム」といっても,多種多様。どれかのゲームで優れた結果を出したビデオカードなり,CPUなりがあったとしても,自分が遊びたいゲームに適しているとは必ずしもいえないかもしれない。
ということで,目的のゲーム=実際のゲームでベンチを取るのが一番だという結論になるだろう。いくつかのゲームではベンチマークモードを持っており,現実のゲームに近いところでの性能評価が可能になっている。
そういったもの以外でも,だいたいの動作速度をフレームレートで表示できれば十分に用は足りる。そのゲームで快適に遊べるかどうかが問題であるときに,0.1フレーム/秒単位の話をしてもしかたがない。2,3fpsも誤差みたいなものだ。
・FRAPS
ということで,大まかなfpsが表示できれば目的は達成される。そんなときに重宝するツールがFRAPSだ。最近あちこちでよく使われているビデオキャプチャツールだ。ほぼどんなゲームでもfps表示でき,そのログを記録できる。ベンチマークの取りにくいゲームでもなんとかベンチを取りたいという場合に使うといいだろう。これを使うと,ほぼあらゆるゲームやデモをベンチマーク化することもできる。
●FarCry
とりあえずシェーダ多用型ゲームの代表格から。意外なことに,比較的素直にDirectXを使ってるようで,NVPerfHUDが素直に動くのがうれしい。DirectX 9.0cにも対応しているはずなんだが,対応パッチが一度出てキャンセルされてと,まだ正式な対応版というのはない状況だ。Shader2.x系はあちこちで使われている。もちろんShader1.x系も全開状態だ。地面は固定機能の描画の上にShader1.xでの描画を重ねていたり,金属質な部分はShader2.xを多用しているようだ。
・ベンチマークの方法
HardwareOCが配布しているツールを使う。製品版に対して特定のリプレイデータを与えてフレームレートを記録するものだが,日本語版でも大丈夫なのがうれしいところ。
●DOOM3
プログラマブルシェーダ使いまくりの最新ゲームだが,NVPerfHUDでざっと見たところでは,ほとんどDirect3Dをまともには使っていないようだ。インストール時の挙動からして,OpenGLではなくてDirectXを使ってるはずだとは思うのだが,NVPerfHUDでの操作はまったく受け付けない。よって詳細は不明。
・ベンチマークの方法
DOOM3のベンチマークでは,Timedemoという昔ながらのベンチマークモードが踏襲されており,その機能を使用する。Ctrl+Alt+漢字キーでコマンドモードに入り,画面上半分に表示されるコンソールのコマンドラインから,
timedemo demo1.demo
と入力する。これでdemo1.demoというコマンドファイルの内容が実行され,平均フレームレートが表示されるようになる。
なお,コマンドモードからはDOOMシリーズでお馴染みのチートコードもそのまま使えるようだ。
■普通のゲームでベンチマーク?
以上のように,FPS系ゲームはベンチマークモードを持っているものがあったり,外部ツールで対応しているものが多い。フレームレート命のゲームなだけに,ベンチの取れないものでもなんとかベンチ測定しようと頑張る人が多いようだ。
さて問題は,そういったフレームレート表示機能のない一般的なゲームでいかにデータを取るかだ。
●Lineage II
ベンチマークの取りようがないものの代表が,MMORPGだろう。評価条件を一定にすることがほぼ不可能で,基準値の取りようがない。表示性能だけでも基準がほしいという場合には,ゲームとは別にテストプログラムを用意するFFXIのようなアプローチが望ましいが,どれにでも用意されているわけではない。ゲーム中のfpsを計測して基準とするしかないだろう。
ここでは,最近売り出し中のLineage IIを例にベンチの可能性を見てみよう。基本情報としては,Unreal系のエンジンを使っているということではある。
NVPerfHUDを試すと,肝心の情報はまったく表示されない。まあこれは製品版のゲームではありがちなのでしかたない。テクスチャをMIPMAP最小に設定することはできるので,一応効いてはいるみたいではある。そこでシェーダの使用状況をチェックしてみると,Shader1.xにも2.xにも反応なし。以前,Shader1.2使用パッチが当たったとかいう話だったが,現状のもので試してみる限りではシェーダ関係はなにも使用されていないようだ。少なくともNVPerfHUDではShaderのどれにも反応せず,固定機能カットで全画面真っ白になった。特定のアイテムなどで使用されているものかもしれないが,おそらく大半のシーンでは関係ないものと思われる。
とりあえず,FRAPSを組み込む。ネットワークや人口密度の影響を排除するため,今回は,キャラクター作成画面でのフレームレートを参考にすることにした。種族名だけを選択して切り替わった画面のフレームレートの合計値を出してみよう。これならゲーム内と同じ描画エンジンを使っていることは間違いないだろうし,それなりには参考になる値が,それなりに環境に依存せず測定できると思われる。精度がいまいちなのと見て楽しくないというのは難点だが。
参考までに結果は,
|
|
|
|
|
ヒューマン | 14
| エルフ | 10
| ダークエルフ | 31
| オーク | 30
| ドワーフ | 35
| 計 | 120
|
|
画質は最高設定での結果(Athlonxp2000+,GeForce 6800 GT)
ということになった。ヒューマンとエルフは背景に水面があるので多少重くなっているようだ。
ネットワークにつないだ状態でのプレイベンチは,また別途考える必要があるだろう。
|
|
forGamer.net
|