diff --git a/Source/Core/VideoBackends/OGL/FramebufferManager.cpp b/Source/Core/VideoBackends/OGL/FramebufferManager.cpp index c458b79dc6..1089884b96 100644 --- a/Source/Core/VideoBackends/OGL/FramebufferManager.cpp +++ b/Source/Core/VideoBackends/OGL/FramebufferManager.cpp @@ -373,6 +373,8 @@ void FramebufferManager::ReinterpretPixelData(unsigned int convtype) { g_renderer->ResetAPIState(); + OpenGL_BindAttributelessVAO(); + GLuint src_texture = 0; // We aren't allowed to render and sample the same texture in one draw call, diff --git a/Source/Core/VideoBackends/OGL/TextureConverter.cpp b/Source/Core/VideoBackends/OGL/TextureConverter.cpp index 8753b58e8a..6384991ceb 100644 --- a/Source/Core/VideoBackends/OGL/TextureConverter.cpp +++ b/Source/Core/VideoBackends/OGL/TextureConverter.cpp @@ -222,6 +222,8 @@ static void EncodeToRamUsingShader(GLuint srcTexture, // attach render buffer as color destination FramebufferManager::SetFramebuffer(s_texConvFrameBuffer[0]); + OpenGL_BindAttributelessVAO(); + // set source texture glActiveTexture(GL_TEXTURE0+9); glBindTexture(GL_TEXTURE_2D_ARRAY, srcTexture); @@ -362,6 +364,8 @@ void DecodeToTexture(u32 xfbAddr, int srcWidth, int srcHeight, GLuint destTextur g_renderer->ResetAPIState(); // reset any game specific settings + OpenGL_BindAttributelessVAO(); + // switch to texture converter frame buffer // attach destTexture as color destination FramebufferManager::SetFramebuffer(s_texConvFrameBuffer[1]);