I find myself wondering whether our PC games from the 2000s will continue to operate without a VM.
To the present, GPU manufacturers have generously kept pre-3.2 OpenGL in their drivers. I'm amazed and glad that they do.
But for argument's sake, imagine OpenGL<3.2 gets dropped. The current GL acquisition mechanism looks like this:
App
→ calls wglGetProcAddress()
→ returns driver's GL functions
It's looks good at first, but legacy OpenGL support is entirely in the hands of the driver developer.
This would be a non-issue if an "adapter" or "translation layer" could be set at runtime, positioned between WGL and the driver. For example: a enthusiast-maintained DLL that translates legacy API to new API.
Do any WGL/EGL/CGL implementations support user-specified adapters like that? (I see Mesa EGL has EGL_BACKEND
but it only controls what hard-coded driver is selected)