Module: wine Branch: master Commit: 409cda0ac26177a8edd7b1afccb951571ca55695 URL: http://source.winehq.org/git/wine.git/?a=commit;h=409cda0ac26177a8edd7b1afcc...
Author: Matteo Bruni mbruni@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)