wined3d: Make sure the color buffer is not modified by depth_blt().
This commit is contained in:
parent
06b64a1a2e
commit
45b531fcea
|
@ -760,15 +760,16 @@ static void depth_blt(IWineD3DDevice *iface, GLuint texture) {
|
||||||
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
|
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
|
||||||
GLint old_binding = 0;
|
GLint old_binding = 0;
|
||||||
|
|
||||||
glPushAttrib(GL_ENABLE_BIT | GL_DEPTH_BUFFER_BIT);
|
glPushAttrib(GL_ENABLE_BIT | GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
|
||||||
|
|
||||||
glDisable(GL_CULL_FACE);
|
glDisable(GL_CULL_FACE);
|
||||||
glDisable(GL_BLEND);
|
glEnable(GL_BLEND);
|
||||||
glDisable(GL_ALPHA_TEST);
|
glDisable(GL_ALPHA_TEST);
|
||||||
glDisable(GL_SCISSOR_TEST);
|
glDisable(GL_SCISSOR_TEST);
|
||||||
glDisable(GL_STENCIL_TEST);
|
glDisable(GL_STENCIL_TEST);
|
||||||
glEnable(GL_DEPTH_TEST);
|
glEnable(GL_DEPTH_TEST);
|
||||||
glDepthFunc(GL_ALWAYS);
|
glDepthFunc(GL_ALWAYS);
|
||||||
|
glBlendFunc(GL_ZERO, GL_ONE);
|
||||||
|
|
||||||
GL_EXTCALL(glActiveTextureARB(GL_TEXTURE0_ARB));
|
GL_EXTCALL(glActiveTextureARB(GL_TEXTURE0_ARB));
|
||||||
glGetIntegerv(GL_TEXTURE_BINDING_2D, &old_binding);
|
glGetIntegerv(GL_TEXTURE_BINDING_2D, &old_binding);
|
||||||
|
|
Loading…
Reference in New Issue