Vulkanがサポートする最初の高レベルシェーディング言語は、OpenGLと同じくGLSLとなる。ただし、VulkanではSPIR-Vを標準的に利用することが可能であるため、GLSLで記述したシェーダープログラムをオフラインコンパイルし、SPIR-V
(英語版)としてバイナリに変換してからアプリケーションに同梱することが可能となる。そのほか、Vulkan SDKに付属するオフラインシェーダーコンパイラーglslangValidatorには、入力としてHLSLで書かれたソースコードを使うことができるようになるコンパイルオプションも存在する。この節に雑多な内容が羅列されています。事項を箇条書きで列挙しただけの節は、本文として組み入れるか、または整理・除去する必要があります。(2021年3月)
ウィキペディアはオンライン百科事典であって、情報を無差別に収集する場ではありません。改善やノートページでの議論にご協力ください。(2021年3月)
Vulkanの公式ソフトウェア開発キット (SDK) として、Valve社の協力のもとLunarG(英語版)社がLunarG Vulkan SDKをリリースしている。同SDKはWindows、Linux、およびmacOSに対応している。macOSに関しては後述のMoltenVKを間接的に利用している[13]。このSDKはiOSには対応していない。
また、Vulkanに対応するデバイスドライバーや独自のSDK開発を所望するベンダー向けに、ICD (Installable Client Driver) ローダーやアーキテクチャに関するドキュメントがGitHubにて公開されている。
Androidにおいては、2016年6月にリリースされたリビジョン12以降のNDKでVulkan 1.0に正式対応している[14]。なお、Android 10ではベンダードライバーによるOpenGL ES実装以外に、後述するVulkanバックエンドのANGLEを利用したOpenGL ES 2.0互換実装も利用できるようになっている[15]。 Vulkan APIの制定元であるKhronos GroupはVulkan APIをAppleのMetal API上で使うための互換レイヤー「MoltenVK
補助ライブラリ
GLFW(英語版) - OpenGL向けのマルチプラットフォームライブラリであるが、バージョン3.2以降でVulkanにも対応した[16]。
vulkan-cpp - Googleの提供するVulkan用のC++向け抽象化ライブラリ[17]。ライセンスはApache License 2.0。
V-EZ - AMDの提供するVulkan用の簡略化ミドルウェア[18][19]。
Anvil - AMDの提供するVulkan用フレームワーク[20]。ライセンスはMIT License。
Falcor - NVIDIAの提供するVulkanおよびDirectX 12用のレンダリングフレームワーク[21]。
Vulkan Memory Allocator - AMDの提供するVulkan用メモリ管理ライブラリ[22][23]。ライセンスはMIT License。
ANGLE(英語版) - 各種3DグラフィックスAPIをバックエンドに利用できるOpenGL ES互換レイヤー。2021年3月現在、OpenGL ES 3.1対応のVulkanバックエンドが完成している。
言語バインディング
Vulkan-Hpp - Vulkan APIのC++バインディング[24]。Khronos Groupが提供している。ライセンスはApache License 2.0。元々NVIDIAで開発された[25]。
VulkanSharp - Vulkan APIの.NETバインディング[26]。Mono Projectが提供している。ライセンスはMIT License。
互換レイヤー
またMicrosoftはVulkan APIをDirect3D 12 API上で使うためのMesaのDznバックエンドの開発を推進している[28]。なおそれ以前も同種のものとしてVulkanOnD3D12[29]やRostkatzeが存在していた[30]もののどちらも開発停止中となっていた。 アップルのmacOS/iOS上では、Vulkanは2021年6月時点でネイティブサポートされていないが、Metal APIを利用してVulkanを実現するMoltenVK(旧称MetalVK)の開発が ⇒Brenwill Workshop によって進められている[31][32]。
MoltenVK