Closed vurstp closed 8 years ago
Looking at the log you provided you should:
Please always report wine version, OS, mesa version, GPU name, ...
Well I think you just don't have direct rendering, because you don't have your xserver correctly setup. Looks like it's using llvmpipe. Or perhaps you run an intel card, and likely your distro doesn't enable ilo driver (which is a good idea because it works very bad).
In case you are on intel but missing ilo, it would print:
ilo: driver missing
nine:drm_create_adapter: Unable to load requested driver.
err:d3dadapter:present_create_adapter9 Unable to create ID3DAdapter9 (fd=13)
fixme:win:EnumDisplayDevicesW ((null),1,0x32ec18,0x00000000), stub!
err:d3dadapter:d3dadapter9_new No available native adapters in system.
Similar problem here: Wine staging 1.9.9 with Nvidia drivers 367.18 DRI obviously is enabled and working: glxinfo = "direct rendering: Yes" And yet.. err:d3dadapter:DRI3CheckExtension DRI3 advertised, but not working err:d3dadapter:has_d3dadapter Unable to query DRI3. Trying DRI2 fallback (slower performance). err:d3dadapter:has_d3dadapter DRI2 fallback unsupported err:d3dadapter:has_d3dadapter Native Direct3D 9 will be unavailable. For more information visit https://wiki.ixit.cz/d3d9 err:d3dadapter:d3dadapter9_new Your display driver doesn't support native D3D9 adapters.
Does this mean it doesn't work with Nvidia drivers? Because that's a bit of a deal breaker then isn't it? The Noveau drivers are much slower, so why would forcing people to use those make sense?
gallium nine based on gallium and part of mesa open source graphics stack
? ... If you mean does my Mesa have Gallium compiled in? Yes it does. v11.0.6 English One based on Latin and part of the Indo-European language stack
nouveau is a gallium driver. NVidia proprietary driver is not.
gallium nine does talk to gallium drivers only. It isn't able to talk to other drivers.
Ohhhhh ok. Thanks! So this is a pet project for ATI / Radeon owners .. gotcha.
It will work with nouveau as well. If your card has reclocking support, nouveau performs pretty well
When the kernel gets to around 4.7~4.8 .. with overclocking .. In theory, Nouveau will run a bit slower than the Nvidia drivers (Unless you're playing TF2 for some weird reason). While as of now, it's a lot slower. So it's nerfing pure Linux 3D so I can run Windows under Wine a little better? Er. No. Whatever gain I get in the wine game is more than likely going to be blitzed by the loss from moving from Nvidia to Nouveau anyway. Why bother when CSMT is back in Wine in 1.9.9 anyway? I'm a bit surprised this has made it in to Wine staging tbh. I guess as a side project for if and when Nouveau ever catches up with the Nvidia drivers it's fair enough. But it's a bit weird that the guides at https://wiki.ixit.cz/d3d9 don't make it clear that this is just a non-starter for the Nvidia drivers at the moment. It seems to be pretending it's a catch all speed up rather than just straight up say "Hey you have to use slower Nouveau drivers on Nvidia cards to make this work". It's not mentioned in the FAQ or the "Installation Troubleshooting" sections. Just feels a bit .. wrong somehow.
I close the bug then
Ran a fresh install with some new hardware, this is what happened when I tried to run WoW.
vurstp@deathwing:~$ wine '/home/vurstp/.wine/drive_c/Program Files/World of Warcraft/Wow.exe' fixme:module:load_dll Loader redirect from L"d3d9.dll" to L"d3d9-nine.dll" fixme:heap:RtlSetHeapInformation (nil) 1 (nil) 0 stub fixme:heap:RtlSetHeapInformation 0x1560000 0 0x32fda8 4 stub err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform fixme:winhttp:WinHttpDetectAutoProxyConfigUrl discovery via DHCP not supported fixme:winhttp:get_system_proxy_autoconfig_url no support on this platform fixme:mpr:WNetGetUniversalNameW (L"C:\\Program Files\\World of Warcraft\\data\\data", 0x00000001, 0x176e910, 0x176e90c): stub fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.8, 256 bits)"). fixme:win:EnumDisplayDevicesW ((null),0,0x176f5b4,0x00000000), stub! fixme:dxgi:DXGID3D10CreateDevice Ignoring flags. fixme:dxgi:dxgi_check_feature_level_support Ignoring adapter type. fixme:winediag:dxgi_check_feature_level_support None of the requested D3D feature levels is supported on this GPU with the current shader backend. fixme:win:EnumDisplayDevicesW ((null),0,0x176ecc4,0x00000000), stub! err:d3dadapter:DRI3CheckExtension DRI3 extension is not present err:d3dadapter:has_d3dadapter Unable to query DRI3. Trying DRI2 fallback (slower performance). err:d3dadapter:has_d3dadapter DRI2 fallback unsupported err:d3dadapter:has_d3dadapter Native Direct3D 9 will be unavailable. For more information visit https://wiki.ixit.cz/d3d9 err:d3dadapter:d3dadapter9_new Your display driver doesn't support native D3D9 adapters. fixme:d3d:wined3d_guess_card No card selector available for card vendor 0000 (using GL_RENDERER "Gallium 0.4 on llvmpipe (LLVM 3.8, 256 bits)"). fixme:win:EnumDisplayDevicesW ((null),0,0x176f214,0x00000000), stub! fixme:dxgi:dxgi_check_feature_level_support Ignoring adapter type. fixme:winediag:dxgi_check_feature_level_support None of the requested D3D feature levels is supported on this GPU with the current shader backend. err:d3dadapter:d3dadapter9_new Your display driver doesn't support native D3D9 adapters. err:d3dadapter:d3dadapter9_new Your display driver doesn't support native D3D9 adapters. [format/1] [..\src\format.cpp:1430]: invalid length modifier for format 'u' in 'Client net stats: %Lu bytes sent, %Lu bytes received, %Lu msec elapsed' (ignored) [format/1] [..\src\format.cpp:1430]: invalid length modifier for format 'u' in 'Client net stats: %Lu bytes sent, %Lu bytes received, %Lu msec elapsed' (ignored) [format/1] [..\src\format.cpp:1430]: invalid length modifier for format 'u' in 'Client net stats: %Lu bytes sent, %Lu bytes received, %Lu msec elapsed' (ignored)