コンピュータグラフィックの世界 ~ Direct3D
Direct3D(だいれくとすりーでぃー)は、マイクロソフトの提供するゲームAPI・DirectXのコンポーネントのひとつ。3Dグラフィックスアクセラレータ(GPU)への支援を担当する。 Direct3D (DirectX3~DirectX5) = レンダリングパイプラインアーキテクチャを採用し、ハードウエア抽象化レイヤー(HAL)とハードウェアエミュレーションレイヤー(HEL)の二種類のレイヤーを持ち、ハードウエア支援が得られない場合もソフトウエアのエミュレーションによって機能するよう設計された。この当時のハードウエアはレンダリングパイプラインのうち、ラスタライズのみがハードウエア化されていた。 Direct3D 6.0 = ドリームキャストにも採用されたバージョンで、環境バンプマップやトライリニアフィルタリング、ミップマップ、テクスチャ圧縮などをサポートしていた。 Direct3D 7.0 = ハードウエアによる座標変換とライティングを行うハードウェアT&L、一枚のポリゴンに複数のテクスチャを同時に貼るマルチテクスチャやキューブマップをサポートした。 Direct3D 8.0 = Xboxなどに採用されたバージョンで、原始的なプログラマブルシェーダーを初めてサポートした。その他にも、ボリュームテクスチャ、マルチサンプルレンダリングをサポート。 Direct3D 9.0 = 浮動小数点実数テクスチャ、およびプログラマブルシェーダー2.0をサポートした。また、プログラマブルシェーダーを書くための高級言語「HLSL」に対応した。 Direct3D 9.0c = プログラマブルシェーダー3.0をサポートした。プログラマブルシェーダー3.0は、頂点シェーダーからテクスチャマップにアクセスすることができるため、ディスプレースメントマッピングなどが実現できる。