Basically Gallium Nine handles the d3d9 calls directly so they won't go through OpenGL or Vulkan. Steam Linux only ships their gameoverlayrenderer with OpenGL and Vulkan support on Linux.
Possible implementations :
- Somehow intercept the dx9 present call and forward the rendered image to an OpenGL context to be swapped. Not sure how to implement this but this sounds like a performance hog which might negate any performance advantages gained using gallium nine.
- use Valve's dx9 overlay renderer used on windows and route calls to the steam api to the linux client (as it is done in the steamclient dlls in proton). This would not incur performance degradation since the overlay would also go though gallium nine.
Interesting resources :
Basically Gallium Nine handles the d3d9 calls directly so they won't go through OpenGL or Vulkan. Steam Linux only ships their gameoverlayrenderer with OpenGL and Vulkan support on Linux.
Possible implementations :
Interesting resources :