https://bugs.winehq.org/show_bug.cgi?id=53732
varrok@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED
--- Comment #2 from varrok@gmail.com --- @(In reply to Béla Gyebrószki from comment #1)
You need to override opengl32.dll to native,builtin otherwise Wine uses it's own (builtin) opengl32. Create a new profile for 'ghost.exe' in winecfg's Application tab and override opengl32.dll to native,builtin in the Libraries tab. In this manner ReShade's UI is visible after starting the game, tried with Ghost Master from GOG.
Thank you very much for the quick and on point response.
It worked, which confuses me to a great extent, as I don't know why it didn't work before. From my understanding, the default setting can be boiled to: "search wine's opengl32.dll, then if something is not present there, use the 3rd party one".
I thought that if I remove the wine's opengl32.dll (drive_c/Windows/system32/opengl32.dll and syswow64/opengl32.dll) it would fallback to reshade's dll, yet it produces a different outcome than your solution. Furthermore, if I then remove/rename the reshade's dll as well, the game would fail to launch, so surely it does access the reshade file.
I'll mark this as resolved, but an explanation would probably help me make fewer mistakes in the future.