在开发期间禁用隐式层

Fra*_*ank 6 c++ windows vulkan

我的开发机器上安装了Steam,它SteamOverlayVulkanLayer64作为隐式层安装.

这一切都很好,花花公子,但似乎最近的更新做了一个改变,使它与LunarG不兼容VKLayer_unique_objects.(至少就交换链创建在Windows上而言).

是否有一种理智的方法来禁用那个隐式层而不在我的机器上进行系统范围的更改?

作为参考,我正在使用1.1.77.0 SDK,以防任何方式相关.

编辑: 如果其他人碰到这个并且落在这里的可能性很小,可以使用环境变量控制蒸汽覆盖:

if (!validation_layers.empty()) {
#ifdef WIN32
  // Steam's overlay is incompatible with LunarG's
  SetEnvironmentVariable("DISABLE_VK_LAYER_VALVE_steam_overlay_1", "1");
#endif
  [...]
}
Run Code Online (Sandbox Code Playgroud)

但是,我仍然有兴趣知道是否有一种控制隐式层的方法.