Created attachment 126603 [details] Viewport corruption Unreal Engine 4.13.1 editor shows corrupted preview viewports when at least one of the following post-processing effects is active in a viewport: * Motion Blur * Tonemapper A screenshot of a viewport segment is attached. When both effects are turned off, viewports appear to render correctly. Graphics card: AMD TONGA chipset (Radeo R9 380) Mesa version: 12.1~git1600917222200.073129c~x~padoka0 on Ubuntu 16.04 with Padoka PPA glxinfo: OpenGL core profile version string: 4.3 (Core Profile) Mesa 12.1.0-devel - padoka PPA OpenGL version string: 3.0 Mesa 12.1.0-devel - padoka PPA OpenGL ES profile version string: OpenGL ES 3.1 Mesa 12.1.0-devel - padoka PPA
Hi Markus, can you provide an apitrace that can reproduce the corruption?
(In reply to Nicolai Hähnle from comment #1) > Hi Markus, can you provide an apitrace that can reproduce the corruption? Hi Nicolai, I'm not familiar with debugging Mesa. Could you please provide a link to documentation on how I can obtain the information you need?
Use this tool: https://github.com/apitrace/apitrace to record a session that shows the problem. Once installed, you basically just run `apitrace trace <program under trace>`. The documentation linked to in the readme is generally pretty good.
Created attachment 127627 [details] API trace
(In reply to Nicolai Hähnle from comment #3) > Use this tool: https://github.com/apitrace/apitrace to record a session that > shows the problem. Once installed, you basically just run `apitrace trace > <program under trace>`. The documentation linked to in the readme is > generally pretty good. Hi Nicolai, an API trace is now attached. The trace was created with Mesa version 13.1~git161022230600.7b7eb71~x~padoka0 where the issue is still present. The major part of the trace probably consists of the editor starting up, so the issue itself should only be captured in the seconds prior to the editor starting to shut down.
A shader program fails to link, see below. This may be an Unreal Engine (editor) bug, reassigning to the GLSL compiler for now. 839119 @4 glLinkProgram(program = 3018) 839119: warning: link failed 839119: warning: error: vertex shader output `out_TEXCOORD0' specifies noperspective interpolation qualifier, but fragment shader input specifies no interpolation qualifier Mesa: User error: GL_INVALID_OPERATION in glUseProgram(program 3018 not linked) [more errors]
AFAIK this error is valid for GLSL version < 440, which GLSL version is this shader written against?
strings UE4Editor.1.trace|grep '#version'|sort -u only yields "#version 430".
A game "Refunct" also suffers from this when "post process" setting is set to "ultra". Since this limitation is rather artificial, and multiple released programs are affected, could it be demoted to a warning?
Any news on this?
Possibly related: https://github.com/EpicGames/UnrealEngine/pull/4080/files (engine side fix) While an engine fix is always desireable .. "for the future", I agree that if this could be turned into a warning on the driver side it would be nice.
Created attachment 135622 [details] [review] wokaround since we now have another case (Observer_) here's a workaround suggestion.
Created attachment 135659 [details] [review] workaround sorry .. there was some issues, fixed workaround
workaround pushed to Mesa master --- 8< --- commit faccbaf3faf9a7cdcda3e4032fafd0f6064459bd Author: Tapani Pälli <tapani.palli@intel.com> Date: Fri Nov 24 07:46:07 2017 +0200 mesa: add AllowGLSLCrossStageInterpolationMismatch workaround This fixes issues seen with certain versions of Unreal Engine 4 editor and games built with that using GLSL 4.30. v2: add driinfo_gallium change (Emil Velikov) Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97852 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=103801 Acked-by: Andres Gomez <agomez@igalia.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
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.