Bug 105494

Summary: UT2004 cube map reflection problem
Product: Mesa Reporter: almos <aaalmosss>
Component: Mesa coreAssignee: mesa-dev
Status: REOPENED --- QA Contact: mesa-dev
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: shot42.png
shot43.png

Description almos 2018-03-13 22:55:39 UTC
In the map dm-antalus there is a small pond and the surrounding area is reflected on its surface (this map is included in the demo version btw). Part of this reflection is missing, depending on the viewing angle (see the screenshots). It looks like a clipping issue. Other cube map reflections in the game are also affected, but this is where it's the most prominent.

As far as I can remember this bug wasn't present a few years ago when I last played this game (mesa was around version 7-8 back then), so I assumed this was a regression. However, the earliest version of mesa that I could compile with the oldest llvm in my distribution is 11.0, and that one already has this bug. I'll try to get an earlier llvm for mesa 10 and 9.

Drivers tested: radeonsi, llvmpipe.
Comment 1 almos 2018-03-13 22:56:26 UTC
Created attachment 138081 [details]
shot42.png
Comment 2 almos 2018-03-13 22:57:01 UTC
Created attachment 138082 [details]
shot43.png
Comment 3 Tapani Pälli 2018-03-19 07:11:37 UTC
commit f02f1ad13fa4123986d17a5d04b0e2831c3a7091
Author: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Date:   Wed Mar 14 09:46:33 2018 +0100

    Revert "mesa: do not trigger _NEW_TEXTURE_STATE in glActiveTexture()"
    
    This reverts commit f314a532fdc7af8381586144d2631d9968331f05.
    
    This appears to introduce some blinking textures in UT2004. Not
    sure exactly what's the root cause because we don't have much
    information about the issue.
    
    Anyway, this was just a micro optimization that actually breaks,
    at least, one app almost one year later.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105436
    Cc: <mesa-stable@lists.freedesktop.org>
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Comment 4 almos 2018-03-19 19:29:41 UTC
Nope. This issue is not the same as #105436
Comment 5 Denis 2018-04-25 11:01:05 UTC
hello. I can confirm the same behavior with a pond and on i965 driver (on KBL and SNB cpu's).

I also tried to find mesa version without the issue, but I couldn't. Tested on 18.1.0 and 13.0.0. mesa versions.
upd - the hole game has issues with shadows (it can be visible on maps Idoma, Curse4, Grendelkeep, Icetomb) - when you are changing camera corner, shadows don't disappear/change smoothly, there is a border between "old view" with shadow, and new (without) appears (I didn't face with this behavior on windows OS and nvidia GPU/drivers).

And the last thing, "commit f02f1ad13fa4123986d17a5d04b0e2831c3a7091" didn't fix this issue, so they are different.
Comment 6 Timothy Arceri 2018-05-11 04:23:15 UTC
Could one of you create an apitrace of the problem and upload it to somewhere like google drive. If the problem exists with i965 than it will be far easier to do a git bisect using that driver.
Comment 7 almos 2018-05-13 13:47:33 UTC
Here's a trace. I tried to capture the switch between showing only the top half or the bottom half of the reflection, but it ran at 1fps even with minimum graphics settings and capturing to a ramdisk.

https://drive.google.com/open?id=1Labnt8OuvPVSsxEUHvJaQ6YbAdJicaiD

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.