[Bug 43761] World of Warcraft d3d11 textures rendering regression and other... Wine Staging 2.17

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Sep 26 12:02:04 CDT 2017


https://bugs.winehq.org/show_bug.cgi?id=43761

--- Comment #6 from Michael Müller <michael at fds-team.de> ---
Can you add your full glxinfo output as attachment? For me it seems like a
driver bug. The interesting part from the log is:

fixme:d3d_shader:print_glsl_info_log Info log received from GLSL shader #241:
fixme:d3d_shader:print_glsl_info_log     error: definitions of interface block
`shader_in_out' do not match

The reason for the difference is:

vertex shader:
---------
out shader_in_out {
    vec4 reg0;
    vec4 reg1;
    vec4 reg2;
    vec4 reg3;
[...]
---------

pixel shader:
---------
in shader_in_out {
    vec4 reg0;
    centroid vec4 reg1;
    centroid vec4 reg2;
    centroid vec4 reg3;
[...]
---------

This should be valid though according to the GLSL 4.4 spec:
https://www.khronos.org/registry/OpenGL/specs/gl/GLSLangSpec.4.40.pdf

The statement on page 50 says:
--------
For this interface, the last active shader stage output variables and fragment
shader input variables of the same name must match in type and qualification,
with a few exceptions: The storage qualifiers must, of course, differ (one is
in and one is out). Also, interpolation qualification (e.g., flat) and
auxiliary qualification (e.g. centroid) may differ. These mismatches are
allowed between any pair of stages. When interpolation or auxiliary qualifiers
do not match, those provided in the fragment shader supersede those provided in
previous stages.
----

The excerpt explicitly states that the auxiliary qualifier centroid can differ.
Unless you manually told Mesa to fake a GLSL version of 4.4 or newer, this is a
bug in their driver. Try to update Mesa to a more recent version, otherwise you
will need to report a bug in their bug tracker.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.


More information about the wine-bugs mailing list