The main blockers that I see are :
- WinAPI
- DirectInput
- D3D GC
- HDC usage (and API breakage if we get rid of it)
- Launchpad "architecture"
For the Windows API, we could use SDL or glfw. I used glfw in the past but it looks like it's not being given much love lately, and the new SDL3 version is not ready yet I think. I was hoping things would progress a bit more than they did but that's life. Both options provide a replacement for DirectInput too.
For dialogs, I did some prototyping with ImGui, the dark windows are using it in this video :
However since it's using immediate mode, I'm not sure people are accustomed to it.
For GC, jarmonik hinted that he could do some work with Vulkan but I don't know if it's still on his agenda. The current OpenGL GC would be a big step backward compared to the current D3D9 client.
The way the launchpad is started to then launch a scenario makes it awkward to provide an OS agnostic option because the GC is not yet available.
In the linux branch I hacked around to instanciate the GC client from the get go and replaced the launchpad with an ImGui window.
I'm no artist so the result is not that pretty. You can see what it looks like at the beginning of this clip (along with mouse clickable menus, notifications, node base joystick configuration, external MFDs and a subpar XR5 ascent to orbit

) :