narzoul / DDrawCompat

DirectDraw and Direct3D 1-7 compatibility, performance and visual enhancements for Windows Vista, 7, 8, 10 and 11
BSD Zero Clause License
880 stars 67 forks source link

[feature request] Reshade compatibility? #266

Closed BobbyMcJefferson closed 7 months ago

BobbyMcJefferson commented 7 months ago

At the moment DDrawCompat doesn't seem to work with Reshade. Other wrappers like DGVoodoo2 seem to work just fine with Reshade. But I have started to prefer DDrawCompat because it tends to be more compatible with certain games.

I think being able to use this with Reshade would be a great feature to have.

EnergyCube commented 7 months ago

ReShade work on Direct3D 9/10/11/12, OpenGL and Vulkan but DDrawCompat purpose is to wrap Direct3D 1-7 to output the same version but by fixing issues on the fly. This mean that the output of DDrawCompat is simply incompatible with ReShade. As stated in the readme: There is no API conversion involved, most of the rendering is still done by the native DirectDraw/Direct3D 1-7

dgVoodoo don't have the same purpose, it wrap Direct3D 3/5/6/7/8/9 but the ouput isn't the same DirectX version, it's a more modern DirectX version (DirectX 10/11/12), that make for ex. a Direct3D 7 game able to be render with DirectX 12. And since DirectX 12 is supported by ReShade it work.

So what you are asking is simply impossible for DDrawCompat.

narzoul commented 7 months ago

It would be nice, but it's technically not feasible. Reshade only supports DX9+. It works with dgVoodoo because that converts everything to the DX11/12 runtimes, but DDrawCompat keeps everything running in the DX7 runtime.

Ah, EnergyCube was a few seconds faster in answering this. :)