Matteo Bruni : wined3d: Don't read texcoord attributes unless necessary.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Apr 1 10:04:30 CDT 2016


Module: wine
Branch: master
Commit: 6654af1017ab15e825fc7e1959ae47f20af8478f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=6654af1017ab15e825fc7e1959ae47f20af8478f

Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Thu Mar 31 19:50:59 2016 +0200

wined3d: Don't read texcoord attributes unless necessary.

Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wined3d/glsl_shader.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 3127b75..dbb0956 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -6149,10 +6149,9 @@ static GLuint shader_glsl_generate_ffp_vertex_shader(struct shader_glsl_priv *pr
     for (i = 0; i < MAX_TEXTURES; ++i)
     {
         unsigned int coord_idx = settings->texgen[i] & 0x0000ffff;
-        if ((settings->texgen[i] & 0xffff0000) == WINED3DTSS_TCI_PASSTHRU)
-        {
+        if ((settings->texgen[i] & 0xffff0000) == WINED3DTSS_TCI_PASSTHRU
+                && settings->texcoords & (1u << i))
             shader_addline(buffer, "vec4 ffp_attrib_texcoord%u = vs_in%u;\n", i, coord_idx + WINED3D_FFP_TEXCOORD0);
-        }
     }
 
     shader_addline(buffer, "ffp_attrib_blendweight[%u] = 1.0;\n", settings->vertexblends);




More information about the wine-cvs mailing list