Module: wine Branch: master Commit: c70e17e8060c4537523d767b0fffa4ec707487b5 URL: http://source.winehq.org/git/wine.git/?a=commit;h=c70e17e8060c4537523d767b0f...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Tue Jan 17 21:13:31 2012 +0100
wined3d: Reset the changed float shader constants in stateblock_init_default_state().
The GLSL constant tracking needs these to be correct.
---
dlls/wined3d/stateblock.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/dlls/wined3d/stateblock.c b/dlls/wined3d/stateblock.c index 9a109ed..59bb841 100644 --- a/dlls/wined3d/stateblock.c +++ b/dlls/wined3d/stateblock.c @@ -1107,6 +1107,9 @@ void stateblock_init_default_state(struct wined3d_stateblock *stateblock)
stateblock->blockType = WINED3DSBT_INIT;
+ memset(stateblock->changed.pixelShaderConstantsF, 0, device->d3d_pshader_constantF * sizeof(BOOL)); + memset(stateblock->changed.vertexShaderConstantsF, 0, device->d3d_vshader_constantF * sizeof(BOOL)); + /* Set some of the defaults for lights, transforms etc */ memcpy(&state->transforms[WINED3D_TS_PROJECTION], identity, sizeof(identity)); memcpy(&state->transforms[WINED3D_TS_VIEW], identity, sizeof(identity));