Text & Photo by トライゼット西川善司

ページ 1/2

■GeForce FXシリーズ,統一アーキテクチャ戦略の真相は……

西川善司(以下,善):
 お久しぶりです。2002年12月の取材のあと,たくさんのGeForce FX関連の記事を書きましたよ。最も新しいのは「DOS/V Magazine」3/15号のGeForce FX特集です。ほら(といって見本誌を開いて見せる)。

NVIDIA GeForce FXシリーズプロダクトマネージャGeoff Ballew氏
Geoff Ballew(以下,GB):
 どれどれ。うん,素晴らしいね。おやおや?(3DMark03の解説記事を見つけて)これは良くない記事だなぁ(笑)。(*1)
善:
 ついに,NV31/34と呼ばれていた廉価版GeForce FXが発表されたわけですが,「DirectX 9を79ドルで!」というキーワードは,なかなかセンセーショナルでしたね。

GB:
 そうですね。シンプルで分かりやすいメッセージだったと思います。業界はきっとこの流れに乗っていくと信じています。
善:
今回発表されたGeForce FXファミリーは,すべてのマーケットレンジの製品が同じ表現力をもっていますね。

GB:
 我々にとって「一つのコアアーキテクチャを基にしたGPUをすべてのマーケットレンジに投入する」というのは,初めての試みなんです。これは,GeForce FXをスケーラブルに設計したからこそ,できたといえるでしょう。
 もっと分かりやすくいうと,GeForce FX 5600/5200(以下,FX5600/FX5200)は時間をかけずに設計できたということです。これはコスト削減にもなっているんですよ。
善:
 なぜ,このようなファミリー展開をするに至ったのですか?

GB:
 いくつかの理由があります。
 3Dアプリケーション開発者のほとんどは,常にGPUの新機能を使いたいと思っています。ところが,ゲームなどのアプリケーションを配給するパブリッシャは,ユーザーが使用しているGPUに気を配る必要がある。せっかく新機能を活用したアプリケーションも,ユーザーがそれを動かせなければ意味がありませんから。
善:
 今までは,新機能はハイエンドGPUに搭載され,成熟してくるとメインストリームクラスやローエンドクラスのGPUにもその機能が採り入れられるという図式でしたね。

GB:
 そうです。でもそれでは新技術の"普及"が遅くなってしまうんです。
 そこで我々は,ハイエンド層だけでなくすべてのマーケットレンジのGPUに,ハイエンドGPUと同じ機能を実装することにしたんです。
善:
 このタイミングでそのような戦略に転換したのはなぜですか?

GB:
 我々はDirectX 8世代GPU「GeForce 3」の発表で,プログラマブルシェーダという概念をPCグラフィックスの世界に取り入れました。これはセンセーショナルな出来事だったのですが,非常に限定されたもので,今思えば使いづらかったといえます。シェーダプログラムは長さが限定され,命令は少なく,しかもアセンブリ言語で書く必要がありましたし……。
センセーショナルに発表されたこのキーワード。当初,関係者には99ドルと説明されていたのが,急遽20ドル安く再設定された。これはいうまでもなく,ATI RADEON 9200潰し戦略のためである
善:
 ATIがピクセルシェーダ1.4を発表したり……?(笑)

GB:
 そう,その問題もありましたね(笑)。まぁとにかく,DirectX 8時代というのは転換期ではありましたが,混沌とした時代だったと思うんです。
 こうした状況は,先頃リリースされたDirectX 9のプログラマブルシェーダ2.0の台頭,そしてそのプログラミングを支援するマイクロソフト高級シェーダ言語「HLSL」や我々の「Cg」といったシェーダ言語の登場で収束に向かっています。
 プログラマブルシェーダ技術が確立しつつあるこのタイミングこそ,すべてのユーザー層にDirectX 9世代GPUをお届けするのに最適だと考えました。
善:
 「DirectX 9GPUをすべてのユーザー層に普及させる」という流れは,GPU業界全体を活性化することにもなりそうですね。

GB:
 まさにその通りです。

  (*1)NVIDIAは2003年2月に,3DMark03に対して批判的な公式声明を出した。その直後,3DMark03制作側は反論声明を発表し,さらにその後ATIが3DMark03擁護発言をするなど,現在GPU業界はこのあたりの話題がホットだ。


■プログラマブルシェーダ2.0は,高級言語で使われてこそ意味をなす

善:
 FX5600/FX5200の発表会では「S.T.A.L.K.E.R.:OblivionLost」(forGamer内での情報は「こちら」),「TRIN2.0」などのゲームが紹介されました。あれらはすべてDirectX 9フィーチャーフル対応と考えてよいのでしょうか?

GB:
 いえ。正確には"DirectX 8フィーチャー+DirectX 9フィーチャーの一部"です。ただし,シェーダ部はCg(もしくはHLSL)を使って書かれています。
「S.T.A.L.K.E.R:Oblivion Lost」の画面より。フォトリアリスティックな3Dグラフィックスの実現には,もはやCgやHLSLは欠かせない
善:
 CgやHLSLの利点は,"開発者がシェーダを書きやすい"というところにあるんですよね。

GB:
 もちろんそれ以外にも利点はあります。例えば新しいGPUが登場したときには,そのGPUに対応したコンパイラで再コンパイルすれば,シェーダプログラムが最適化されるのです。これはパフォーマンス面においても有利であることを意味します。
善:
 高級言語で書かれたシェーダプログラムは,再利用効率も高まりますね。

