さて、前回の最後で紹介したプログラマブルシェーダ・アーキテクチャだが、これをサポートした最初のDirectXが、2000年末に発表されたDirectX 8である。
DirectX 8対応のGPUとしては、NVIDIA GeForce 3、ATI Radeon 8500などが投入されている。なお、2001年に発売されたマイクロソフトのWindows XPには、このDirectX 8が統合された。
プログラマブルシェーダは頂点処理/ポリゴン単位の処理を担当する「プログラマブル頂点シェーダ」(Programmable Vertex Shader)と、ピクセル単位の陰影処理やテクスチャ関連の処理を行う「プログラマブルピクセルシェーダ」(Programmable Pixel Shader)の2タイプがあり、それぞれのシェーダユニット上で、多様なシェーダプログラムを実行させることで3Dグラフィックス処理を行うという仕組みになっている。なお、用語として、一言で「プログラマブルシェーダ」といった場合には、両方を指す場合と、あるいはその概念全体を指す場合がある。
そして、このシェーダプログラムこそがソフトウェアであり、開発者がオリジナルのシェーダプログラムを作成することで、そのGPUに新しいグラフィックス機能をインプリメントできることになる。
これは、毎年のように発表される最新3Dグラフィックス技術を、次世代GPUの登場を待たずとも、その技術を実現するシェーダプログラムさえ開発してしまえば(パフォーマンスの善し悪しは別にして)実験や実行が出来てしまうというメリットも生むこととなり、散開しつつあったハードウェア業界とソフトウェア業界が再び歩み寄る動向を生むきっかけともなるのだった。
ただ、プログラマブルシェーダ・アーキテクチャの実現はGPUメーカーに高い技術力を要求したため、次のDirectX 9が登場する間に、初期のリアルタイム3Dグラフィックスを支えてきたようなGPUメーカーの撤退が目立つようになる。淘汰の結果、2001年以降、GPUメーカーの二大巨頭であるNVIDIAとATIの熾烈なGPU戦争が目立つようになる。
現在、この2社以外でPC用民生向け量産GPUを開発しているのはインテル(ただし統合チップセット向け)とS3社くらい。PCグラフィックス黎明期を支えた3dfx社は2000年にNVIDIAに買収され、同じくNumber Nine社も1999年に倒産している。Windows 9x時代、日本では絶大な人気を誇ったMATROX社も、最後発でDirectX 8世代GPU「Parhelia」シリーズを投入するものの振るわず、その後は最新技術に対応したGPU開発からは遠ざかっている。プロフェッショナル向けワークステーション用GPUを開発していた3Dlabs社もWindows 9x時代に民生向けPermediaシリーズを投入するものの健闘虚しく、2002年にクリエイティブ社に買収され、2006年にはプロフェッショナル向けGPU事業からの撤退も発表された。チップセットメーカーSiS社からスピンアウトしてGPU専門メーカーとして新設されたXGI社も、2006年、最新技術に対応した新GPUの開発から事実上、撤退してしまった。
ところで、DirectX 8発表から約1年後の2001年末には、DirectX 8ベースのゲーム機、初代「Xbox」がマイクロソフトより発売される。あまりこの点が取り沙汰されることはないが、Xboxは世界初のプログラマブルシェーダアーキテクチャを採用した家庭用ゲーム機となった。
(トライゼット西川善司)