Comments (17)
@TomBZombie The whole idea of DXVK is to make use of a lower level API as to reduce/eliminate the overhead in running DX11 on top of OpenGL. So it should especially prove useful in games like WoW where the framerate is already severly CPU limited :)
from dxvk.
@TomBZombie
Hard to say. Loads of the problems WoW have - atleast imo - is that it seems to be using a multitude of old-engine-code with bits and pieces of dx9/10/11 functions, and it will be fun to experiment with that once wine-devel can run blizzard games i guess :)
You can test with wine-staging, but the problem is as was posted at start of thread, that wow is not a "pure" dx11 code it seems, and will have problems.
To the question: Since DX11 in windows have quite more fps than wine w/dx11 now, dx11 -> Vulkan would improve the rendering a lot and hopefully match that of windows. Still would not be "night & day" comparably when it comes to fps, as much of the fps limitation is not local hardware, but more the "talking back and forth to servers" that all MMO's do :)
from dxvk.
Attaching and apitrace of starting WoW. The game should be using d3d11, but they seemingly do something weird in startup.
wow64.zip
EDIT: It should be noted that the trace ends after the first frame, but the game continue to launch and display, not sure if there's a trick to capturing more.
EDIT 2: Combining with the logging info above, I'd assume the game creates and destroys several D3D instances, not quite sure why. Maybe to make injection of external graphics more difficult?
from dxvk.
This issue appears to have been resolved by recent commits, if you have DXVK_FAKE_DX10_SUPPORT=1 set. However, there's still an issue here. On both live and beta, on launch of the game I'll either get a black screen and nothing else, or graphics will start to load (may get the title screen, may not, but the HUD renders for a couple frames) and then freeze entirely. Nothing obvious at all in the logs with debug enabled. I have found that on beta (not on live, sadly), if I set DXVK_FAKE_DX10_SUPPORT=0 and attempt to launch the game, it indicates that my graphics hardware has changed and prompts me to reset to defaults, then fails to launch as expected. If I then set it back to 1, it prompts me again, and on clicking yes the game launches and runs perfectly. If I exit and start it again, it's back to the previous behavior with the black screen/freeze. If logs might be helpful, I could upload them, but I'm only using the standard logging with the debug level and saw no errors of any kind. Also, if you'd prefer this be opened as a separate issue, I'm more than willing to do that. Don't want to hijack something that might be ready to close.
WINE: 3.7-pba
dxvk: 0.50-1 from AUR
NVIDIA drivers: 396.24
from dxvk.
Yes, there is no D3D10 support at the moment and it's not something I'm going to work on any time soon. Out of curiosity, which application were you testing?
from dxvk.
Though so.
The game is World of Warcraft.
If you're interested I can provide logs for there too (all free to play, git RADV):
- Heroes of the Storm (only 2d elements visible, 3d view is black)
- Hearthstone (black screen)
- Battlerite (black screen, then system freeze)
Unigine Valley works good at maybe 2/3 of native linux performance (not tested accurately).
from dxvk.
Interesting.
I am eventually hoping to get WoW to run with DXVK for more performance than the current D3D11 atm..
I do wonder tho... When i game is DX11, it might not be "pure" DX11, and doing some calls to DX10 functions (and possibly even DX9). In WoW's case, the game engine is a old engine with new functions on top of old functions.. on top of even older functions.
I am no programmer, but i kinda think that if i create a 3D program, it can utilize DX"current version and older"? Its only if i put in some new DX function that i really can say it "requires DX11" in that case, but still keep the DX9 code for other stuff.. ie. i can use DX9 calls to put up text-boxes, DX10 to create some trees, and DX11 to create the shaders... all in one program. Or am i totally wrong in my assumptions? (Cos that WOULD explain problems in general with things like WoW)
Just to make sure tho, you "force" DX11 with the option wow-64.exe -d3d11
right?
I am planning on doing some tests to this myself, so keep this going :)
from dxvk.
I am indeed forcing with -d3d11
, but yeah, it would not surprise me if they're mixing APIs, given the general quality of the WoW engine (man is it a CPU hog).
from dxvk.
SSAO (Ambient Occlusion) uses DX11.. outline of models when you hover the mouse over them uses some DX11 functions.. Particles i guess.. some shading.
However, i think much of the "old world" still uses DX9 functions, as the models/textures++ is "old". Still might be drawn in DX11, but i would not at all be surprised if Blizzard has cut quite a few corners with their programming.
from dxvk.
However, i think much of the "old world" still uses DX9 functions, as the models/textures++ is "old". Still might be drawn in DX11, but i would not at all be surprised if Blizzard has cut quite a few corners with their programming.
Lets see what the next version brings, it looks like the remove old code this time.
Warning: Your current graphics API will not be supported in future versions of World of Warcraft, which will require DirectX 11 or Metal.
Warning: Your current system will not be supported in future versions of World of Warcraft which will require a 64-bit operating system.
Warning: Your graphics card will not be supported in future versions of World of Warcraft, which will require a Shader Model 5 capable graphics card or better.
from dxvk.
Attaching and apitrace of starting WoW. The game should be using d3d11, but they seemingly do something weird in startup.
wow64.zip
EDIT: It should be noted that the trace ends after the first frame, but the game continue to launch and display, not sure if there's a trick to capturing more.
EDIT 2: Combining with the logging info above, I'd assume the game creates and destroys several D3D instances, not quite sure why. Maybe to make injection of external graphics more difficult?
Maybe this is because of Windows?
My apitrace on the pc of my girlfriend was simpler:https://www.dropbox.com/s/wsvpfvidl0u92cm/Wow-64.trace?dl=0
from dxvk.
How much difference would DXVK make to a game like WoW? I get about 30% GPU utilization so it's CPU limited. Does DXVK have a lower CPU overhead than wine's DX11 implementation? If it's just more efficient for the GPU I don't think it will make any difference, will it?
from dxvk.
@isugimpy some people actually got the game to work recently, see #343 - maybe ask there.
from dxvk.
I saw that issue, but didn't want to interfere with it because it was specifically a radv issue with graphics corruption, instead of a hang/crash behavior. I can jump over there though if you want.
from dxvk.
@isugimpy, you need install both x64 and x32 versions of DXVK to WoW work fine.
And you don't need to use OpenGL based PBA if you using Vulkan based DXVK.
from dxvk.
Oh, I know I don't need PBA. I just already had it installed as my system version of WINE and kept using it. I realize the extra patches aren't in use once DXVK takes over.
from dxvk.
Given that the beta version seems to work, I'll close this one.
from dxvk.
Related Issues (20)
- Regression? Age of Empires II: Definitive Edition gets stuck on Intro Video with Steam Deck, only on SteamOS Stable. HOT 1
- Nearly %60 decrease in FPS when used with Reshade HOT 8
- Fallout: New Vegas through Mod Organizer not detecting graphics card HOT 2
- Installation question on DLL overrides HOT 2
- Weird framerate drop when re-launching DXVK games/applications with FreeSync HOT 11
- GTA IV DXVK Drop fps and more stutters HOT 2
- Kingdom Come Deliverance crashing with DXVK injected in windows 10 HOT 5
- [Source Engine] Translucent sprites rendering issue HOT 5
- SOLIDWORKS SUPPORT HOT 8
- PROTOTYPE ™ missing shadows and weak other graphical effects HOT 21
- Dark Souls: Remastered - visually freezes but everything else works HOT 7
- Desaturated colours when used with Watch Dogs 2 HOT 2
- Battle.net's BlizzardBrowser.exe (Chromium) "Failed to find the GPU adapter with the specified Luid." HOT 2
- Question about NVIDIA shader cache HOT 2
- Game opens in wrong monitor(WINDOWS10) HOT 3
- Ephinea PSOBB crashes with add-on plugin and DXVK artifact build which addresses #3117 HOT 6
- Mirror's Edge (2009) performs worse after shader compilation HOT 1
- [d3d9] Shift 2 Unleashed alt-tab issue HOT 1
- Everquest missing old textures HOT 13
- 46274498
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dxvk.