3D Graphics API史 OpenGL→Vulkan 1992-2026(スリーディーエーピーアイ史)
3D Graphics API 35年史 1992-2026。SGI IRIS GL (1981 Silicon Graphics)・OpenGL 1.0 (1992年7月1日 SGI→Khronos Group ARB・State Machine・Cross Platform)+OpenGL 2.0 (2004 GLSL Shader)+OpenGL 3.0 (2008 Core Profile)+OpenGL 4.6 (2017・以降Maintenanceのみ)・OpenGL ES 1.0 (2003 Mobile)+ES 2.0 (2007 GLSL ES)+ES 3.0/3.1/3.2・Glide (1996 3dfx Voodoo・専用→3dfx消滅 2000)・DirectX 1.0 (1995 Microsoft→DX5 1997→DX7 1999→DX8 2000 Programmable Shader初→DX9 2002→DX10 2007 Vista→DX11 2009 Windows 7→DX12 2015 Windows 10 Low-Level)・DX12 Ultimate (2020 RTX+VRS+Mesh Shader)・Direct3D・XAudio2・XInput・Vulkan 1.0 (2016年2月16日 Khronos AMD Mantle寄付・Low-Level CrossPlatform)+Vulkan 1.1 (2018)+1.2 (2020 Ray Tracing拡張)+1.3 (2022)+1.4 (2024年12月)・Mantle (2013 AMD→2015廃止 Vulkan継承)・Apple Metal (2014 Mac/iOS Low-Level)+Metal 3 (2022 MacBook Pro M2+Apple Silicon・MetalFX)+Metal 4 (2025 macOS Tahoe)・WebGL 1.0 (2011 OpenGL ES 2.0 Browser)+WebGL 2.0 (2017)+WebGPU (2023年4月 Chrome Stable・Vulkan/Metal/DX12後継 Web)・wgpu (Rust FOSS WebGPU)・Stadia終焉Vulkan流用・Wine DXVK (Vulkan経由DX9-12 Linux Gaming)・Proton (Steam Deck SteamOS)・¥0 OSS-¥¥¥¥¥/SDK 2026。
概要
3D Graphics API は、1992 年に SGI が公開した OpenGL 1.0 から、2026 年に向けて Vulkan 1.4、Metal 4、WebGPU 1.1 へと進化してきた。
各 API は、ハードウェア抽象化レイヤーとして機能し、開発者は同一コードベースで複数プラットフォームにデプロイできるようになった。
1990 年代は「状態機械」型の OpenGL が主流で、2000 年代後半からは「低レベル・低オーバーヘッド」型の DirectX 12、Vulkan、Metal が登場し、GPU への制御粒度が大幅に向上した。
2025 年以降は、GPU でのリアルタイムレイトレーシングと AI 推論を同時に実行できるハイブリッドアーキテクチャが主流化し、API もそれに合わせて機能拡張を続けている。
主な特徴・仕組み
| API | 主要設計思想 | 代表的拡張 | 低レベル化度 | クロスプラットフォーム性 |
|---|---|---|---|---|
| OpenGL | 状態機械型 | GLSL、ARB_compatibility | 低 | 高 |
| DirectX 12 | 低レベル・マルチスレッド | DX12 Ultimate、Mesh Shader | 高 | 低 |
| Vulkan | 低レベル・明示的同期 | Ray Tracing、Variable Rate Shading | 高 | 高 |
| Metal | Apple 独自低レベル | MetalFX、GPU ML | 高 | 低 |
| WebGPU | Web 用低レベル | Compute Shader、Shader Model 6 | 中 | 高 |
- 低レベル化度 は、CPU から GPU へのコマンド送信がどれだけ明示的に制御できるかを示す。
- クロスプラットフォーム性 は、Windows、Linux、macOS、iOS、Android、Web で同一 API が利用できるかを示す。
具体例・対応製品
| 製品名 | GPU | 対応 API | 主な特徴 | 発売年 |
|---|---|---|---|---|
| NVIDIA GeForce RTX 4090 | Ada Lovelace | OpenGL 4.6, Vulkan 1.4, DirectX 12 Ultimate, Metal (macOS via Rosetta) | 24 GB GDDR6X, 16 384 CUDA コア, 2.5 GHz ブースト, 10.8 TFLOPS | 2023 |
| AMD Radeon RX 7900 XTX | RDNA 3 | OpenGL 4.6, Vulkan 1.4, DirectX 12, Metal (via MoltenVK) | 24 GB GDDR6, 7 200 Stream コア, 2.4 GHz, 13.8 TFLOPS | 2023 |
| Intel Arc A770 | Xe-HPG | OpenGL 4.6, Vulkan 1.4, DirectX 12, Metal (via MoltenVK) | 16 GB GDDR6, 2 048 EU, 1.8 GHz, 9.5 TFLOPS | 2024 |
| Apple M2 Pro | Apple GPU | Metal 4, Vulkan (via MoltenVK), OpenGL (deprecated) | 16 コア, 24 GB LPDDR5, 2.7 GHz, 10 TFLOPS | 2023 |
| Qualcomm Snapdragon 8 Gen 2 | Adreno 660 | Vulkan 1.4, OpenGL ES 3.2, Metal (via MoltenVK) | 8 コア, 5 GHz, 15 TFLOPS | 2023 |
| NVIDIA RTX 6000 Ada | Ada Lovelace | OpenGL 4.6, Vulkan 1.4, DirectX 12 Ultimate | 48 GB GDDR6, 18 176 CUDA コア, 2.5 GHz, 21 TFLOPS | 2025 |
| AMD Radeon RX 9000 Series | RDNA 3 | Vulkan 1.4, DirectX 12, Metal (via MoltenVK) | 32 GB GDDR6, 7 200 Stream コア, 2.4 GHz, 20 TFLOPS | 2025 |
| Apple M3 | Apple GPU | Metal 4, Vulkan (via MoltenVK) | 32 コア, 24 GB LPDDR5, 3.0 GHz, 25 TFLOPS | 2026 |
| NVIDIA RTX 4090 (RTX 4090 Ti) | Ada Lovelace | OpenGL 4.6, Vulkan 1.4, DirectX 12 Ultimate | 24 GB GDDR6X, 18 176 CUDA コア, 2.9 GHz, 12 TFLOPS | 2026 |
| AMD Radeon RX 7900 XT | RDNA 3 | Vulkan 1.4, DirectX 12 | 20 GB GDDR6, 6 400 Stream コア, 2.3 GHz, 12 TFLOPS | 2026 |
数値スペック例
- OpenGL 4.6 – 2021 年に正式リリース、最大 128 ビットの uniform buffer object をサポート。
- Vulkan 1.4 – 2024 年 12 月にリリース、レイトレーシング拡張(KHR_ray_tracing)とメッシュシェーダー(VK_mesh_shader)を統合。
- Metal 4 – 2025 年 macOS Tahoe で初登場、GPU ML へのハードウェアアクセラレーションを追加。
- WebGPU 1.1 – 2026 年 4 月に Chrome Stable で正式リリース、Compute Shader のサポートを拡張。
- DX12 Ultimate – 2020 年にリリース、VRS、Mesh Shader、RT を統合。
- DirectX 12 – 2015 年にリリース、低レベル API とマルチスレッドを実現。
- DirectX 11 – 2009 年にリリース、初のハードウェアシェーダーサポート。
- OpenGL ES 3.2 – 2015 年にリリース、モバイル向けに GLSL ES 3.2 をサポート。
- Vulkan 1.0 – 2016 年 2 月 16 日にリリース、AMD Mantle の寄付で低レベル API を実装。
- MetalFX – 2024 年に Metal 4 で追加、GPU でのリアルタイムレンダリングを高速化。
選び方・注意点
- 開発対象プラットフォーム
- Windows だけなら DirectX 12 Ultimate が最適。
- クロスプラットフォーム(Windows + Linux + macOS)なら Vulkan 1.4 が推奨。
- iOS / macOS だけなら Metal 4。
- Web で動作させる場合は WebGPU 1.1。
- ハードウェアのサポート
- 最新 GPU では Vulkan 1.4 と Metal 4 が標準。
- 旧 GPU では OpenGL 4.6 か OpenGL ES 3.2 が安定。
- パフォーマンスとオーバーヘッド
- 低レベル API は CPU オーバーヘッドが低く、マルチスレッドに強い。
- 状態機械型 API は開発が容易だが、GPU への命令が多くなる。
- ライブラリとツールチェーン
- Vulkan には MoltenVK、WebGPU には wgpu、Metal には MetalKit が存在。
- これらのラッパーを利用すると、複数 API への移植が容易になる。
関連用語との違い
| 用語 | 位置づけ | 主な違い |
|---|---|---|
| Mantle | AMD が開発した低レベル API | Vulkan の前身で、2020 年に廃止。 |
| Glide | 3dfx 専用 API | 2000 年代初に消滅。 |
| WebGL | ブラウザ向け OpenGL ES 2.0 ベース | WebGPU よりもレベルが低く、機能制限が多い。 |
| DX12 | Microsoft の低レベル API | Vulkan と同等の低レベル設計だが、Windows 専用。 |
| WebGPU | Web 用低レベル API | Vulkan/Metal/DX12 の抽象化レイヤー。 |
よくある質問 (FAQ)
-
Q: Vulkan と DirectX 12 の主な違いは何ですか?
A: Vulkan はクロスプラットフォームであり、Apple では MoltenVK を通じて利用できる。DirectX 12 は Windows 専用で、DX12 Ultimate でレイトレーシングと Mesh Shader を統合している。 -
Q: Metal 4 で追加された機能は何ですか?
A: Metal 4 では GPU ML 用のハードウェアアクセラレーション、MetalFX の拡張、レイトレーシングの高速化が行われた。 -
Q: WebGPU はいつ安定版になる予定ですか?
A: 2026 年 4 月に Chrome Stable で正式リリースされ、WebGPU 1.1 が標準となった。
まとめ
1992 年の OpenGL 1.0 から 2026 年の Vulkan 1.4、Metal 4、WebGPU 1.1 へ至るまで、3D Graphics API は「状態機械型」から「低レベル・低オーバーヘッド」へと進化し、開発者はより高い制御とパフォーマンスを得られるようになった。
最新 GPU ではレイトレーシング、AI 推論、メッシュシェーダーなど多様な機能が統合され、API もそれに合わせて拡張を続けている。
選択に際しては、ターゲットプラットフォーム、ハードウェアサポート、開発リソースを総合的に評価し、最適な API を選ぶことが重要である。