Vulkan 构建错误

Posted

技术标签:

【中文标题】Vulkan 构建错误【英文标题】:Vulkan Building error 【发布时间】:2016-05-21 08:14:17 【问题描述】:

我想构建一个包含在 Vulkan SDK 中的示例。

我从http://vulkan.lunarg.com下载了SDK并安装了。

然后我打开Visual Studio(我有一个2013版本),我从这个路径打开解决方案:(C:\VulkanSDK\1.0.13.0\Demos)。我选择DEMOS.sln 文件。然后当我点击LocalWindowsDebugger 时会弹出这条消息:

vkCreateInstance Failure:
vkEnumerateInstanceExtensionProperties failed to find the VK_KHR_surface extention. 
Do you have a compatible Vulkan installable client driver (ICD) insatalled? Please look at the Getting Started  guide for additional information.

我从未使用过 vulkan,但由于它名为“Demo”,我认为它里面的所有东西都应该设置好才能工作。

我搜索了网络,但由于它是新的,所以很少有资源谈论它。

什么是ICD?以及如何安装它? (它与 VulkanSDK 的安装程序不同吗?)或者这个错误是关于完全不同的属性?喜欢设置 VisualStudio 的属性?

【问题讨论】:

我也没有使用 OpenGL 的经验 您是否按照消息提示查看了入门指南? @AliBahrami:“我也没有使用 OpenGL 的经验”你有任何图形编程方面的经验吗?因为如果没有,您可能不应该使用 Vulkan 跳入深渊。你只会感到沮丧。 @NicolBolas:对此有一些意见,但我认为在没有想法的情况下使用全新的技术是件好事。 【参考方案1】:

ICD 基本上是您的 GPU 驱动程序...

SDK 和驱动程序都安装 vulkaninfo 应用程序。用它来确定你有什么扩展和什么。

顺便说一句,前段时间 AMD 驱动程序忘记导出 VK_KHR_surface 等扩展。确保您使用的是最新的驱动程序(截至撰写本文时,AMD 为 16.5.2.1,NVIDIA 为 365.19)。

您还需要支持的 GPU。咨询:

NVIDIA supported GPUs

AMD supported GPUs

Khronos maintained list

顺便说一句:所有的演示都适合我。

【讨论】:

【参考方案2】:

您是否安装了兼容的 Vulkan 可安装客户端驱动程序 (ICD)?

此消息告诉您 Vulkan 的加载程序无法在您的设备上找到 Vulkan 驱动程序。 ICD 是您的显卡驱动程序附带的可安装客户端驱动程序。

您使用的是什么 GPU,您是否安装了真正支持 Vulkan 的驱动程序?请注意,虽然您的卡可能支持 OpenGL,但它可能不支持 Vulkan。

【讨论】:

我有一个支持 vulkan 的 nVidia gt 640 您使用的是哪个驱动程序版本,这是您系统中唯一的 GPU。可能您使用的旧驱动程序没有公开 SDK 示例所需的 VK_KHR_surface 扩展。 IIRC 主要的 NVidia 驱动程序还不支持 Vulkan;您必须下载并安装 Vulkan 兼容驱动程序。 @ColonelThirtyTwo :不,主线 WHQL 驱动程序也包括 Vulkan 支持。参见例如us.download.nvidia.com/Windows/365.19/… @SaschaWillems 嗯。看起来 Vulkan 刚刚包含在该驱动程序中(这是一个“新功能”),并且在 10 天前发布。所以在我的辩护中,这是一个新事物。 OP 可能只需要升级。很高兴 Vulkan 现在在主线中。【参考方案3】:

如果您使用的是 ubuntu,请在“Nvidia X 服务器设置”应用程序中检查 NVIDIA(性能模式)。

【讨论】:

以上是关于Vulkan 构建错误的主要内容,如果未能解决你的问题,请参考以下文章

Vulkan Tutorial 02 编写Vulkan应用程序框架原型

Vulkan Tutorial 02 编写Vulkan应用程序框架原型

脱离时的 ImGui Vulkan 验证层错误

Vulkan的分层设计

Vulkan UBO 传递错误

不取消映射 vulkan 内存