Skip to content
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

Clarification for "Please do not use wine's d3d9x or d3dcompiler with d9vk"? #200

Closed
Espionage724 opened this issue Jul 9, 2019 · 10 comments
Labels
question Further information is requested

Comments

@Espionage724
Copy link

I was under the impression originally that this meant to not install DX9 from winetricks, but another person pointed out it's the opposite (not to use the default Wine DX9 but install it via winetricks).

I'm wondering if there could be some clarification as to what exactly is meant by this?

@K0bin
Copy link
Contributor

K0bin commented Jul 9, 2019

D9VK implements D3D9.
D3DX9 is a extension library that builds on top of normal D3D9 (or D9VK in this case).
D3DCompiler is used to compile HLSL shaders to D3D Bytecode which gets fed into D9VK.

Please do not use wine's d3d9x or d3dcompiler with d9vk. They make invalid API calls and generate bad shaders. I cannot stress this enough.

That means you have to use the Microsoft versions of the dlls which you can install using Winetricks.

@Espionage724
Copy link
Author

Espionage724 commented Jul 9, 2019

So just to be sure, if I use D9VK, it's necessary (according to the disclaimer) to also install some d3d9 package via winetricks? The relevant d3d libraries that come with Wine by-default aren't good to be using, and the ones that come from winetricks are libraries that aren't modified by Wine/are used by Windows?

Looking at winetricks, it looks like there's an entry for D9VK, and if I'm reading it right, it looks like it installs d3dcompiler_43 and d3dx9. But there's several other d3dcompiler_4* packages it seems too; do those also need installed?

@K0bin
Copy link
Contributor

K0bin commented Jul 9, 2019

and the ones that come from winetricks are libraries that aren't modified by Wine/are used by Windows?

Yup, those are just the Microsoft libraries. Some games ship those but the majority unfortunately doesnt.

Which d3dcompiler and d3dx9 entry you need depends on what the game loads. You can however just install all of them and that should be fine.

@misyltoad misyltoad added the question Further information is requested label Jul 9, 2019
@misyltoad
Copy link
Owner

Basically what @K0bin said.

@shmerl
Copy link

shmerl commented Jul 16, 2019

Thanks for clarifying, this statement was indeed very confusing.

Is there any way to fix Wine's versions not to have such problems? It would be better to avoid using blobs.

@K0bin
Copy link
Contributor

K0bin commented Jul 16, 2019

Sure they are fixable but that's a lot of work and the backlog for the Wine guys is already pretty long right now.

@shmerl
Copy link

shmerl commented Jul 16, 2019

Are there known Wine bugs to track these? If not, may be it would be good to file them, so Wine developers would be aware about them to begin with?

@Espionage724
Copy link
Author

Is this still relevant now that D9VK is merged with DXVK?

@K0bin
Copy link
Contributor

K0bin commented Jan 6, 2020

Yes and it will be until Wine fix their implementations of those dlls.

@shmerl
Copy link

shmerl commented Jan 6, 2020

Is there a relevant bug to follow for this on the Wine bug tracker?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants