Bug 109331 - Empire Total War - Graphical Corruption
Summary: Empire Total War - Graphical Corruption
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
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: 77449
  Show dependency treegraph
 
Reported: 2019-01-12 15:04 UTC by andrew.m.mcmahon
Modified: 2019-03-06 19:27 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
glxinfo | grep strings (636 bytes, text/plain)
2019-01-12 15:04 UTC, andrew.m.mcmahon
Details
steam system info (1.93 KB, text/plain)
2019-01-12 15:05 UTC, andrew.m.mcmahon
Details
Xorg log (4.67 KB, text/x-log)
2019-01-13 12:39 UTC, andrew.m.mcmahon
Details
Xorg log (4.67 KB, text/plain)
2019-01-13 12:40 UTC, andrew.m.mcmahon
Details
dmesg -w (66.55 KB, text/plain)
2019-01-13 12:41 UTC, andrew.m.mcmahon
Details
mesa-git glxinfo (144.85 KB, text/plain)
2019-01-13 16:35 UTC, andrew.m.mcmahon
Details

Description andrew.m.mcmahon 2019-01-12 15:04:58 UTC
Created attachment 143078 [details]
glxinfo | grep strings

4.20.0-arch1-1-ARCH
mesa 18.3.1-1
steam 1.0.0.59-1
R9 285 (Tonga)

In game menus and other game play elements aren't rendered correctly by default:
https://imgur.com/a/AvclRkS

There are no special steps required to replicate the issue.

Affects other Linux distributions and other cards:
https://steamcommunity.com/app/10500/discussions/0/1319962244123571976/

A known workaround for the problem is to edit:

~/.local/share/feral-interactive/Empire/preferences

Changing the value of the following line to zero:

<value name="UsePBOSurfaces" type="integer">1</value>

There doesn't appear to be any downside to this.
Medieval 2 Total War doesn't appear to be affected on my setup.
Unable to test Shogun 2 or Fall of the Samurai as I don't have access to those.
Comment 1 andrew.m.mcmahon 2019-01-12 15:05:38 UTC
Created attachment 143079 [details]
steam system info
Comment 2 andrew.m.mcmahon 2019-01-13 12:39:25 UTC
Created attachment 143084 [details]
Xorg log
Comment 3 andrew.m.mcmahon 2019-01-13 12:40:53 UTC
Created attachment 143085 [details]
Xorg log
Comment 4 andrew.m.mcmahon 2019-01-13 12:41:46 UTC
Created attachment 143086 [details]
dmesg -w
Comment 5 andrew.m.mcmahon 2019-01-13 13:12:00 UTC
I've used apitrace (DEBUGGER="apitrace32 trace" steam steam://rungameid/10500) to capture some trace files. 
I'm able to replay them using apitrace replay [file] so I hope others are too. 

I've uploaded a 7z archive containing a "bugged" trace and a "workaround" trace with their corresponding terminal output:
https://drive.google.com/file/d/1BAQFnrJqujU7dYGQTfheABTRjj-_a8Ys/view?usp=sharing

By complete coincidence the archive happens to be 666MB.
The bugged trace is several gigabytes in size whilst the workaround is a mere 90MB so there must be something funny happening there...
Comment 6 andrew.m.mcmahon 2019-01-13 13:53:27 UTC
One last comment before I leave it to the experts.

Another bug report with Unity 18.04:
https://steamcommunity.com/app/10500/discussions/0/3441214221460524307/

If anyone wants to go above and beyond the call of duty then I've uploaded some traces for Medieval 2 here:
https://drive.google.com/open?id=17LUb2EsS3oqYjEyZ-yxIB_C_DBnS0Wz8

I've used the same trick of disabling/enabling PBO surfaces.

Finally what exactly are PBO surfaces? Do I need them? What's the penalty for not using them?
The game seems to trace faster with them off than on.
Are the Linux ports by Feral a bit wonky and/or prone to strange behaviour - or are they generally decent?
Comment 7 andrew.m.mcmahon 2019-01-13 16:35:57 UTC
Created attachment 143088 [details]
mesa-git glxinfo

As a last ditch effort I thought I'd try the latest mesa/llvm that are provided by [llvm-git] and [mesa-git] unofficial repo's.

Unfortunately the issue still occurs.
Comment 8 andrew.m.mcmahon 2019-03-06 19:27:31 UTC
My system has changed somewhat since writing this bug report. 

As all Feral games on STEAM officially support either STEAMOS or Ubuntu; I thought I'd check out xubuntu 18.04 LTS - specifically: https://pastebin.com/f8cTGLSY

The same glitch appears with the current Mesa drivers provided by the distribution (18.2.8)

But using oibaf's ppa:
https://launchpad.net/~oibaf/+archive/ubuntu/graphics-drivers

Mesa related packages are updated to:
Mesa 19.1.0-devel (git-54522d0 2019-03-06 bionic-oibaf-ppa)

And I can no longer reproduce the issue! https://i.imgur.com/VhIylSp.jpg

As I've made no other changes other than switching Mesa packages I can only assume that this has been fixed by an update/commit recently.

Many thanks to everyone who works on Mesa.
In just a few years (since I last tried Debian) my R9 285 has gone from having no support whatever in Linux to being very capable indeed to the point where I no longer require Windows: https://imgur.com/a/keUM4VS https://imgur.com/a/awddkUg


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.