Module: wine Branch: master Commit: 7b5bf3d4d65935cd8d4deb2ddffff10e7f4358bf URL: http://source.winehq.org/git/wine.git/?a=commit;h=7b5bf3d4d65935cd8d4deb2ddf...
Author: Stefan Dösinger stefan@codeweavers.com Date: Fri Nov 28 11:16:43 2014 +0100
wined3d: Update fragment program constants when switching from arb ffp draws.
---
dlls/wined3d/arb_program_shader.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader.c index f5e614e..cf27d1f 100644 --- a/dlls/wined3d/arb_program_shader.c +++ b/dlls/wined3d/arb_program_shader.c @@ -6536,7 +6536,11 @@ static void fragment_prog_arbfp(struct wined3d_context *context, const struct wi state_arb_specularenable(context, state, STATE_RENDER(WINED3D_RS_SPECULARENABLE)); } context->last_was_pshader = FALSE; - } else { + } + else if (!context->last_was_pshader) + { + if (device->shader_backend == &arb_program_shader_backend) + context->constant_update_mask |= WINED3D_SHADER_CONST_PS_F; context->last_was_pshader = TRUE; }