orbitersim / orbiter

Open-source repository of Orbiter Space Flight Simulator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Consider using DXVK for running Orbiter on other operating systems

DragonSWDev opened this issue · comments

Since Orbiter switched from DX7 to DX9 I think that using DXVK for providing Vulkan rendering could be considered as alternative for writing whole new renderer from scratch. DXVK is library that implements Direct3D 9-11 on top of Vulkan and it's pretty much considered as standard for running Windows games on other operating systems (mostly Linux but I guess BSD or perhaps even macOS with MoltenVK could use that too). It is used by Valve in some of their older games (like Left 4 Dead 2) and by Proton on Steam for running Windows games on Linux (also used by Steam Deck). Initially it was Windows native DLL that was meant for running Windows software using Wine but DXVK-Native work was merged and now DXVK can be compiled as Unix native library and used for much easier porting of Direct3D code to Vulkan systems.

Compared to the total rewrite of renderer to use Vulkan or OpenGL, using DXVK would greatly reduce need for any rewrite as probably most of existing rendering code can be utilized as is.