On Thu Apr 2 11:34:21 2026 +0000, Fatih Bakal wrote:
How would this PR effect gpus that doesn't have vulkan at all? Is there a flag/envvar to use pure opengl? It wouldn't work in that case, but note that currently Wine OpenGL implementation already uses Vulkan when running 32bit application in the new WOW64 mode (32bit application using 64bit Unix libraries). There is some attempt to implement a pure GL solution here: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/40750.
This MR was meant mostly as a half joke for April fool's day, but it works and I think it might be an interesting solution overall. Implementing Windows GL over the host OpenGL implementation is full of impedance mismatches, especially when the host GL implementation is subpar (let's say macOS for instance). It also makes it more complicated to use GL in Wine for our own internal purposes. Using Zink on the PE side would decouple both completely and could help making our life easier. Then it has some drawbacks as well, and as said, it requires Vulkan support. But with time, it will be more and more commonly available. As far as I could see, running Unigine benchmarks for instance, performance is also not yet on par with the Unix GL bridge, it's not too bad and it works well, but definitely slower. Ideally I think we could consider having some kind of ICD support in Wine, and load either the current Unix bridge, or this PE-side only implementation. This would require a far amount of refactoring to support it. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10531#note_134794