3DゲームファンのためのMatrox Parhelia講座 |
図1 Parhelia-512のレンダリングエンジン |
図2 魚が泳ぎ回るParhelia-512のテクノロジーデモ |
図3 今やマルチテクスチャリング処理は出来て当たり前。上を目指すならばさらに何かが必要 |
これに加え、3Dゲームユーザーにとって興味深いのは、レンダリングエンジンのゴージャスさだ。プログラマブルシェーダ関連の仕様についてはPC Watchの記事を参考にしてもらうとして、本稿で特に触れたいのはそのピクセルエンジン部についてだ。
テクスチャパイプラインが4基構成なのはNVIDIA GeForce4Tiと同じだが、各ユニットがGeForce4Tiの2倍に相当する毎クロック4ステージのテクスチャを処理できる。そして豪華絢爛なのが、その出力を「5ステージ構成のプログラマブル・ピクセル・シェーダーユニットに渡せる」ということだ。プログラマブルピクセルシェーダのステージ数はGeForce4Tiの2.5倍ある。すなわち、この全ての処理が1クロックで完了できるため、Parhelia-512は1クロックあたり36個のシェーダー処理が出来ることになる(図1)。
ちょっと一般のゲームファンには難しかったもしれない。ここまでをわかりやすく言うと、例えばポリゴンに対し4枚のテクスチャを一度にマッピングをして、さらにそれに対して5ステージ分のピクセルシェーダー処理を適用することがいっぺんにできるということだ。
図2は、Parhelia-512のデモ画面のスナップだが、ここに登場する魚達は、テクスチャマッピング(Decal)のほか、光沢(Specular)、ライトマップ(Caustic)が適用され、法線マップ(Normal)を元にバンプマッピングが適用されている。現在の3Dグラフィックス表現において、フォトリアリスティックを実現するためには、このように複数のテクスチャ処理が当たり前のようになってきている(図3)。
マルチテクスチャリング処理は今では出来て当然で、さらにリアリスティックを求めるならば、これに対してさらにピクセルシェーダが適用できなければならない。Parhelia-512はこういった時代のムーブメントに応えられるよう設計されたGPUなのだ。
非常に細かいことなのだが、魚のデモの魚は、前述の4つのテクスチャ処理の他に、ピクセルシェーダを適用し、透明なヒレに対しての屈折処理や、鱗のデフューズ(拡散反射)のシミュレーションまでやっている。もちろんGeForce4TiやRadeon8500でも複数回レンダリングエンジンを回せば同様のイメージを得ることはできるが、同一クロックのParhelia-512ならば同じ処理を2倍以上高速にこなせるのだ。
これは、既存の3Dゲームを高速に動かせるというメリットはもちろんのこと、さらなるこだわりの表現で描写した3Dキャラクター達をゲーム内で取り扱えるようになることを意味している。
■ Parhelia-512が実装した新しいアンチエイリアステクノロジー
Parhelia-512は、我々3Dゲームユーザーにとって、アンチエリアスの新しいソリューションを提案してくれた。それがフラグメント・アンチエリアシング(Fragment Antialiasing;FAA)だ。
これは表示前の映像に対して輪郭(エッジ)抽出を行ない、その輪郭近傍に対してアンチエリアス処理を施すものだ。そもそもジャギーとは、面の表現よりも、境界線で強く感じられる。強く感じられるところのみジャギーを除去しようという発想なわけである。
一方、全画面に対してアンチエリアスを施すフルスクリーン・アンチエリアシング(Full Screen Antialiasing;FSAA)では、
・ビデオメモリ多く消費する
・解像度が高ければ高いほど処理ピクセル数が増えてパフォーマンスが落ちる
といった問題があったが、FAAでは、局所的にアンチエリアス処理を行なうだけなので、上記2つの問題をものの見事に回避できる。
アンチエイリアスクオリティは16x(4x4)相当。16xというと1ドット描画するのに16ドット分の演算を行なうわけなので相当パフォーマンスが落ち込みそうに思えるが、前述の通り、AA処理はエッジ近傍にしか行なわれない。結果としてパフォーマンス低下はほとんど無く、ハイクオリティにジャギーを除去できるのだ。
なお、輪郭抽出は独立したユニットで行なわれるため、レンダリングエンジンのスループットに大きく影響しないようになっている。
「Microsoft Flight Simulator 2002」によるFAAのデモ。左がFAAなし、右がFAAあり。FAAをかけてもパフォーマンスの低下がほとんど確認できないレベル |
通常のゲーム映像(左)から輪郭部分(中)のみを抽出してFAA処理を行なう(右) |
■ 既存のゲームがお気軽にサラウンド画面で楽しめる
Parhelia-512の機能のうち、PC-3Dゲーマーにとって最も歓迎したいのが、3画面出力機能だ。
Parhelia-512では、
・アナログRGB×3
・アナログRGB×2+DVI×1
・アナログRGB×1+DVI×2
といった組み合わせで、3画面同時に映像出力が行なえる。
MatroxはG400発表時、1枚のビデオカードでデュアルディスプレイ環境を実現する「DualHead」という機能を提供したが、Parhelia-512では最高で3画面出力に対応するのだ。
ただし、独立したデスクトップ空間として提供できるのは2つまでに限られ、3画面出力は、1つの大きなデスクトップ空間を3つのディスプレイに分割して出力するに限られる。たとえば、デュアル(2画面)出力では1,024×768のデスクトップが2枚持てるが、トリプル(3画面)出力では、3,072×768の横に長いデスクトップ空間が3つのディスプレイに出力されるイメージになる。
逆に言えば、トリプル出力では、アプリケーション側(すなわち3Dゲーム側)は、1つのディスプレイデバイスへの描画と思いこんでくれるので、ゲームプログラム側が複数ディスプレイ出力に対応していなくても良いのだ。
なお、一般的な3Dゲームでは、視点からの景色が、ある画角をもって描画される。この画角を広げてレンダリングしてやればパノラマ的な景色をレンダリングすることができるのだ。
まさしく「コロンブスの卵」的な発想だが、その効果は抜群で、「広い範囲が見える」のはもちろんのこと、左右斜め横方向の景色が見えるので、強いサラウンド感が得られるのである。
ほとんどの3Dゲームでトリプル出力が楽しめるとのことだが、万が一不具合が出たタイトルであっても、そのゲーム開発側が修正するべき項目はそれほど多くないため、対応パッチの作成は容易だという。
発表会では「Quake III Arena」(id software)、「Microsoft Flight Simulator 2002」(Microsoft)、「Haegemonia」(Digital Reality)、「Return to Castle Wolfenstein」(id software)、「Solfier of FortuneII: Double Helix」(Raven Software)、「STARWARS JEDI KNIGHT II:JEDI OUTCAST」(Lucas Arts)、「Unreal Tournament 2003」(Epic Games)などを対応タイトルとして紹介したが、現時点で35タイトル、発売時期にはもっと増やされるそうだ。
対応ソフトでなくとも、既存のソフトも将来のソフトもトリプル出力で楽しめる(可能性が高い)というのは、非常に高い訴求力がある。現在、17インチCRTディスプレイであれば、安価な物であれば2万円台で購入できる。ディスプレイをあと2台揃えるということは、(置くスペースさえなんとかすれば)それほど敷居は高くないだろう。
既に、5.1chサラウンド環境でゲームを楽しんでいるようなハードコアゲーマーならば、今度は、Parhelia-512でサラウンド画面の導入を真剣に検討すべきだろう。
「Quake III Arena」で三画面出力を行なったところ。画面下のメニューが横に伸びてしまっているが、45度の視角が135度になるメリットはあまりにも大きい。FPSでは一気にスタンダードになりそうなインパクトだ |
「Microsoft Flight Simulator 2002」で三画面出力を行なったところ。こちらはまったく自然な視界が広がっている。臨場感もググッと高まっている。この三画面表示で「Combat Flight Simulator 3」をプレイしてみたいところだ |
□Matroxのホームページ
http://www.matrox.com/
□関連記事
【5月14日】Matrox、世界初512bit GPU「Parhelia-512」を発表
~DirectX 9、10bitカラー処理、Triple Headなど多くの新機能(PC Watch)
http://pc.watch.impress.co.jp/docs/2002/0514/matrox.htm
【3月28日】DirectX 9注目の新テクノロジー「D-MAP」を理解する(PC Watch)
http://pc.watch.impress.co.jp/docs/2002/0328/dmap1.htm
(2002年5月14日)
[Reported by トライゼット 西川善司]
|
GAME Watchホームページ |