-
Notifications
You must be signed in to change notification settings - Fork 313
Description
What enhancement are you suggesting for the Vulkan Loader? Please describe in detail.
Implicit layers that do not need to enabled through environment variables are always loaded. A user may decide to disable certain layers for one reason or another (it could be compatilibity issues, perhaps they are encountering a bug, could be anything). If the user specifies the disable environment variable, then the layer is disabled as expected.
If the user wishes to re-enable the layer inside of a child process of where this environment variable is set, it needs to be unset. Let's assume we are in the context of something like a game launcher, Steam or Prism Launcher, perhaps Lutris or anything else. These launchers do not allow unsetting an environment variable, merely changing it. One could argue setting the disable environment variable to "0" should ignore it's effect, though this might lead to breaking previous users workflows (I'm.. not sure which, but there will be some). Perhaps something like a string check straight up checking for "Off" is a worthy workaround?
Is this specific to a single platform?
Primarily written for Linux, though might extend to other operating systems as well.
Additional context
Seeing how Vulkan layers are being used more and more for things like post processing, frame insertion and other potentially global tools, implicit layers that are always enabled have also become more frequent. To give a concrete example, a layer adding post processing might want to always be loaded, so that an external user interface can add effects to every game without explicitly requiring the user to enable the post processing layer on a certain game.