Установите VK_LAYER_PATH в Cmake - PullRequest
0 голосов
/ 03 марта 2020

Я хочу интегрировать Vulkan SDK в свой проект, поэтому я скопировал папку x86_64, вот структура моего проекта:

├── CMakeLists.txt
├── main.cpp
└── vulkan   ---> this is the x86_64 folder
    ├── bin
    ├── include
    ├── lib
    └── share

и вот мои CMakeLists:

cmake_minimum_required(VERSION 3.12)
project(VulkanTest)

set(CMAKE_CXX_STANDARD 17)

find_package(glfw3 3.3 REQUIRED)
find_package(glm REQUIRED)

set(ENV{VK_LAYER_PATH} vulkan/etc/vulkan/explicit_layer.d)

add_executable(VulkanTest main.cpp)
target_link_libraries(VulkanTest glfw)
target_include_directories(VulkanTest PRIVATE ${GLM_INCLUDE_DIRS})
target_include_directories(VulkanTest PRIVATE vulkan/include)
target_link_libraries(VulkanTest vulkan)

и это отлично работает с create instance, но когда я начинаю проверять слои проверки, я обнаружил, что некоторые слои отсутствуют. Я предполагаю, что каким-то образом VK_LAYER_PATH не работает.

Итак, есть идеи, как я могу добавить etc/vulkan/explicit_layer.d в CMakeList, чтобы заставить программу использовать вместо поиска их через переменную env?

...