Vulkan support breaks DirectX

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
jserink
Newbie
Newbie
Posts: 3
Joined: Wed Feb 01, 2012 2:02 am

Vulkan support breaks DirectX

Post by jserink »

Hi All:

I've been running wine 2.3 on gentoo. Direct 3D work great and I can play age of empires III no problem.

I tired installed installing wine 2.3-r4 from the bobwa overlay and it has slightly different build flags:
For example:
This one is in wine-2.3:
+ - d3d9 : Apply highly experimental patches for Gallium
Nine support. This patch may break some
applications.

But in wine 2.3-r4 and all versions after, this flag is gone but this one appears:
- - vulkan : Apply Wine Staging patches for Vulkan support.

Now, whether I enable vulkan support or not (from reading I should not since I have a radeon running open source drivers) directx no longer works.
I have tried the following versions,
2.7, 2.3-r4, 2.17-r1....
directx will work on none of them, I get this error:
err:module:import_dll Library d3d9.dll (which is needed by L"C:\\Program Files\\Microsoft Games\\Age of Empires III\\age3.exe") not found


Which is nonsense, the driver is there. I downgrade to wine-2.3 and directx works again. Upgrade to anything above 2.3 with vulkan enabled or disabled and the errror above comes up.

Just thought I'd share that if the devs are interested.

Cheers,
john
User avatar
Bob Wya
Level 12
Level 12
Posts: 3068
Joined: Sat Oct 16, 2010 7:40 pm

Re: Vulkan support breaks DirectX

Post by Bob Wya »

@John,

Sounds like you really need to switch over to the newer Gentoo multislot Wine packages... See Gentoo Wiki / Wine: New Packaging ...
Check your Gentoo news feed items for: 2017-04-10-split-and-slotted-wine (10 April 2017) ...

If you need the D3D9 patchset - then you need the main Gentoo multislot:
  • app-emulation/wine-d3d9
  • app-emulation/wine-any
packages.

NP makes a point of supporting the D3D9 patchset very well there...

I don't support the +d3d9 USE flag on my ::bobwya Overlay Wine packages - because: So:

Code: Select all

err:module:import_dll Library d3d9.dll (which is needed by L"C:\\Program Files\\Microsoft Games\\Age of Empires III\\age3.exe") not found
is not nonsense! I deliberately don't include the Gallium D3D9 patchset! So of course the associated d3d9.dll won't exist either!

To be fair - I don't provide a +d3d9 USE flag - so it should be obvious there won't be support for this 3rd party patchset... :roll:
To this end:

Code: Select all

equery uses app-emulation/wine
is your friend! No +d3d9 USE flag there = no support.

To emphasis my ::bobwya Overlay Wine packages have diverged significantly from the Gentoo Wine packages - they are not just updated versions!
Like any Overlay packages - they should be used at your own risk and without any official Gentoo support.

As for the +vulkan USE flag it's just a toggle for the Wine Staging Vulkan-passthrough patchset: wine-staging / patches / vulkan-Vulkan_Implementation ...
Which has absolutely nothing to do with support for the Gallium D3D9 patchset...

Bob
Locked