コラム
» 2004年07月26日 14時11分 公開

世界初のプログラマブルシェーダ対応の組込GPU「GoForce3D」の実力は?

GeForce3シリーズに相当する3Dグラフィックス描画能力を持つ、NVIDIAの組み込みGPU「GoForce」。3D描画性能の詳細を解説する。

[トライゼット西川善司,ITmedia]

 NVIDIAは正式発表を9月に控える組み込み用途向けグラフィックスチップ(GPU)「GoForce3D」の最初の実動チップを、先週東京ビッグサイトにて開催されたWireless Japan 2004で公開した。

ポテンシャルはデスクトップPC用GPUのGeForce3並

 GoForce3Dは組み込み向けGPUとしては、世界初のプログラマブルシェーダ・アーキテクチャベースのGPUとなる。

 毎秒最大500万ポリゴンのジオメトリエンジンと、フィルレートは毎秒2億5000万ピクセルのピクセルレンダリングパイプラインからなり、2Dおよび3Dグラフィックス描画を一手に引き受け、CPUをグラフィックス処理の負荷から完全に解放する。

 なお、プログラマブルシェーダのポテンシャルとしては、かつてのPC向けGPUであるGeForce3シリーズ程度に相当する。対応APIはマイクロソフトのDirect3D Mobile及び、OpenGL/ES1.0/1.1。

 総トランジスタ数は600万。これはGeForce3のちょうど10分の1トランジスタ数だ。プログラマブルシェーダ対応GPUとしては破格に小さい規模のGPUということになるが、これはGoForce3Dが組み込み向けGPUであるため、デスクトップPC向けGPUと比較してドラスティックな機能削減が行われていることに大きく起因している。

 例えば、GoForce3Dのレンダリングエンジンには、色数が最大16ビットカラーまで、利用可能なテクスチャも最大6まで、そしてスムーズにレンダリングが行える 画面解像度はQVGA(320×240ドット)程度まで……といった制約が与えられている。

 しかし、その甲斐あって、実際の3Dゲームを動作させたときにも20ミリワット以下の省電力性能を達成するという。

開発中のソフトウェアはPC上のGoForce3Dエミュレータ上でテスト実行することが可能
実際のGoForce3Dチップを使った評価システム
□で囲った部分にあるのがGoForce3Dチップ

GoForce3Dの3Dグラフィックス機能の詳細

 それでは、実際にどの程度の3Dグラフィックス能力があるのだろうか。もう少し詳しく見ていくことにしよう。

 まず、ジオメトリエンジン(頂点シェーダ)部は、現世代の競合プロセッサが整数演算器で処理できる固定小数点系を採用するなか、GoForce3Dでは固定小数点系のほか、浮動小数点系の演算に対応する。しかし、プログラマブル機構は持たない、GeForce2系と同じ、いわゆるハードウェアT&Lに相当するもののようだ。

 ピクセルレンダリングパイプラインは、前述の通りプログラマブルピクセルシェーダを内包したものになる。フレームバッファは1ピクセルあたり16ビット(R5G6B5)、Zバッファ精度も16ビット。プログラマブルピクセルシェーダの演算精度はDirectX8のような整数(固定小数点実数)になるが、内部演算精度は符合付き40ビットとなるために、複雑なピクセルシェーダプログラムを経る中での演算誤差の蓄積は最小限に抑えられるアーキテクチャになっているようだ。

 ピクセルレンダリングパイプラインのパイプライン数は非公開だが(規模を考えればおそらく1本か2本?)、1パイプライン当たり1つのカラー出力、1つの深度(Zバッファ)処理、6枚分のテクスチャ参照が可能となっている。

 フレームバッファに対しては空気遠近効果を与えられるフォグ処理、複数のフレームバッファ同士を透明度に配慮して合成するアルファブレンディング処理に対応する。

 テクスチャエンジン部はなかなか豪勢で、遠距離ポリゴンへのテクスチャ適用を高品位かつ効率的に行える縮小テクスチャ機構であるMIPMAPに対応。テクスチャフォーマットは透明度α(A)を含むA1R5G5B5、A0R5G6B5、A4R4G4B4の16ビットカラー系に対応し、損失はあるものの常に一定の圧縮率で圧縮が可能なDXT圧縮フォーマットが利用可能だ。65536色のうち任意の16色、256色が使えつつも、少ないビデオメモリ使用で済む4ビット/8ビットサイズのパレットベースのフォーマットも利用できる。

 テクスチャ適用時のブロックノイズを低減するテクスチャフィルタリングにも対応し、局面に応じてバイリニア、トライリニアが選択べるようになっている。さすがに異方性フィルタリングには対応しないが、これはGoForce3Dが対象とする画面解像度を考慮すればリーズナブルな取捨選択だといえる。

 アンチエリアス処理は高解像度バッファをレンダリングしてから出力用解像度にコンバートを仕掛けるクラシックな手法であるスーパーサンプリング技法を採用。この手法はフィルレートにシビアに効いてくるので、GoForce3Dの位置付けを考えると実用的とはいい難い。あくまでおまけ機能といったところか。

ファー(毛)シェーダーやQuakeIIがリアルタイム動作できるGoForce3Dパワー

 GoForce3Dの正式発表は9月を予定しており、実際のGoForce3D採用製品の発売は約その1年後になる見込みだという。

 今回のブリーフィングでは、GoForce3Dの評価システムで、実際にGoForce3Dでどんな3Dグラフィックスアプリケーションが動作できるのかを見せてもらうことができた。最後にその実写映像と解説を示す。

GoForce3Dならば、あのid softwareの往年の名作「Quake2」程度ならば楽にリアルタイム動作できる(左)。ピクセルシェーダプログラムによって実現されるキューブ環境マップのデモ(右)
NVIDIAのイメージキャラクタ「Dawn」も顔だけならばGoForce3Dで動作させることが可能(左)。このような本格的な3Dレーシングゲームもリアルタイム動作できる。路面はちゃんとテクスチャフィルタリングがなされ、車には環境マップが適用され周囲の映り込み表現がなされている(中)。バンプマッピングを多段で重ね合わせて実現したタイプのファー(毛)シェーダのデモ(右)

Copyright © ITmedia, Inc. All Rights Reserved.

この記事が気に入ったら
ITmedia Mobile に「いいね!」しよう