Browse Source
Merge pull request #2165 from ReinUsesLisp/unbind-tex
gl_rasterizer: Unbind textures but don't apply the gl_state
pull/15/merge
bunnei
7 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with
2 additions and
14 deletions
-
src/video_core/renderer_opengl/gl_rasterizer.cpp
-
src/video_core/renderer_opengl/gl_state.cpp
|
|
|
@ -739,22 +739,10 @@ void RasterizerOpenGL::DrawArrays() { |
|
|
|
state.Apply(); |
|
|
|
|
|
|
|
res_cache.SignalPreDrawCall(); |
|
|
|
|
|
|
|
// Execute draw call
|
|
|
|
params.DispatchDraw(); |
|
|
|
|
|
|
|
res_cache.SignalPostDrawCall(); |
|
|
|
|
|
|
|
// Disable scissor test
|
|
|
|
state.viewports[0].scissor.enabled = false; |
|
|
|
|
|
|
|
accelerate_draw = AccelDraw::Disabled; |
|
|
|
|
|
|
|
// Unbind textures for potential future use as framebuffer attachments
|
|
|
|
for (auto& texture_unit : state.texture_units) { |
|
|
|
texture_unit.Unbind(); |
|
|
|
} |
|
|
|
state.Apply(); |
|
|
|
} |
|
|
|
|
|
|
|
void RasterizerOpenGL::FlushAll() {} |
|
|
|
|
|
|
|
@ -461,7 +461,7 @@ void OpenGLState::ApplyTextures() const { |
|
|
|
|
|
|
|
if (has_delta) { |
|
|
|
glBindTextures(static_cast<GLuint>(first), static_cast<GLsizei>(last - first + 1), |
|
|
|
textures.data()); |
|
|
|
textures.data() + first); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@ -482,7 +482,7 @@ void OpenGLState::ApplySamplers() const { |
|
|
|
} |
|
|
|
if (has_delta) { |
|
|
|
glBindSamplers(static_cast<GLuint>(first), static_cast<GLsizei>(last - first + 1), |
|
|
|
samplers.data()); |
|
|
|
samplers.data() + first); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|