diff options
author | Rodolfo Bogado <rodolfoosvaldobogado@gmail.com> | 2018-11-08 02:27:47 +0100 |
---|---|---|
committer | Rodolfo Bogado <rodolfoosvaldobogado@gmail.com> | 2018-11-11 20:36:53 +0100 |
commit | 4e6c64bf8d3622c6296f70ab64018c8c85855b0b (patch) | |
tree | d5b7484ed81357808e471e2dbcf441b93b7082a3 /src/video_core/renderer_opengl/gl_state.cpp | |
parent | Try to fix problems with stencil test in some games, relax translation to opengl enums to avoid crashing and only generate logs of the errors. (diff) | |
download | yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar.gz yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar.bz2 yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar.lz yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar.xz yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.tar.zst yuzu-4e6c64bf8d3622c6296f70ab64018c8c85855b0b.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_state.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_state.cpp b/src/video_core/renderer_opengl/gl_state.cpp index 9517285e5..2635f2b0c 100644 --- a/src/video_core/renderer_opengl/gl_state.cpp +++ b/src/video_core/renderer_opengl/gl_state.cpp @@ -427,7 +427,7 @@ void OpenGLState::ApplySamplers() const { } } -void OpenGLState::Apply() const { +void OpenGLState::ApplyFramebufferState() const { // Framebuffer if (draw.read_framebuffer != cur_state.draw.read_framebuffer) { glBindFramebuffer(GL_READ_FRAMEBUFFER, draw.read_framebuffer); @@ -435,7 +435,9 @@ void OpenGLState::Apply() const { if (draw.draw_framebuffer != cur_state.draw.draw_framebuffer) { glBindFramebuffer(GL_DRAW_FRAMEBUFFER, draw.draw_framebuffer); } +} +void OpenGLState::ApplyVertexBufferState() const { // Vertex array if (draw.vertex_array != cur_state.draw.vertex_array) { glBindVertexArray(draw.vertex_array); @@ -445,7 +447,11 @@ void OpenGLState::Apply() const { if (draw.vertex_buffer != cur_state.draw.vertex_buffer) { glBindBuffer(GL_ARRAY_BUFFER, draw.vertex_buffer); } +} +void OpenGLState::Apply() const { + ApplyFramebufferState(); + ApplyVertexBufferState(); // Uniform buffer if (draw.uniform_buffer != cur_state.draw.uniform_buffer) { glBindBuffer(GL_UNIFORM_BUFFER, draw.uniform_buffer); |