wined3d: Use CTXUSAGE_RESOURCELOAD for ActivateContext() in color_fill_fbo().

CTXUSAGE_CLEAR will apply the FBO state in a later patch.
This commit is contained in:
H. Verbeet 2008-08-03 21:17:57 +02:00 committed by Alexandre Julliard
parent f037eb8696
commit d28a310f92
1 changed files with 6 additions and 2 deletions

View File

@ -6182,7 +6182,7 @@ static void color_fill_fbo(IWineD3DDevice *iface, IWineD3DSurface *surface, CONS
TRACE("Surface %p is onscreen\n", surface); TRACE("Surface %p is onscreen\n", surface);
ActivateContext(This, surface, CTXUSAGE_CLEAR); ActivateContext(This, surface, CTXUSAGE_RESOURCELOAD);
ENTER_GL(); ENTER_GL();
GL_EXTCALL(glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0)); GL_EXTCALL(glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0));
buffer = surface_get_gl_buffer(surface, swapchain); buffer = surface_get_gl_buffer(surface, swapchain);
@ -6191,7 +6191,7 @@ static void color_fill_fbo(IWineD3DDevice *iface, IWineD3DSurface *surface, CONS
} else { } else {
TRACE("Surface %p is offscreen\n", surface); TRACE("Surface %p is offscreen\n", surface);
ActivateContext(This, This->lastActiveRenderTarget, CTXUSAGE_CLEAR); ActivateContext(This, This->lastActiveRenderTarget, CTXUSAGE_RESOURCELOAD);
ENTER_GL(); ENTER_GL();
bind_fbo(iface, GL_FRAMEBUFFER_EXT, &This->dst_fbo); bind_fbo(iface, GL_FRAMEBUFFER_EXT, &This->dst_fbo);
attach_surface_fbo(This, GL_FRAMEBUFFER_EXT, 0, surface); attach_surface_fbo(This, GL_FRAMEBUFFER_EXT, 0, surface);
@ -6211,6 +6211,10 @@ static void color_fill_fbo(IWineD3DDevice *iface, IWineD3DSurface *surface, CONS
} else { } else {
glDisable(GL_SCISSOR_TEST); glDisable(GL_SCISSOR_TEST);
} }
IWineD3DDeviceImpl_MarkStateDirty(This, STATE_RENDER(WINED3DRS_SCISSORTESTENABLE));
glDisable(GL_BLEND);
IWineD3DDeviceImpl_MarkStateDirty(This, STATE_RENDER(WINED3DRS_ALPHABLENDENABLE));
glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE); glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
IWineD3DDeviceImpl_MarkStateDirty(This, STATE_RENDER(WINED3DRS_COLORWRITEENABLE)); IWineD3DDeviceImpl_MarkStateDirty(This, STATE_RENDER(WINED3DRS_COLORWRITEENABLE));