c++ Vulkan验证层不可用

gxwragnw  于 2022-12-05  发布在  其他
关注(0)|答案(1)|浏览(363)

我是Vulkan的新手,我一直在关注vulkan-tutorial.com,到目前为止,vulkan-tutorial.com是一个很好的资源。
然而,我逐渐意识到的一件奇怪的事情是,我的设备支持验证层,但如果不在 vkconfig 中覆盖,就无法使用。
下面是我的C++代码:
第一个
当运行 vkconfig 并覆盖以使用验证层时,突然间一切都运行得很好。但是,如果不是强制覆盖,它将根本不工作。
我使用的是LunarG SDK(1.3.224.1),用于Arch Linux(韦兰)。

jq6vz3qz

jq6vz3qz1#

您的VK_LAYER_PATH设置不正确。安装脚本应该为您设置一个“层路径”环境变量,因此您可以在运行安装脚本后尝试不导出VK_LAYER_PATH。如果您要设置VK_LAYER_PATH,它应该类似于$VULKAN_SDK/etc/vulkan/explicit_layer.d
请注意,安装脚本实际上设置了VK_ADD_LAYER_PATH,它告诉加载程序在系统默认路径之前查找SDK。在运行安装脚本后设置VK_LAYER_PATH会导致加载程序忽略VK_ADD_LAYER_PATH而只使用VK_LAYER_PATH,这在您的情况下是错误的。这使加载程序没有好的路径来查找层。

相关问题