[3/4] wined3d: Make sure render target textures aren't bound when we start drawing

H. Verbeet hverbeet at gmail.com
Sat Nov 18 10:08:03 CST 2006


Drawing to a render target while that same render target is bound to a
texture unit is problematic.

Changelog:
  - Make sure render target textures aren't bound anymore when we start drawing.
-------------- next part --------------
---

 dlls/wined3d/device.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 14dc801..1815e26 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -7021,6 +7021,7 @@ static void set_depth_stencil_fbo(IWineD
         glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
         glTexParameteri(target, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
         glTexParameteri(target, GL_DEPTH_TEXTURE_MODE_ARB, GL_LUMINANCE);
+        glBindTexture(target, 0);
 
         GL_EXTCALL(glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_DEPTH_ATTACHMENT_EXT, texttarget, depth_stencil_impl->glDescription.textureName, 0));
         checkGLcall("glFramebufferTexture2DEXT()");
@@ -7051,6 +7052,7 @@ static void set_render_target_fbo(IWineD
         glBindTexture(target, rtimpl->glDescription.textureName);
         glTexParameteri(target, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
         glTexParameteri(target, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
+        glBindTexture(target, 0);
 
         GL_EXTCALL(glFramebufferTexture2DEXT(GL_FRAMEBUFFER_EXT, GL_COLOR_ATTACHMENT0_EXT, texttarget, rtimpl->glDescription.textureName, 0));
         checkGLcall("glFramebufferTexture2DEXT()");


More information about the wine-patches mailing list