エレクトロニック・アーツが2009年1月22日に発売したWindows用3Dゲーム「ミラーズエッジ」は、物理演算技術の一つ「PhysX」に対応している。PhysXはグラフィックスチップメーカーであるNVIDIAの独自技術。物体の動きを一定の法則にのっとって計算することで、画面内の物体の動きをリアルに見せられる。
ミラーズエッジでは、ガラスの壊れ方や、煙の様子、布の動き方にPhysXを利用している。ミラーズエッジの設定画面でPhysXの有効/無効を選べるが、PhysXによる画面表現は実に多彩。ミラーズエッジの本来の映像を楽しむためには、PhysXは有効にすべきだと言える(関連記事)。
ただし、PhysXを専用で処理するハードウエアがないと、ミラーズエッジでPhysXを有効にしても、画面描画が著しく遅れてしまう。NVIDIAのグラフィックスチップ「GeForce 8シリーズ」「同9シリーズ」「同GTX 200シリーズ」では、チップ内の演算機構を使って3D画像の描画とPhysXの演算が可能。これらのチップを搭載したボードを組み込んだPCなら、PhysXを有効にしたミラーズエッジのゲーム画面が実用的な速度で描画される。
ほかに、「SLI PhysX」を使う手もある。GeForce 8/9/GTX 200の各シリーズをマザーボードに2枚取り付けて、1枚を画像描画用、もう1枚を物理演算用として使う技術だ。これまでの「SLI(Scalable Link Interface)」は、基本的にSLIに対応したNVIDIA製チップセットを搭載したマザーボードが必要だったが、SLI PhysXはPCI Express x16スロットを2本以上備え、グラフィックスボードを2枚搭載できるマザーボードならば使える。
使うグラフィックスチップやSLI PhysXの構成によって、描画能力にどれくらい差が出るかをミラーズエッジで検証した。
低価格機向けのグラフィックスボードでも物理演算処理専用に使えるSLI PhysX
テストに使用したのは以下の環境だ。
- 【CPU】Core 2 Quad Q9650(3GHz)
- 【マザーボード】P5Q Deluxe(ASUSTeK Computer、Intel P45搭載)
- 【メモリー】DDR2-800 2GB×2
- 【HDD】WD Caviar Green 1TB(Western Digital、WD10EADS)
- 【OS】Windows Vista Ultimate Service Pack 1 32ビット日本語版
比較用のグラフィックスボードは以下を使用した。
- 【GeForce GTX 260】GLADIAC GTX 260 V2 896MB(エルザジャパン、シェーダー216個)
- 【GeForce 9800 GT】GLADIAC 998 GT V2 512MB(エルザジャパン)
- 【GeForce 9600 GT】EN9600GT MATRIX/HTDI/512M(ASUSTeK Computer)
- 【GeForce 9500 GT】GF P95GT/512D3(Galaxy Microsystems)
- 【ATI Radeon HD 4870】SAPPHIRE HD 4870 512MB GDDR5 PCI-E(Sapphire Technology)
- 【物理演算ボード】PHYNITE X100 PCI 128MB(エルザジャパン)
- 【ドライバー】GeForce Driver 181.22ベータ版(NVIDIA)、PhysX System Software 9.09.0010(NVIDIA)、Catalyst 8.12(AMD)
今回テストしたGeForce GTX 260は、後期に出たシェーダーが216個のチップだ。GeForce 9800 GTとGeForce 9600 GTは、ミドルクラスのグラフィックスチップ。どちらもGeForce GTX 260の下位で、GeForce 9600 GTよりもGeForce 9800 GTが速い。GeForce 9500 GTは低価格機向けのチップだ。
先に述べたように、対応チップセット搭載マザーボードが必須だったSLIに比べて、SLI PhysXの利用条件は緩和されている。SLIには対応していないIntel P45チップセットを搭載した「P5Q Deluxe」(ASUSTeK Computer)でも、SLI PhysXが利用できた。SLIは基本的に同種のグラフィックスボードでしか使えないが、SLI PhysXは異なるグラフィックスボードでも使える。高性能なボードは3D描画、性能が低めのボードは物理演算用などと使い分けられる。今回、GeForce 9500 GTは、描画用ではなくSLI PhysX用として検証した。
ATI Radeon HD 4870はAMDの高性能グラフィックスチップ(ボード)であり、NVIDIAの独自技術であるPhysXはチップで処理できない。今回は、PhysXに対応しないグラフィックスチップを使ったときにどういう変化があるかを調べるために使った。ATI Radeon HD 4870搭載ボードの価格は2万円台半ばから3万円前後。GeForce GTX 260よりも、少し安い。
最後の「PHYNITE X100 PCI 128MB」は、AGEIA Technologiesが提供していた演算チップを搭載した、物理演算専用のボード。AGEIA Technologiesは2008年2月にNVIDIAに買収されている。PHYNITE X100 PCI 128MBは2007年5月に発売されたボードであり、現在は販売していない(まれにパーツショップで格安品が出回ることはある)。かつての専用ボードが、現在のGeForceと比べてどの程度の性能を持っているかも調べてみた。
チップ単体だと、PhysX有効で描画枚数は下がる
グラフィックスチップや構成の違いで描画性能がどう変わるかを見るために、ゲーム中の同じシーンを描画させて、1秒当たりの描画枚数(以下fps、Frame per Second)を測定した。描画性能に余裕があるチップなら、それだけfpsが上がり、映像が滑らかに動く。30fps以上あれば滑らかに動いているように見えるが、ゲーム側のグラフィックス設定次第ではさらに描画負荷をかけられる。fpsの値が高いほど、高画質設定にしても滑らかに動く余地がある。
使用したミラーズエッジは、バージョン1.0.1パッチをインストールした英語版だ。ミラーズエッジのレビューそのものは日本語版で行ったが、テストした1月21日時点で公開されていたバージョン1.0.1のアップデーターを適用しても、日本語版ではfpsが一定の値より上がらない現象が確認されたためだ。
描画する3Dの質感などを設定する「ビデオ」設定では、画面解像度は1920×1200ドット、「TEXTURE DETAIL」と「GRAPHICS QUALITY」を「HIGHEST」、アンチエイリアスをオフにしている。 ゲーム実行中のfpsは「Fraps」(beepa、バージョン2.9.8)で計測した。ガラスが砕けたり、銃撃されて破片が飛び散る場面を含むシーンを各ボードで描画させている。
グラフ1はゲーム側のPhysX設定を切り替えたときの変化を調べた結果だ。グラフ中の「HW有り」は、GeForceによるPhysXのハードウエア処理を有効にしたときの結果であることを示す。「HW無し」は無効にしたときの結果だ。グラフィックスチップでPhysXの演算を処理するかどうかは「NVIDIA コントロールパネル」で、有効/無効を選択できる。
各グラフのうち、左側の値が最低、右側が最大、中央が平均値を示している。壁と窓だけのようなシンプルな場面ではfpsの値は上がり、多数のキャラクターが登場するシーンではfpsは下がる。シーンによってfpsが下がっても、値が十分高ければ動きに問題はない。著しく低くなれば、画面の動きがぎこちなくなる。
ゲーム側でPhysXを無効にした時は、GeForce GTX 260のHW有り、無しでも、fpsの値に大きな差は見られない。PhysXを使った描画を行わないので当然の結果だ。GeForce 9800 GT、GeForce 9600 GTでfpsが下がっているが、これはグラフィックスボードの3D描画性能に準じていると考えてよい。PhysXを使わない条件では、ATI Radeon HD 4870もGeForce GTX 260とほぼ同じ描画性能を見せている。
一方、ゲーム側でPhysXを有効にすると、全体的にfpsが低下する。目立つのがグラフィックスチップによるPhysXの処理を無効(HW無し)にしたGeForce GTX 260とRadeon HD 4870での最低値だ。fpsは一けたまで下がっている。平均fpsは28。実際の画面を見ても、処理が遅れており、動きがぎこちなかった。両ボードの最大値はPhysX無効時と同様に高いが、これは壁と窓のシンプルな場面を描画していたときの値。この画面ではPhysX処理をしていないとみられる。
PhysXをハードウエアで処理するGeForce GTX 260(HW有り)、GeForce 9800 GT、GeForce 9600 GTでもfpsは下がる。GeForce 9800 GTでは、ゲーム側でPhysXを無効にしたときのGeForce 9600 GT程度になる。GeForce GTX 260では、「HW有り」の最大値が「HW無し」よりも低い。ゲーム側でPhysXを有効にすれば、その演算処理にグラフィックスチップが使われるようになる。描画にしか使われないときに比べてfpsは落ちてしまう。
ただ今回のグラフィックス設定とテストに使ったシーンでは、fpsが低いGeForce 9600 GTでも、平均で43fpsは出ている。ゲームのプレーには支障がないレベルだ。
SLI PhysXなら補助に使うのが9500 GTでも、描画枚数の低下を防げる
次にSLI PhysXを試した。下の画面はマザーボードにGeForce GTX 260とGeForce 9800 GTを取り付けたときのNVIDIAコントロールパネルだ。2枚搭載すると、PhysXを処理するボードを選べる。
グラフ2はGeForce GTX 260とGeForce 9800 GTを組み合わせて、fpsを測定した結果だ。PhysX処理専用にGeForce 9800 GTを使用している。ゲーム側でPhysXを無効にすると当然ながら全く効果がないが、PhysXを有効にしても同等のfpsが維持できる。SLI PhysXは、fpsを引き上げるというより、PhysX処理によるfpsの低下を防ぐイメージだ。
しかし、GeForce 9800 GTは1万5000円以上のグラフィックスボードで、3D描画処理にも十分使える。このクラスのボードを物理演算専用ボードにするのはもったいない。
グラフ3は、GeForce 9800 GTよりも価格が安いグラフィックスボードを追加した時の結果だ。GeForce 9800 GTとGeForce 9600 GTは同等だが、GeForce 9500 GTは若干下がっている。物理演算ボードはGeForce 9500 GTに負けてしまったが、それでもGeForce GTX 260単体よりfpsは上なので一定の効果がある。
ATI Radeon HD 4870をメインにした環境でも、物理演算用にGeForce 9800 GTを追加して試そうとしたが、デバイスドライバーのインストールに失敗した。物理演算ボードは旧バージョンのデバイスドライバーを入れてから、最新のドライバーをインストールすることで認識したが、fpsの向上は確認できなかった。
今回試した限りでは、ミラーズエッジでPhysXを有効にして、GeForce側でPhysXを処理すると、やはりfpsは下がってしまうことが分かった。描画数を下げないために、SLI PhysXを使用するなら、GeForce 9600 GTを追加すれば十分な性能が出るだろう。
ただ、SLI PhysXはSLIとは異なり、3D描画能力は上がらない。3D描画能力は描画用ボードの性能に依存するとみられる。高性能な描画ボードを搭載しなければ、効果は出にくいだろう。
日経WinPCでは、PCパーツをベンチマークテストで徹底的に評価し、ライバル製品と比較した記事を毎号掲載しています。WinPCはPC自作の総合情報誌です。 >> 最新号の目次とご購入はこちら