Created attachment 145134 [details] Actual rendering (Gallium Nine Standalone) When Iris driver is used, rendering is incorrect. Interestingly, the rendering is the same as D9VK: https://github.com/Joshua-Ashton/d9vk/issues/190 Steps to reproduce: 1. Download WOLF RPG Editor (e.g. "WolfRPGEditor_210.zip") from http://www.silversecond.com/WolfRPGEditor/Download.html [Note: Version 2.22 and newer versions support D3D11 and setting "Old_DirectX_Use=1" in Game.ini is needed to use D3D9] 2. Unpack the file 3. Run "winetricks galliumnine" 4. Set wined3d renderer to "gdi" [Note: This is a workaround for "black screen" issue in Gallium Nine, e.g. 'wine reg add "HKCU\Software\Wine\Direct3D" /v "Renderer" /t REG_SZ /d "gdi"'] 5. Run "Game.exe" with "MESA_LOADER_DRIVER_OVERRIDE=iris" I used to use Radeon HD 4200 before and WOLF RPG Editor was working with Gallium Nine about 2.5 years ago (Modified version of Wine was used, not current "stand-alone" releases). Since i965 driver isn't Gallium based, I was not able to use Gallium Nine on my current machine. System information: * HD 510 (Skylake) * Ubuntu 19.04 + libdrm 2.4.99 + Mesa 19.2.0-rc1 + Gallium Nine Standalone 0.4 + Wine 4.0.1
Created attachment 145135 [details] Expected rendering (wined3d)
Hi, thanks for the report. Could you please clarify this moment? > 4. Set wined3d renderer to "gdi" [Note: This is a workaround for "black screen" issue in Gallium Nine, e.g. 'wine reg add "HKCU\Software\Wine\Direct3D" /v "Renderer" /t REG_SZ /d "gdi"'] I added this command: [den@den-pc WOLF_RPG_Editor2]$ wine reg add "HKCU\Software\Wine\Direct3D" /v "Renderer" /t REG_SZ /d "gdi" The operation completed successfully but still getting black screen, did I miss something? Full log from game start below: [den@den-pc WOLF_RPG_Editor2]$ wine '/home/den/Downloads/WolfRPGEditor_224/WOLF_RPG_Editor2/Game.exe' 0112:err:module:load_so_dll failed to load .so lib "/usr/bin/../lib32/wine/l3codeca.acm.so": libmpg123.so.0: cannot open shared object file: No such file or directory 0112:fixme:win:RegisterTouchWindow (0xe0054 00000000): stub 0112:fixme:win:WINNLSEnableIME hwnd 0xe0054 enable 0: stub! 0112:fixme:dinput:IDirectInputDevice2WImpl_CreateEffect (0x16bc08)->({13541c23-8e33-11d0-9ad0-00a0c9a06e35},0x339698,0xa74bc4,(nil)): stub! 0112:fixme:dinput:IDirectInputDevice2WImpl_CreateEffect not available in the generic implementation 0112:fixme:dinput:IDirectInputDevice2WImpl_CreateEffect (0x16bc08)->({13541c20-8e33-11d0-9ad0-00a0c9a06e35},0x339698,0xa74ba4,(nil)): stub! 0112:fixme:dinput:IDirectInputDevice2WImpl_CreateEffect not available in the generic implementation 0112:err:winediag:wined3d_dll_init Disabling 3D support. 0112:fixme:ddraw:ddraw7_WaitForVerticalBlank iface 001A0BA0, flags 0x1, event 00000000 stub! 0112:fixme:msctf:ThreadMgr_ActivateEx Unimplemented flags 0x4 0112:err:winediag:MIDIMAP_drvOpen No software synthesizer midi port found, Midi sound output probably won't work. 0112:fixme:dmsynth:IDirectMusicSynth8Impl_SetMasterClock (001CC2A8)->(001CC170): stub 0112:fixme:dmsynth:IDirectMusicSynthSinkImpl_SetMasterClock (001CB668)->(001CC170): stub 0112:fixme:dmsynth:IDirectMusicSynth8Impl_Open (001CC2A8)->(0033BCF8): stub 0112:fixme:dmusic:synth_dmport_Activate (001CBF98/001CBF98)->(1): semi-stub 0112:err:dmloader:IDirectMusicLoaderImpl_SetObject : could not attach stream to file L"C:\\windows\\system32\\drivers\\gm.dls", make sure it exists 0112:fixme:dmloader:IDirectMusicLoaderImpl_GetObject : unknown/unsupported way of loading libpng warning: iCCP: known incorrect sRGB profile libpng warning: iCCP: known incorrect sRGB profile libpng warning: iCCP: known incorrect sRGB profile libpng warning: iCCP: known incorrect sRGB profile upd - after adding that row in "reg" I can't start the game on DX11 now (also added "libmpg123" this package, still - didn't help)
Hi, Denis. It seems that Gallium Nine is not active. You can check its state and configure it: 'env MESA_LOADER_DRIVER_OVERRIDE=iris wine ninewinecfg' 'winetricks galliumnine' installs Gallium Nine Standalone and enables it. If winetricks is not installed yet, you can download it from https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks I can see the following green text when I run Game.exe or ninewinecfg: Native Direct3D 9 v0.4.0.294-release is active. For more information visit https://github.com/iXit/wine-nine-standalone
aha. You missed 1 step (at least, I think so) Launched "wine config.exe" and put a radio-button to "3D ... something" Then I got these logs during game launching. nine:drm_create_adapter Unable to load requested driver. err:d3d9nine:present_create_adapter9 Unable to create ID3DAdapter9 (fd=170) nine:drm_create_adapter Unable to load requested driver. err:d3d9nine:present_create_adapter9 Unable to create ID3DAdapter9 (fd=170) err:d3d9nine:d3dadapter9_new No available native adapters in system. So at least, it points to drivers issue. Strange, I built x32 mesa with gallium-nine support and exported it. Ok, will try to sort it out and reproduce again
Created attachment 145146 [details] corrupted_image_Denys upd - confirming, reproduced this issue on system mesa (strange why I have issues with exports...) Attached my screenshot. Will try to investigate this issue closer. Thanks again
> aha. You missed 1 step (at least, I think so) > Launched "wine config.exe" and put a radio-button to "3D ... something" The "3D ... something" ("3D mode" in Japanese) means GPU rendering mode. This is the default mode (no need to set manually), however, when Game.exe fails to initialize D3D, it falls back to software rendering mode and writes the setting ("SoftModeFlag=1") to Game.ini. > upd - confirming, reproduced this issue on system mesa (strange why I have > issues with exports...) > Attached my screenshot. Will try to investigate this issue closer. Thanks again I saw the rendering result when I tried it with Mesa 19.1, not 19.2-rc1. I guess the change comes from fixing https://bugs.freedesktop.org/show_bug.cgi?id=110657
hi again. >I saw the rendering result when I tried it with Mesa 19.1 hmm, are you sure in this? I sorted out my issue with exports, and was able to test these commits: commit cf652205cff25dbb0d8c0f642f8a6d097e51a010 (HEAD) iris: Add gitlab-ci build testing Mesa 19.1.1 (git-22eddd8b9d) First one (one of the earliest when iris was implemented) reports about game crash, second one - provides rendering issue same with https://bugs.freedesktop.org/attachment.cgi?id=145146 So at least now, I can't say that it is regression. Also I am sure I am using gallium-nine, I see >Native Direct3D 9 v0.4.0.294-release is active. >For more information visit https://github.com/iXit/wine-nine-standalone during game loading
upd - made downgrade for system mesa to 19.1.0 (I have manjaro OS) and see the same (corrupted) result (and minor observation - some-why after closing application wineserver doesn't die. So next game launch simply shows black screen. Solution is to kill wineserver manually)
(In reply to Denis from comment #7) > >I saw the rendering result when I tried it with Mesa 19.1 > hmm, are you sure in this? Yes, I'm sure. 1. Your screenshot shows the rendering result with Mesa 19.1 on my machine 2. My rendering result with Mesa 19.2-rc1 is https://bugs.freedesktop.org/attachment.cgi?id=145134 (closer to expected rendering result) I think there were multiple rendering issues with "Iris + Nine" and one of them (https://bugs.freedesktop.org/show_bug.cgi?id=110657) was fixed by b4c54894bba085966c52cb515bd72927e4ec4939. So we need to use Mesa 19.2-rc or Git master to debug this (111467). If both Mesa 19.1 and 19.2-rc are already installed on your system, try using envar LIBGL_DRIVERS_PATH (for Iris) and D3D_MODULE_PATH (for Nine) to make sure to use Mesa 19.2-rc. Also note that you can see known (hard-coded) d3dadapter9 search paths: https://github.com/iXit/wine-nine-standalone/blob/master/common/library.c Unfortunately Game.exe doesn't exit with default wineprefix. "winetricks gmdls dmsynth dmusic" works for me as a workaround, or run "wineserver -k" manually.
>If both Mesa 19.1 and 19.2-rc are already installed on your system, try using >envar LIBGL_DRIVERS_PATH (for Iris) and D3D_MODULE_PATH (for Nine) to make >sure to use Mesa 19.2-rc. during testing I am using 3 exports (plus iris, for sure): export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/den/mesa32/mesa-git-23.08/lib/ export LIBGL_DRIVERS_PATH=/home/den/mesa32/mesa-git-23.08/lib/dri/ export D3D_MODULE_PATH=/home/den/mesa32/mesa-git-23.08/lib/d3d >Also note that you can see known (hard-coded) d3dadapter9 search paths: >https://github.com/iXit/wine-nine-standalone/blob/master/common/library.c Before running the game, I checked "wine ninewinecfg", to be sure, that d3d library was taken from the right place - in all cases it was taken exactly from the export. >I think there were multiple rendering issues with "Iris + Nine" and >one of them (https://bugs.freedesktop.org/show_bug.cgi?id=110657) was >fixed by b4c54894bba085966c52cb515bd72927e4ec4939. Hmm, could make sense, if will be taken into account the fact that rendering results are different. Ok, let me check this one more time
Created attachment 145210 [details] apitrace.trace you was correct, Masanori Kakura. There are 2 issues, and current one, reported by you, starts exactly after Danylo's commit. I made an apitrace for it (attached), also will speak with Danylo on monday. Thanks
Thanks for the report. I've made a merge request https://gitlab.freedesktop.org/mesa/mesa/merge_requests/1872 which fixes this issue.
Thank you, Denis and Danylo! It works for me (Mesa 19.2.0-rc2 + https://gitlab.freedesktop.org/mesa/mesa/commit/ea2e28750e4f0606832398d0e8b7eb6c47e0e421.diff).
Fixed by 175c32e9bdc8b7b9c43f605cb59cd82415075f67.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.