Matteo Bruni : wined3d: Dirtify vertex shader on transformed <-> untransformed transitions.

Alexandre Julliard julliard at wine.codeweavers.com
Wed May 20 10:04:11 CDT 2015


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

Author: Matteo Bruni <mbruni at codeweavers.com>
Date:   Tue May 19 23:32:31 2015 +0200

wined3d: Dirtify vertex shader on transformed <-> untransformed transitions.

---

 dlls/wined3d/glsl_shader.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
index 0a130e1..c85508c 100644
--- a/dlls/wined3d/glsl_shader.c
+++ b/dlls/wined3d/glsl_shader.c
@@ -7682,6 +7682,12 @@ static void glsl_vertex_pipe_vdecl(struct wined3d_context *context,
 
     context->last_was_rhw = transformed;
 
+    /* If the vertex declaration contains a transformed position attribute,
+     * the draw uses the fixed function vertex pipeline regardless of any
+     * vertex shader set by the application. */
+    if (transformed != wasrhw)
+        context->shader_update_mask |= 1 << WINED3D_SHADER_TYPE_VERTEX;
+
     if (!use_vs(state))
     {
         if (context->last_was_vshader)




More information about the wine-cvs mailing list