GB:
 そうです。ライブラリ化されたシェーダプログラムは,ゲームごとにカスタマイズしやすいですし。これからはきっとシェーダプログラムの資産化,共有化が進むことでしょうね。


■GeForce FX 5600のパフォーマンスは?

善:
 GeForce FXシリーズのピクセルレンダリングパイプラインの話は非常に不透明で,各方面でさまざまな憶測が飛び交っていますね。FX5600は「4パイプライン」で「6ピクセルシェーダ」という説明がされたようですが,これはどのような意味なんでしょう?

GB:
 ある状況下では,GeForce FXは1クロックあたり6個のシェーダ命令が実行できます。だからそういう説明をしたのです。
 これまでGPUは,

  ・レンダリングパイプライン数
  ・1クロックあたりのピクセル数
  ・1クロックあたりのシェーダ命令の実行数
  ・1クロックあたりの最大適用可能テクスチャ数

といった項目で性能を推し測ってきました。
 ところが,柔軟なプログラマビリティを重視して設計された新世代GPU GeForce FXシリーズの(ピクセルエンジン部の)パフォーマンスは,非常に説明が難しいんです。だからFX5600の性能を言い表そうとすると,

  ・ある状況下では,1クロックあたり6シェーダ命令を実行可能
  ・1クロックあたり4ピクセル出力が可能
  ・1クロックあたり4テクスチャ適用可能
  ・1クロックあたり16個のテクスチャを参照可能

といった表現にならざるを得ないのです。
善:
 1クロックあたりのスループットを競っても仕方ないと?
「Morrowind」の水面のエフェクトは,NVIDIAの技術協力によって実現された


GB:
 そうです。我々が「モダンアプリケーション」と呼んでいる,これから主流となる3Dグラフィックスは,どんどん複雑になっていきます。我々がその"一例"として公開したタイムマシンシェーダ(forGamer内での情報は「こちら」)などは,一度に14枚のテクスチャ参照を使っているんです。
 またこれからの3Dグラフィックスは,最終的にフレームが生成されるまでに非常に多くのパスを経由します。ボリュームシャドウならZバッファレンダリングやステンシルバッファの書き込み,シャドウマッピングの場合なら,光源の数だけシャドウバッファ生成が必要になるんですね。そのほかにも,ライトマップやバンプマッピングを同時に処理する場合もあることでしょう。
善:
 何気なく見ている60fpsのシーンも,実はGPUは240回レンダリングさせられている,なんていうことも現実に起こりうるわけですね。

GB:
 そうしたモダンアプリケーションを滞りなくこなすために,GPUに求められる性能とは一体なんだと思いますか?
 そう,それはあらゆるレンダリングモデルに適応できる潜在能力なんですよ。
 つまり上の例を受けていえば,Zバッファレンダリングやステンシルバッファを高速に処理できたり,多数のテクスチャ参照をこなせたり……ということです。
善:
 そうしたアプリケーションでこそ,GeForce FXの真価が発揮できると?

GB:
 「QuakeIII」のベンチマークなどは2レイヤーテクスチャ程度なので,真価は発揮されません。だから,我々はより新しい世代のゲームソフトのベンチマークモードを推奨するのです。
善:
 でも,そういうソフトは今のところ見当たらないようですが……。その意味では,GeForce FXシリーズのコアアーキテクチャは時期尚早だったのでは?

GB:
 従来の3Dグラフィックスを高速に処理するだけのGPUならば,我々なら簡単に作れるんですよ。でも長い目で見た場合,新しい技術進化を支援するような"革新的なもの"を提供していく必要あるのです。
善:
 投資……みたいなものですか。

GB:
 そうともいえるでしょう。新技術を組み込んだGPUを提供すれば,新しいビジュアルが生まれますし,そのビジュアルを実現するために,ユーザーはGPUを購入してくれることになるわけですから。
 その意味で,GeForce FXシリーズは"近未来の"3Dアプリケーションを動かすためのGPUといえると思います。
GeForce FXのデモ「タイムマシン」で使用されたシェーダプログラムは,シェーダがパラメトリックに挙動を変化させる能力をもつ
善:
 "家庭用ゲーム機とキラータイトル"と同じ関係ですね。

GB:
 その法則はGPUにもいえると思います。だから我々は,開発者を全力で支援しているのです。Cgを開発したのはそのためですし,サポートや資料の提供も積極的に行っています。またSoftImage,3D Studio MAXやMayaなどのDCC(Digital Content Creation)ソフトウェアへの統合や,プラグインソフトの開発も行っています。
 そして65〜70人の専門エンジニアが,実際にゲーム開発者のサポートにあたっています。ゲーム開発者の下でGPUに最適化したシェーダを書いたりもしていますよ。
善:
 そうしたサポートを行ったタイトルで,具体的なものがあれば教えてください。

GB:
 Greg Jamesは知っていますか?(著者注:3Dグラフィックス界では名の知れた人物である)。「GDC 2003」でもシェーダプログラム関連のセッションをいくつかもっていますけど,彼はいろんなところに協力しています。
 例えばEAの「Tiger Woods PGA Tour 2003」や,Bethesda Softworks の「The Elder Scrolls III:Morrowind」など,水の表現のシェーダは彼の手によるものです。
 最近のタイトルでいえば,現在開発中の「S.T.A.L.K.E.R.:OblivionLost」でしょうか。これはNVIDIAの全面支援で開発が進んでおり,ハードウェアの提供や技術支援を行っています。

ページ 1/2