Bug 108919 - Parkitect (Unity Game) dispalys artifacts and black screens with Vega hardware
Summary: Parkitect (Unity Game) dispalys artifacts and black screens with Vega hardware
Status: NEW
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: 18.2
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-02 16:50 UTC by Juyas Yove
Modified: 2018-12-11 12:39 UTC (History)
5 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Screenshot of one of the possible outcomes of starting the game (1.49 MB, image/png)
2018-12-02 16:50 UTC, Juyas Yove
Details
Another artifact example (2.08 MB, image/png)
2018-12-02 16:55 UTC, Juyas Yove
Details
Apitrace (341.05 MB, application/octet-stream)
2018-12-10 19:36 UTC, Alexander Walker
Details
renderdoc capture (268.23 MB, application/octet-stream)
2018-12-11 11:21 UTC, Alexander Walker
Details
renderdoc black screen from toggling vsync (145.69 MB, application/octet-stream)
2018-12-11 12:39 UTC, Alexander Walker
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Juyas Yove 2018-12-02 16:50:05 UTC
Created attachment 142689 [details]
Screenshot of one of the possible outcomes of starting the game

Issue: Vega hardware not working with Parkitect. The game is based on Unity. Lots of artifacts, particularly with ambient occlusion turned up in game's settings 
Steps to reproduce: Start a game in parkitect with Vega hardware. Turn the graphics settings to max and you will experience issues.

Sometimes it's playable, but always with artifacts

Happy to provide logs and feedback.

Some notes: 
https://www.reddit.com/r/ThemeParkitect/comments/a0oboe/black_screen_on_linux_with_rx_vega_56/

Tested this with Mesa 18.2.4 and 18.3 in Fedora 29 (also had issues in Fedora 28).

Happy to donate a copy of the game to a known dev.
Comment 1 Juyas Yove 2018-12-02 16:55:12 UTC
Created attachment 142690 [details]
Another artifact example
Comment 2 Andreas Backx 2018-12-03 18:29:12 UTC
I am the creator of the reddit post mentioned in the opening comment of the issue. The 3 images (1 on the reddit post, and the 2 attachments posted) show exactly what I get when I start the game, depending on what settings are used. I cannot get it to any playable state though.

I'm running Arch Linux 4.19.4, mesa 18.2.5-1 (along with the same lib32 version),  and running on i3 (Xorg) with xf86-video-amdgpu 18.1.0-1.

Here are also some logs from when I started the game: https://paste.ubuntu.com/p/fRt54ftVD4/
Comment 3 Markus 2018-12-03 23:01:55 UTC
Similar issue with black flickering reported here on an RX480 with Mesa 18.2.2 and ambient occlusion turned on: https://old.reddit.com/r/ThemeParkitect/comments/a1mt60/graphics_issue_black_flickering_all_over_the_place/
Comment 4 Evan Goers 2018-12-07 07:44:05 UTC
I am using an RX580 and also have this issue. Forcing OpenGL 4.2(4.3 and above causes the issue) with the mesa environment variable allows the game to run without artifacts but some shaders do not work, such as ambient occlusion.
Comment 5 Timothy Arceri 2018-12-10 02:48:54 UTC
Can somebody try to get an apitrace of the issue [1]? Thanks.

[1] https://github.com/apitrace/apitrace/wiki/Steam
Comment 6 Alexander Walker 2018-12-10 19:36:17 UTC
Created attachment 142771 [details]
Apitrace
Comment 7 Alexander Walker 2018-12-10 19:41:24 UTC
(In reply to Timothy Arceri from comment #5)
> Can somebody try to get an apitrace of the issue [1]? Thanks.
> 
> [1] https://github.com/apitrace/apitrace/wiki/Steam

Never used that tool before but I uploaded a trace that shows it immediately visible on the main menu.

Lots of these in the console if they're relevant:
apitrace: warning: _gl_param_size: unknown GLenum 0x8267
apitrace: warning: _gl_param_size: unknown GLenum 0x92F5
Comment 8 Timothy Arceri 2018-12-10 23:15:47 UTC
(In reply to Alexander Walker from comment #7)
> (In reply to Timothy Arceri from comment #5)
> > Can somebody try to get an apitrace of the issue [1]? Thanks.
> > 
> > [1] https://github.com/apitrace/apitrace/wiki/Steam
> 
> Never used that tool before but I uploaded a trace that shows it immediately
> visible on the main menu.
> 
> Lots of these in the console if they're relevant:
> apitrace: warning: _gl_param_size: unknown GLenum 0x8267
> apitrace: warning: _gl_param_size: unknown GLenum 0x92F5

I'm not sure, I don't see these when replying the trace. Aside from some calls to unsupported debug functions I don't see any obvious issues in the trace.

Do you think you could try grabbing a capture in renderdoc [1]? Once you unzip it somewhere you can add the following to the launch options for the game in steam:

LD_PRELOAD=/your path to renderdoc here/renderdoc_1.2/lib/librenderdoc.so %command%

When you lanuch the game you should see some text overlayed at the top of the screen saying you can create a capture by pressing F12. Once you have a capture you can find it in a folder in the /tmp/ directory. 

[1] https://renderdoc.org/
Comment 9 Alexander Walker 2018-12-11 11:21:55 UTC
Created attachment 142775 [details]
renderdoc capture
Comment 10 Alexander Walker 2018-12-11 11:27:13 UTC
(In reply to Timothy Arceri from comment #8)
> Do you think you could try grabbing a capture in renderdoc [1]? Once you
> unzip it somewhere you can add the following to the launch options for the
> game in steam:
> 
> LD_PRELOAD=/your path to renderdoc here/renderdoc_1.2/lib/librenderdoc.so
> %command%
> 
> When you lanuch the game you should see some text overlayed at the top of
> the screen saying you can create a capture by pressing F12. Once you have a
> capture you can find it in a folder in the /tmp/ directory. 
> 
> [1] https://renderdoc.org/

I've attached a capture. It's a flickering issue so hopefully it was captured in that 1 frame.
Comment 11 Alexander Walker 2018-12-11 12:39:21 UTC
Created attachment 142776 [details]
renderdoc black screen from toggling vsync


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.