diff options
author | wwylele <wwylele@gmail.com> | 2017-08-17 09:46:59 +0200 |
---|---|---|
committer | wwylele <wwylele@gmail.com> | 2017-08-21 07:03:07 +0200 |
commit | 1eca380886b5028e027f1380c04f221ac94ed47d (patch) | |
tree | 2e6b15be4c3fa915f59c80f04395cad09859394c /src/video_core/renderer_opengl/gl_state.cpp | |
parent | Merge pull request #2872 from wwylele/sw-geo-factor (diff) | |
download | yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar.gz yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar.bz2 yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar.lz yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar.xz yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.tar.zst yuzu-1eca380886b5028e027f1380c04f221ac94ed47d.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_state.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_state.cpp b/src/video_core/renderer_opengl/gl_state.cpp index bc9d34b84..06a905766 100644 --- a/src/video_core/renderer_opengl/gl_state.cpp +++ b/src/video_core/renderer_opengl/gl_state.cpp @@ -68,6 +68,8 @@ OpenGLState::OpenGLState() { draw.vertex_buffer = 0; draw.uniform_buffer = 0; draw.shader_program = 0; + + clip_distance = {}; } void OpenGLState::Apply() const { @@ -261,6 +263,17 @@ void OpenGLState::Apply() const { glUseProgram(draw.shader_program); } + // Clip distance + for (size_t i = 0; i < clip_distance.size(); ++i) { + if (clip_distance[i] != cur_state.clip_distance[i]) { + if (clip_distance[i]) { + glEnable(GL_CLIP_DISTANCE0 + i); + } else { + glDisable(GL_CLIP_DISTANCE0 + i); + } + } + } + cur_state = *this; } |