サウンド、グラフィックス、ネットワーク、ゲームコントローラーなどマルチメディアAPIコンポーネントをまとめたDirectXの発表
実際にゲームで使用されるのはDirectX5ぐらいから
GPUにAPIを積んでいくことが技術コスト的に重くなってきたのでグラフィックス処理をプログラマブルシェーダーによって機能を独自実装できるようになっていく
一般にプログラマブル頂点シェーダーとプログラマブルピクセルシェーダーの2つがあり、プログラマブルシェーダーの仕様はShadeModel(SM)と一般に呼ばれる。
ピクセル単位の陰影表現が可能になる。(DirectX9)
頂点シェーダーとピクセルシェーダーの格差がなくなる。また頂点シェーダーからテクスチャへのアクセスが可能になるVertexTexture Fetch (頂点テクスチャリング)が実装された。(この時点であまり普及はしなかった機能)
Xbox360の発売、GPUはATI(のちにAMDに買収)製(DirectX9.0/SM3.0)
PS3の発売。RSXというNVIDIAが設計したGPUが使用された(DirectX9/SM3.0)
命令セットの補充によってよりCPU的なプログラミングが可能になり、頂点シェーダーとピクセルシェーダー間の格差の無さからコモンシェーダーアーキテクチャとも呼ばれるようになる。
また、SM4.0からのジオメトリシェーダーの追加により頂点の増減をおこなえるようになり、より高度な3Dモデルの操作が行えるようになる。また処理フローに頂点シェーダーとジオメトリシェーダーの処理結果をビデオメモリ側に書き戻すストリーム出力の追加が行われ、再帰的な処理やGPUをCPU的な目的で活用させるGPGPUも話題に上がった。
DirectX10/SM9.0ではGPUへ新たなドライバソフトウェアのアーキテクチャWindowsDisplayDriverModel(WDDM)が追加され、マルチスレッド対応がされた。
その際に両社ともにシェーダーに統合型シェーダーアーキテクチャの採用をしている。統合型シェーダーアーキテクチャ(UnifiedShaderArchitecture)とはこれまでに登場した頂点シェーダー、ピクセルシェーダー、ジオメトリシェーダーの3つの処理をシェーダーユニットへ割り振るのではなく汎用シェーダーユニットを用意しておき、それぞれ忙しい処理へ割り振る方式のものである。
DirectX9,DirectX10対応のGPUへの互換性が特徴的。
SM5.0では新たにハルシェーダー(Hull Shader)ドメインシェーダー(DomainShader)演算シェーダー(ComputeShader)、固定機能シェーダーとしてテッセレータが追加された。