-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/detect dxvk #41
Conversation
Needs further testing but looks fine on DX9, DX10, DX11. |
Doesn't seem to work. Does rendererToDetect need to be manually set when using dxvk? |
What doesn't work? What issue do you encounter? |
I'm using your overlay in gbe_fork, it doesn't show up (I rebuild with feature/detect-dxvk). I wish I could have more logs, but never managed to get ingame_overlay to output logs, I don't really know how. spdlog dependency is not included in the repo, I believe I had managed to build with it once but can't remember where I failed next. As for dx12, I believe it always worked with dxvk/vkd3d. On dx9/dx11, it fails on almost all games and this change doesn't fix that. As for example included, dx9_app.exe and dx11_app.exe always did work even without that change. |
I'm surprised that dx9_app.exe worked because of the mutex in the dx9 present/presentex calling the swapchain present and locking again the same mutex throwing an exception. |
And where are those logs supposed to be outputted? I guess they should be in my standard output, but I don't see any. I took a further look at gbe_fork own log and it does seem like ingame_overlay manage to hook with these change:
But, nothing is displayed when hitting the key combination. Setting preferSystemLibraries didn't change anything. |
If I force RendererHookType_t::Vulkan, it doesn't detect any. Still didn't manage to get any log from ingame_overlay when used in gbe_fork. |
How did you install dxvk? The version installed by winetricks is old (v0.41), while the latest dxvk version is 2.4. |
With AUR, I also tried using 2.4 binaries next to game files. |
dxvk should not be put next to game files but in wine's system32 directory per the dxvk documentation. |
It is, I'm just talking about another setup that I also tried which is most commonly used by windows user that want to use DXVK on a game. |
On windows, you don't have any other choice but to put it next to the game files. You are not supposed to replace the files in system32 :), but on wine you should. |
I know. I was just testing in case that fixed/changed anything, could be possible that you only tested dxvk on windows and used that setup. |
The screenshot is from ubuntu |
Tested again dx11_app.exe. shift + f2 doesn't open anything, it also auto close after 10 seconds.
|
This version should work on DX11, don't know about DX10 |
It's embarrassing but after checking again, I only rebuild the examples with your new commit (forgot to run cmake --install to build dir gbe_fork was using). After fixing that, game I was testing now also have working overlay. Thanks for making your overlay work with dxvk and fixing issue I had. |
dxvk is still not officially 'supported', only detected. (DX12 lacks detection tho). It doesn't always work on Windows either. |
@Edremon how did you managed to get working overlay with gbe_fork? i've managed to build latest version of fork with this branch, but on steam deck there is still no overlay in DX11 games |
So, i managed where is the problem. For some reason, gbe_fork dll requires zlib1.dll to be in the same folder (dunno why). But i can confirm flawless work of overlay in DX11 games on Steam Deck with DXVK when using this branch. In overlay i see that DXVK is detected correctly |
I don't have that many games to test, but Dark Souls Remastered for example work correctly when building with this PR but doesn't without.
Some static build failed somewhere in your build, steam_api.dll should be fully static, but that have nothing to do with ingame_overlay and shouldn't be discussed further here. By the way, @Nemirtingas, I noticed that in some dx11 game, dxvk is not detected, it just says d3d11.dll renderer. Oddly enough, on this particular game, the overlay work just fine without this PR. The game that have this behavior is Dark Souls III. |
c42f3e3
to
80ee0c2
Compare
f8f09ef
to
a475d15
Compare
# Conflicts: # src/Windows/DX10Hook.cpp # src/Windows/DX10Hook.h # src/Windows/DX11Hook.cpp # src/Windows/DX11Hook.h # src/Windows/DX12Hook.cpp
No description provided.