Not found VK_LAYER_KHRONOS_validation

Windows 10 x64, Vulkan SDK 1.3.224.1, MSVC 17.3.5, CMake 3.24, CLion, Nvidia GTX 1070Ti, drivers 522.25
I have VK_SDK_PATH and VULKAN_SDK env variables and path to sdk bin folder in PATH variable (all in system< for all users). SDK installed in C:\Library\VulkanSDK\1.3.224.1. I have right values in HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\Vulkan\ExplicitLayers registry, but missed in HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Khronos\Vulkan record (this right, not error?).
I dont use vkconfig.exe, want select in app. Reinstall sdk dont have effect.
Write small example code

    std::vector<char const *> enabledLayers{};
    auto layers {vk::enumerateInstanceLayerProperties()};
    if (layers.result == vk::Result::eSuccess) {
        for (auto &l : layers.value) {
            std::cout << l.layerName << std::endl;
            if (std::string{l.layerName} == "VK_LAYER_KHRONOS_validation") {
                enabledLayers.push_back("VK_LAYER_KHRONOS_validation");
            }
            break;
        }
    }
    std::cout << "layers: " << enabledLayers.size() << std::endl;

after run i have this cmd output:

    VK_LAYER_NV_optimus
    layers: 0

How enable this validation layer?

Do you have the environment variable VK_LAYER_PATH defined? Maybe it shows to the wrong SDK.

I have only VK_SDK_PATH and VULKAN_SDK
I tried to set VK_LAYER_PATH manually, it did not help

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.