From 99c2194348e22da65cda235ecbfde3e280aa185c Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 22 Dec 2017 16:17:02 +0000 Subject: [PATCH] Don't re-type textures if they are bound to the wrong target in GL --- renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp b/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp index a039ac47c..9277ffc29 100644 --- a/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp +++ b/renderdoc/driver/gl/wrappers/gl_texture_funcs.cpp @@ -224,8 +224,11 @@ bool WrappedOpenGL::Serialise_glBindTexture(SerialiserType &ser, GLenum target, if(IsLoading(m_State)) { - m_Textures[GetResourceManager()->GetID(texture)].curType = TextureTarget(target); - m_Textures[GetResourceManager()->GetID(texture)].creationFlags |= TextureCategory::ShaderRead; + TextureData &tex = m_Textures[GetResourceManager()->GetID(texture)]; + // only set texture type if we don't have one. Otherwise refuse to re-type. + if(tex.curType == eGL_NONE) + tex.curType = TextureTarget(target); + tex.creationFlags |= TextureCategory::ShaderRead; } }