
Description
Hello.
Suppose:
- I have a game that supports the Vulkan and OpenGL API and that makes use of GLEW for the latter
- The machine the game happens to be running on is Wayland-only (no XWayland available)
- The game is smart enough to figure out that if it's running on Wayland it must not try to use OpenGL w/ GLEW
- The game will link against GLEW regardless of it being used
Now, with commit bd2f1e9 (discussed in #8812), if I understand correctly, if we run the game on this Wayland-only system the video driver will be arbitrarily set to x11
regardless of the fact that:
- The
x11
isn't available at runtime on the machine - The game could actually have used the Vulkan API
In practice, this behavior results in the game failing to load complaining that "x11 isn't available" unless further action is taken by the developer or the enduser.
The matter can be generalized if we acknowledge that, as @smcv mentioned here #8812 (comment), on certain conditions the GLX flavour of GLEW actually works enough on Wayland and that a developer may actually want to use OpenGL regardless.
Now the question becomes, what is the intended way to opt-out of this "quirks" mechanism?
I suppose one must now do SDL_SetHint(SDL_HINT_VIDEODRIVER, "x11,wayland")
, because this way the condition to trigger the new 'quirks' mech wouldn't trigger.
Can anybody confirm that that is the proper solution to the case? Is this intended?
CC: @slouken (as the author of the aforementioned commit)
Thank you :3