https://bugs.winehq.org/show_bug.cgi?id=48618
Bug ID: 48618 Summary: Wargaming.net Game Center shows black screen on launch since Wine 5.0 Product: Wine Version: 5.0 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: chris@cjwatts.com Distribution: ---
Created attachment 66463 --> https://bugs.winehq.org/attachment.cgi?id=66463 Wine stdout log
Confirmed on two different Ubuntu 19.10 machines.
Able to launch World of Tanks directly without much issue, but the Game Center is just a black screen.
Tried wine-stable 5.0 and wine-staging 5.1 with the same results.
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #1 from Chris Watts chris@cjwatts.com --- Created attachment 66464 --> https://bugs.winehq.org/attachment.cgi?id=66464 Screenshot
https://bugs.winehq.org/show_bug.cgi?id=48618
Chris Watts chris@cjwatts.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Hardware|x86 |x86-64
https://bugs.winehq.org/show_bug.cgi?id=48618
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |xerox.xerox2000x@gmail.com Status|UNCONFIRMED |NEW Ever confirmed|0 |1
--- Comment #2 from Louis Lenders xerox.xerox2000x@gmail.com --- Hi, please add downloadlink
I downloaded from https://eu.wargaming.net/en/wgc, and for now confirm the bug.
Could you answer following questions:
- Did the Game Center get an update/refresh, or does it work for you before wine-5.0 with this version of Game Center as well
- I can workaround the bug by running "wine wgc.exe --disable-gpu", does that work for you too?
Disabling libglesv2.dll did not help (app refuses to start) but this bug is nevertheless similar, but maybe not exact dupe of https://bugs.winehq.org/show_bug.cgi?id=44985
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #3 from Chris Watts chris@cjwatts.com --- Thanks Louis,
The Game Center works before wine-5.0.
I can confirm that --disable-gpu does work.
Thanks!
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #4 from Chris Watts chris@cjwatts.com --- I worked around this issue by installing DXVK to enable Vulkan support. https://linuxconfig.org/improve-your-wine-gaming-on-linux-with-dxvk
This fixed the launcher, and also some issues with ground textures in the game itself.
https://bugs.winehq.org/show_bug.cgi?id=48618
Louis Lenders xerox.xerox2000x@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |directx-d3d
--- Comment #5 from Louis Lenders xerox.xerox2000x@gmail.com ---
I worked around this issue by installing DXVK to enable Vulkan support. https://linuxconfig.org/improve-your-wine-gaming-on-linux-with-dxvk
ok, then i guess it`d d3d issue. Setting component
https://bugs.winehq.org/show_bug.cgi?id=48618
jaap.aarts1@gmail.com jaap.aarts1@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |jaap.aarts1@gmail.com
--- Comment #6 from jaap.aarts1@gmail.com jaap.aarts1@gmail.com --- Since the latest wargaming game center update I get this using dxvk (tested on old version as well) too.
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #7 from Chris Watts chris@cjwatts.com --- The latest Wargaming Game Center still works for me.
As a general update, I had a fresh install of Ubuntu 20.04 recently which has Wine 5.0 in the official repositories. This too has the aforementioned issue with blacked-out graphics, but once again, installing DXVK for a Vulkan-based D3D implementation works a treat.
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #8 from Chris Watts chris@cjwatts.com --- If anyone is using a graphics driver with only Vulkan 1.0 support (e.g. nvidia-390), you will need to use DXVK <= 1.5.1 as they removed support for Vulkan 1.0 from 1.5.2 onwards.
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #9 from jaap.aarts1@gmail.com jaap.aarts1@gmail.com --- As using dxvk doesnt work for me, I tried running an APItrace, and suprise suprise, it works when using apitrace. Can anyone try and reproduce this?
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #10 from jaap.aarts1@gmail.com jaap.aarts1@gmail.com --- As clarification, I mean dxvk+apitrace. So I guess if just using dxvk works for you you cant try and reproduce this, but if it doenst please try.
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #11 from Chris Watts chris@cjwatts.com --- Could somebody mark this as also affecting World of Tanks itself, as some textures appear black for presumably the same reason.
https://bugs.winehq.org/show_bug.cgi?id=48618
Olivier F. R. Dierick o.dierick@piezo-forte.be changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |o.dierick@piezo-forte.be
--- Comment #12 from Olivier F. R. Dierick o.dierick@piezo-forte.be --- (In reply to Chris Watts from comment #11)
Could somebody mark this as also affecting World of Tanks itself, as some textures appear black for presumably the same reason.
Hello,
Please, unless it is determined that it's the same issue, don't mix issues with different applications.
Wargaming.net issue is related to the CEF embedded browser engine it uses for rendering the user interface.
I doubt World of Tanks uses CEF to render textures.
If only "some" textures are black, then that's not the same issue as CEF rendering not working at all.
Regards.
https://bugs.winehq.org/show_bug.cgi?id=48618
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://eu.wargaming.net/en | |/wgc Regression SHA1| |645eb62f709275ac46c2a7ea59b | |f8bcba34c7edd Summary|Wargaming.net Game Center |Wargaming.net Game Center |shows black screen on |shows black screen on |launch since Wine 5.0 |launch since Wine 4.21 CC| |focht@gmx.net Version|5.0 |4.21 Keywords| |download, regression
--- Comment #13 from Anastasius Focht focht@gmx.net --- Hello folks,
--- quote --- The Game Center works before wine-5.0. --- quote ---
well, a regression test which almost everyone should be able to perform could have already provided more insight.
https://wiki.winehq.org/Regression_Testing
Regression introduced by:
https://source.winehq.org/git/wine.git/commitdiff/645eb62f709275ac46c2a7ea59... ("wined3d: Create a backup context if setting the pixel format failed in wined3d_context_gl_create_wgl_ctx().")
author Paul Gofman gofmanp@gmail.com Mon, 18 Nov 2019 14:18:12 +0000 (17:48 +0330) committer Alexandre Julliard julliard@winehq.org Mon, 18 Nov 2019 21:12:38 +0000 (22:12 +0100)
Part of Wine 4.21 release.
Unfortunately there is no Bugzilla ticket reference which apps/games were supposedly fixed by this.
There is no clean revert on current master HEAD due to further wined3d refactorings hence use this patch:
--- snip --- $ git diff
diff --git a/dlls/wined3d/context_gl.c b/dlls/wined3d/context_gl.c index b168e6026a..e06ff1a6ea 100644 --- a/dlls/wined3d/context_gl.c +++ b/dlls/wined3d/context_gl.c @@ -1926,27 +1926,11 @@ static BOOL wined3d_context_gl_create_wgl_ctx(struct wined3d_context_gl *context
if (!wined3d_context_gl_set_pixel_format(context_gl)) { - context_release(context); - - if (context_gl->dc_is_private) - { - ERR("Failed to set pixel format %d on device context %p.\n", context_gl->pixel_format, context_gl->dc); - - return FALSE; - } - - WARN("Failed to set pixel format %d on device context %p, trying backup DC.\n", - context_gl->pixel_format, context_gl->dc); + ERR("Failed to set pixel format %d on device context %p.\n", context_gl->pixel_format, context_gl->dc);
- wined3d_release_dc(context_gl->window, context_gl->dc); - if (!(context_gl->dc = wined3d_swapchain_gl_get_backup_dc(swapchain_gl))) - { - ERR("Failed to retrieve the backup device context.\n"); - return FALSE; - } - context_gl->dc_is_private = TRUE; + context_release(context);
- return wined3d_context_gl_create_wgl_ctx(context_gl, swapchain_gl); + return FALSE; }
share_ctx = device->context_count ? wined3d_context_gl(device->contexts[0])->gl_ctx : NULL; --- snip ---
But that will just let the launcher to fall back to failsafe (in-process) behaviour after it detects it can't run separate gpu process ('wgc_renderer.exe --type=gpu-process ...').
--- snip --- ... 04ac:warn:debugstr:OutputDebugStringA "[0518/142619.054:ERROR:viz_main_impl.cc(176)] Exiting GPU process due to errors during initialization\n" [0518/142619.054:ERROR:viz_main_impl.cc(176)] Exiting GPU process due to errors during initialization 020c:warn:debugstr:OutputDebugStringA "[0518/142620.886:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 4 time(s)\n" [0518/142620.886:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 4 time(s) 020c:warn:debugstr:OutputDebugStringA "[0518/142620.888:ERROR:browser_gpu_channel_host_factory.cc(138)] Failed to launch GPU process.\n" [0518/142620.888:ERROR:browser_gpu_channel_host_factory.cc(138)] Failed to launch GPU process. --- snip ---
$ wine --version wine-5.8-173-g9e26bc8116
Regard
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #14 from Gijs Vermeulen gijsvrm@gmail.com --- Hi Focht,
The patch you mentioned was a patch that superseded https://www.winehq.org/pipermail/wine-devel/2019-November/154571.html as mentioned in https://www.winehq.org/pipermail/wine-devel/2019-November/154719.html.
There is more information about why this patch was needed in the former thread, especially here https://www.winehq.org/pipermail/wine-devel/2019-November/154590.html
--- snip --- That what happens with AION game, upon transition from login screen to 3D scene display. ... --- snip ---
Regards
https://bugs.winehq.org/show_bug.cgi?id=48618
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gofmanp@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=48618
Paul Gofman pgofman@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |pgofman@codeweavers.com
--- Comment #15 from Paul Gofman pgofman@codeweavers.com --- (In reply to Anastasius Focht from comment #13)
But that will just let the launcher to fall back to failsafe (in-process) behaviour after it detects it can't run separate gpu process ('wgc_renderer.exe --type=gpu-process ...').
Yes, likely the blamed patch just prevents it from auto falling back. GL rendering to other's process Window is currently not supported.
The blamed patch fully helped AION because it was trying to draw something in the other's process window of 1x1 size just for a brief moment before tearing down some Web drawing, the blamed commit avoided crashing.
I doubt we can do anything sensible with it on wined3d side.
I think I saw some patch / hack allowing GL rendering for other's process windows. I think I will try to find it later.
https://bugs.winehq.org/show_bug.cgi?id=48618
hash HASH.DuOrden@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |HASH.DuOrden@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #16 from hash HASH.DuOrden@gmail.com --- With recent WGC update I am getting black box even with reverting regression commit. Versions of wine-staging-5.19, WGC - 20.06.00.2159, DXVK-1.7.2, GCC-9.3.0, GlibC-2.31. Here is output of "pgrep -a wgc" if any one need that: 7310 wgc.exe 8331 C:\WGC\dlls\wgc_renderer.exe --type=gpu-process --field-trial-handle=948,17864138244217661938,8257634067220129604,131072 --disable-features=MimeHandlerViewInCrossProcessFrame --no-sandbox --log-file=C:\WGC\logs\cef_20201016_230845_201.log --log-severity=info --product-version=Chrome/78.0.3904.87 WGC/20.06.00.2159 --lang=en-US --gpu-preferences=KAAAAAAAAADgAAAwAAAAAAAAYAAAAAAAEAAAAAAAAAAAAAAAAAAAACgAAAAEAAAAIAAAAAAAAAAoAAAAAAAAADAAAAAAAAAAOAAAAAAAAAAQAAAAAAAAAAAAAAAFAAAAEAAAAAAAAAAAAAAABgAAABAAAAAAAAAAAQAAAAUAAAAQAAAAAAAAAAEAAAAGAAAA --log-file=C:\WGC\logs\cef_20201016_230845_201.log --service-request-channel-token=5787365331415983321 --mojo-platform-channel-handle=952 /prefetch:2 8406 C:\WGC\dlls\wgc_renderer.exe --type=utility --field-trial-handle=948,17864138244217661938,8257634067220129604,131072 --disable-features=MimeHandlerViewInCrossProcessFrame --lang=en-US --service-sandbox-type=network --no-sandbox --log-file=C:\WGC\logs\cef_20201016_230845_201.log --log-severity=info --product-version=Chrome/78.0.3904.87 WGC/20.06.00.2159 --lang=en-US --log-file=C:\WGC\logs\cef_20201016_230845_201.log --service-request-channel-token=18432717391259464017 --mojo-platform-channel-handle=1244 /prefetch:8 8420 C:\WGC\dlls\wgc_renderer.exe --type=renderer --no-sandbox --force-device-scale-factor=1 --log-file=C:\WGC\logs\cef_20201016_230845_201.log --field-trial-handle=948,17864138244217661938,8257634067220129604,131072 --disable-features=MimeHandlerViewInCrossProcessFrame --lang=en-US --log-file=C:\WGC\logs\cef_20201016_230845_201.log --log-severity=info --product-version=Chrome/78.0.3904.87 WGC/20.06.00.2159 --device-scale-factor=1 --num-raster-threads=3 --enable-main-frame-before-activation --service-request-channel-token=1009930554252228194 --renderer-client-id=4 --mojo-platform-channel-handle=1484 /prefetch:1
https://bugs.winehq.org/show_bug.cgi?id=48618
minion minion.procyk@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |minion.procyk@gmail.com
--- Comment #17 from minion minion.procyk@gmail.com --- issue is still present in wine-5.21
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #18 from jaap.aarts1@gmail.com jaap.aarts1@gmail.com --- I just updated my system, and this issue is fixed for me. I installed the new wine 5.22, and also updated mesa, so I dont know which of the 2 it is but I suspect wine.
https://bugs.winehq.org/show_bug.cgi?id=48618
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Wargaming.net Game Center |Wargaming.net Game Center |shows black screen on |shows black screen on |launch since Wine 4.21 |launch since Wine 4.21 | |('--disable-gpu' command | |line parameter is a | |workaround)
--- Comment #19 from Anastasius Focht focht@gmx.net --- Hello folks,
updating summary to mention the workaround directly. Information tends to get lost/overlooked between comments.
Obviously still present.
--- quote --- With recent WGC update I am getting black box even with reverting regression commit.
Versions of wine-staging-5.19, WGC - 20.06.00.2159, DXVK-1.7.2, GCC-9.3.0, GlibC-2.31. Here is output of "pgrep -a wgc" if any one need that: 7310 wgc.exe 8331 C:\WGC\dlls\wgc_renderer.exe --type=gpu-process --field-trial-handle=948,17864138244217661938,8257634067220129604,131072 --disable-features=MimeHandlerViewInCrossProcessFrame --no-sandbox --log-file=C:\WGC\logs\cef_20201016_230845_201.log --log-severity=info --product-version=Chrome/78.0.3904.87 WGC/20.06.00.2159 --lang=en-US ... --- quote ---
Well, as long as you have a separate renderer process containing '--type=gpu-process' command line parameter the fallback didn't get activated for whatever reasons hence the black screen is expected.
You need to wait a bit because there is a crash recovery mechanism at work that tries to restart the gpu process several times. After final try it gives up and the black surface will be gone.
--- snip --- ... 1219/115732.270:ERROR:command_buffer_proxy_impl.cc(124)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer. [1219/115732.271:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 1 time(s) ... [1219/115733.937:WARNING:gpu_process_host.cc(990)] Reinitialized the GPU process after a crash. The reported initialization time was 254 ms ... [1219/115735.633:ERROR:command_buffer_proxy_impl.cc(124)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer. [1219/115735.633:ERROR:command_buffer_proxy_impl.cc(124)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer. [1219/115735.633:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 2 time(s) ... [1219/115737.237:WARNING:gpu_process_host.cc(990)] Reinitialized the GPU process after a crash. The reported initialization time was 244 ms ... [1219/115738.718:ERROR:command_buffer_proxy_impl.cc(124)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer. [1219/115738.718:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 3 time(s) ... [1219/115740.307:ERROR:viz_main_impl.cc(176)] Exiting GPU process due to errors during initialization ... [1219/115740.331:WARNING:gpu_process_host.cc(1220)] The GPU process has crashed 4 time(s) [1219/115740.332:ERROR:browser_gpu_channel_host_factory.cc(138)] Failed to launch GPU process. ... --- snip ---
$ wine --version wine-6.0-rc3
Regards
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #20 from Henri Verbeet hverbeet@gmail.com --- Created attachment 69089 --> https://bugs.winehq.org/attachment.cgi?id=69089 patch
The attached patch helps here. It's not ideal in various ways, but as a proof of concept it might be good enough for this kind of use case.
https://bugs.winehq.org/show_bug.cgi?id=48618
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Wargaming.net Game Center |Multiple applications show |shows black screen on |black client area on |launch since Wine 4.21 |startup (Wargaming.net Game |('--disable-gpu' command |Center, Electron based |line parameter is a |apps)('--disable-gpu' |workaround) |command line parameter is a | |workaround) URL|https://eu.wargaming.net/en |https://web.archive.org/web |/wgc |/20210128103830/https://wds | |.gcdn.co/wgc/releases_tTrHg | |LCKHBRiaL/wgc_20.08.00.3331 | |_eu/wargaming_game_center_i | |nstall_eu.exe?enctid=c8uq53 | |oigljy
--- Comment #21 from Anastasius Focht focht@gmx.net --- Hello folks,
refining the summary in order to collect more dupes here.
Lark, an Electron Framework based collaboration tool also suffers from this. I've mentioned it in bug 50578 (https://bugs.winehq.org/show_bug.cgi?id=50578#c2).
Stable download link via Internet Archive:
https://web.archive.org/web/20210128085103/https://sf16-va.larksuitecdn.com/...
NOTE: The app requires 'winetricks -q arial' to work around bug 32342
I can confirm that Henri's patch from comment #20 works for all Electron based apps as well. They show the user interface properly.
$ sha1sum Lark-3.40.2.exe c46286b117f6a4efe104b388d78e59e3d3246205 Lark-3.40.2.exe
$ du -sh Lark-3.40.2.exe 310M Lark-3.40.2.exe
$ wine --version wine-6.0-271-g24b9203d354
Regards
https://bugs.winehq.org/show_bug.cgi?id=48618
winetaste@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetaste@gmx.net
https://bugs.winehq.org/show_bug.cgi?id=48618
--- Comment #22 from Henri Verbeet hverbeet@gmail.com --- A modified version of that patch made it upstream as commit 70418f69dd49da5625bb1893d9fc2bef3fe97b5e, and commit 2ff9a8f08a2cf66241df03304f40e19608beca11 as a follow-up for the Vulkan renderer.
https://bugs.winehq.org/show_bug.cgi?id=48618
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |70418f69dd49da5625bb1893d9f | |c2bef3fe97b5e Resolution|--- |FIXED
--- Comment #23 from Anastasius Focht focht@gmx.net --- Hello folks,
this is fixed by commit https://source.winehq.org/git/wine.git/commitdiff/70418f69dd49da5625bb1893d9... ("wined3d: Introduce a backup path for swapchain presents using GDI.").
Thanks Henri.
Confirmed working with Wargaming.net Game Center and Lark Electron-based app. Both have their main UI rendered now.
$ wine --version wine-6.2-320-gee4e33ed9ac
Regards
https://bugs.winehq.org/show_bug.cgi?id=48618
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #24 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 6.3.
https://bugs.winehq.org/show_bug.cgi?id=48618
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |lilleyen@gmail.com
--- Comment #25 from Anastasius Focht focht@gmx.net --- *** Bug 50803 has been marked as a duplicate of this bug. ***
https://bugs.winehq.org/show_bug.cgi?id=48618
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |6.0.x
https://bugs.winehq.org/show_bug.cgi?id=48618
Michael Stefaniuc mstefani@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|6.0.x |---
--- Comment #26 from Michael Stefaniuc mstefani@winehq.org --- Removing the 6.0.x milestone from bug fixes included in 6.0.1.