查找Vulkan¶
在 3.7 版本加入.
查找 Vulkan,这是一种低开销、跨平台的 3D 图形和计算 API。
可选组件¶
在 3.24 版本加入.
该模块涉及几个可选组件。其中每一个都有相应的导入目标。
glslcSPIR-V 编译器。
glslangValidatorglslangValidator工具。glslangSPIR-V 生成器库。
shaderc_combinedVulkan 着色器编译的静态库。
SPIRV-工具处理 SPIR-V 模块的工具。
熔岩VK在 macOS 上,可以使用附加组件“MoltenVK”。
dxc在 3.25 版本加入.
DirectX 着色器编译器。
即使没有明确要求(为了向后兼容),也会提供 glslc 和 glslangValidator 组件。
进口目标¶
如果找到 Vulkan,此模块定义 IMPORTED 目标:
Vulkan::Vulkan主要的 Vulkan 库。
Vulkan::glslc在 3.19 版本加入.
GLSLC SPIR-V 编译器(如果已找到)。
Vulkan::标题在 3.21 版本加入.
仅提供 Vulkan 标头包含路径(如果找到)。此目标中不包含库。这对于动态加载 Vulkan 库的应用程序很有用。
Vulkan::glslangValidator在 3.21 版本加入.
glslangValidator 工具(如果找到)。它用于将 GLSL 和 HLSL 着色器编译成 SPIR-V。
Vulkan::glslang在 3.24 版本加入.
定义 SDK 是否具有 Khronos-reference 前端着色器解析器和 SPIR-V 生成器库 (glslang)。
Vulkan::shaderc_combined在 3.24 版本加入.
定义 SDK 是否具有用于 Vulkan 着色器编译的 Google 静态库 (shaderc_combined)。
Vulkan::SPIRV-工具在 3.24 版本加入.
定义 SDK 是否具有 Khronos 库来处理 SPIR-V 模块(SPIRV-Tools)。
Vulkan::MoltenVK在 3.24 版本加入.
定义 SDK 是否具有 Khronos 库,该库通过 Apple Metal 图形框架实现 Vulkan API 的子集。 (熔岩VK)。
Vulkan::volk在 3.25 版本加入.
定义 SDK 是否具有 Vulkan 元加载器 (volk)。
Vulkan::dxc_lib在 3.25 版本加入.
定义 SDK 是否具有 DirectX 着色器编译器库。
Vulkan::dxc_exe在 3.25 版本加入.
定义 SDK 是否具有 DirectX 着色器编译器 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 版本加入.
是的,如果 SDK 具有 glslc 可执行文件。
Vulkan_glslangValidator_FOUND在 3.24 版本加入.
是的,如果 SDK 具有 glslangValidator 可执行文件。
Vulkan_glslang_FOUND在 3.24 版本加入.
是的,如果 SDK 有 glslang 库。
Vulkan_shaderc_combined_FOUND在 3.24 版本加入.
是的,如果 SDK 具有 shaderc_combined 库。
Vulkan_SPIRV-Tools_FOUND在 3.24 版本加入.
是的,如果 SDK 具有 SPIRV-Tools 库。
Vulkan_MoltenVK_FOUND在 3.24 版本加入.
是的,如果 SDK 有 MoltenVK 库。
Vulkan_volk_FOUND在 3.25 版本加入.
是的,如果 SDK 有 volk 库。
Vulkan_dxc_lib_FOUND在 3.25 版本加入.
是的,如果 SDK 具有 DirectX 着色器编译器库。
Vulkan_dxc_exe_FOUND在 3.25 版本加入.
是的,如果 SDK 具有 DirectX 着色器编译器 CLI 工具。
该模块还将定义这些缓存变量:
Vulkan_INCLUDE_DIRVulkan 包含目录
Vulkan_LIBRARYVulkan 库的路径
Vulkan_GLSLC_EXECUTABLEGLSL SPIR-V 编译器的路径
Vulkan_GSLLANG_VALIDATOR_EXECUTABLEglslangValidator 工具的路径
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 着色器编译器库的路径。
Vulkan_dxc_EXECUTABLE在 3.25 版本加入.
DirectX 着色器编译器 CLI 工具的路径。
提示¶
在 3.18 版本加入.
VULKAN_SDK 环境变量可选择指定给定架构的 Vulkan SDK 根目录的位置。它通常通过将 Vulkan SDK 目录的顶级“setup-env.sh”脚本引入 shell 环境来设置。