Просмотр исходного кода

gl_state: Skip null texture binds

glBindTextureUnit doesn't support null textures. Skip binding these.
ReinUsesLisp 6 лет назад
Родитель
Сommit
e3d7334be9
1 измененных файлов с 5 добавлено и 1 удалено
  1. 5 1
      src/video_core/renderer_opengl/gl_state.cpp

+ 5 - 1
src/video_core/renderer_opengl/gl_state.cpp

@@ -420,7 +420,11 @@ void OpenGLState::ApplyTextures() {
     const std::size_t size = std::size(textures);
     const std::size_t size = std::size(textures);
     for (std::size_t i = 0; i < size; ++i) {
     for (std::size_t i = 0; i < size; ++i) {
         if (UpdateValue(cur_state.textures[i], textures[i])) {
         if (UpdateValue(cur_state.textures[i], textures[i])) {
-            glBindTextureUnit(static_cast<GLuint>(i), textures[i]);
+            // BindTextureUnit doesn't support binding null textures, skip those binds.
+            // TODO(Rodrigo): Stop using null textures
+            if (textures[i] != 0) {
+                glBindTextureUnit(static_cast<GLuint>(i), textures[i]);
+            }
         }
         }
     }
     }
 }
 }