FindVulkan

版本 3.7 新增。

尋找 Vulkan,這是一個低負擔、跨平台的 3D 圖形和運算 API。

選用組件

版本 3.24 新增。

此模組支援數個選用組件。每個組件都有對應的匯入目標。

glslc

SPIR-V 編譯器。

glslangValidator

glslangValidator 工具。

glslang

SPIR-V 產生器函式庫。

shaderc_combined

Vulkan shader 編譯的靜態函式庫。

SPIRV-Tools

處理 SPIR-V 模組的工具。

MoltenVK

在 macOS 上,另有一個組件 MoltenVK 可用。

dxc

版本 3.25 新增。

DirectX Shader Compiler。

glslcglslangValidator 組件即使未明確請求也會提供(為了向後相容性)。

匯入目標

如果已找到 Vulkan,此模組會定義 IMPORTED 目標

Vulkan::Vulkan

主要的 Vulkan 函式庫。

Vulkan::glslc

版本 3.19 新增。

GLSLC SPIR-V 編譯器,如果已找到。

Vulkan::Headers

版本 3.21 新增。

僅提供 Vulkan 標頭檔包含路徑(如果已找到)。此目標中未包含任何函式庫。這對於動態載入 Vulkan 函式庫的應用程式很有用。

Vulkan::glslangValidator

版本 3.21 新增。

glslangValidator 工具,如果已找到。它用於將 GLSL 和 HLSL shaders 編譯為 SPIR-V。

Vulkan::glslang

版本 3.24 新增。

如果 SDK 具有 Khronos 參考前端 shader parser 和 SPIR-V 產生器函式庫 (glslang),則定義。

Vulkan::shaderc_combined

版本 3.24 新增。

如果 SDK 具有 Google Vulkan shader 編譯靜態函式庫 (shaderc_combined),則定義。

Vulkan::SPIRV-Tools

版本 3.24 新增。

如果 SDK 具有 Khronos 函式庫以處理 SPIR-V 模組 (SPIRV-Tools),則定義。

Vulkan::MoltenVK

版本 3.24 新增。

如果 SDK 具有 Khronos 函式庫,該函式庫在 Apple Metal 圖形框架上實作 Vulkan API 的子集 (MoltenVK),則定義。

Vulkan::volk

版本 3.25 新增。

如果 SDK 具有 Vulkan meta-loader (volk),則定義。

Vulkan::dxc_lib

版本 3.25 新增。

如果 SDK 具有 DirectX shader 編譯器函式庫,則定義。

Vulkan::dxc_exe

版本 3.25 新增。

如果 SDK 具有 DirectX shader 編譯器 CLI 工具,則定義。

結果變數

此模組定義以下變數

Vulkan_FOUND

如果找到 Vulkan,則設定為 true

Vulkan_INCLUDE_DIRS

Vulkan 的包含目錄

Vulkan_LIBRARIES

連結此函式庫以使用 Vulkan

Vulkan_VERSION

版本 3.23 新增。

來自 vulkan/vulkan_core.h 的值

Vulkan_glslc_FOUND

版本 3.24 新增。

True,如果 SDK 具有 glslc 可執行檔。

Vulkan_glslangValidator_FOUND

版本 3.24 新增。

True,如果 SDK 具有 glslangValidator 可執行檔。

Vulkan_glslang_FOUND

版本 3.24 新增。

True,如果 SDK 具有 glslang 函式庫。

Vulkan_shaderc_combined_FOUND

版本 3.24 新增。

True,如果 SDK 具有 shaderc_combined 函式庫。

Vulkan_SPIRV-Tools_FOUND

版本 3.24 新增。

True,如果 SDK 具有 SPIRV-Tools 函式庫。

Vulkan_MoltenVK_FOUND

版本 3.24 新增。

True,如果 SDK 具有 MoltenVK 函式庫。

Vulkan_volk_FOUND

版本 3.25 新增。

True,如果 SDK 具有 volk 函式庫。

Vulkan_dxc_lib_FOUND

版本 3.25 新增。

True,如果 SDK 具有 DirectX shader 編譯器函式庫。

Vulkan_dxc_exe_FOUND

版本 3.25 新增。

True,如果 SDK 具有 DirectX shader 編譯器 CLI 工具。

模組也將定義這些快取變數

Vulkan_INCLUDE_DIR

Vulkan 包含目錄

Vulkan_LIBRARY

Vulkan 函式庫的路徑

Vulkan_GLSLC_EXECUTABLE

GLSL SPIR-V 編譯器的路徑

Vulkan_GLSLANG_VALIDATOR_EXECUTABLE

glslangValidator 工具的路徑

Vulkan_glslang_LIBRARY

版本 3.24 新增。

glslang 函式庫的路徑。

Vulkan_shaderc_combined_LIBRARY

版本 3.24 新增。

shaderc_combined 函式庫的路徑。

Vulkan_SPIRV-Tools_LIBRARY

版本 3.24 新增。

SPIRV-Tools 函式庫的路徑。

Vulkan_MoltenVK_LIBRARY

版本 3.24 新增。

MoltenVK 函式庫的路徑。

Vulkan_volk_LIBRARY

版本 3.25 新增。

volk 函式庫的路徑。

Vulkan_dxc_LIBRARY

版本 3.25 新增。

DirectX shader 編譯器函式庫的路徑。

Vulkan_dxc_EXECUTABLE

版本 3.25 新增。

DirectX shader 編譯器 CLI 工具的路徑。

提示

版本 3.18 新增。

VULKAN_SDK 環境變數選擇性地指定給定架構的 Vulkan SDK 根目錄位置。它通常透過將 Vulkan SDK 目錄的頂層 setup-env.sh 腳本導入 shell 環境來設定。