diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-12-26 06:20:08 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-02-28 21:26:26 +0100 |
commit | 1eee891f6e73423a9aa6147f980be5aea799e7ce (patch) | |
tree | 24a487713df08f8768f4f9d249f291cf962de02f /src/video_core/renderer_opengl/gl_rasterizer.cpp | |
parent | gl_state: Remove rasterizer disable tracking (diff) | |
download | yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar.gz yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar.bz2 yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar.lz yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar.xz yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.tar.zst yuzu-1eee891f6e73423a9aa6147f980be5aea799e7ce.zip |
Diffstat (limited to '')
-rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index cb3c81398..f4efddcc0 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -969,16 +969,10 @@ void RasterizerOpenGL::SyncDepthClamp() { void RasterizerOpenGL::SyncClipEnabled( const std::array<bool, Maxwell::Regs::NumClipDistances>& clip_mask) { - const auto& regs = system.GPU().Maxwell3D().regs; - const std::array<bool, Maxwell::Regs::NumClipDistances> reg_state{ - regs.clip_distance_enabled.c0 != 0, regs.clip_distance_enabled.c1 != 0, - regs.clip_distance_enabled.c2 != 0, regs.clip_distance_enabled.c3 != 0, - regs.clip_distance_enabled.c4 != 0, regs.clip_distance_enabled.c5 != 0, - regs.clip_distance_enabled.c6 != 0, regs.clip_distance_enabled.c7 != 0}; - for (std::size_t i = 0; i < Maxwell::Regs::NumClipDistances; ++i) { - state.clip_distance[i] = reg_state[i] && clip_mask[i]; + oglEnable(static_cast<GLenum>(GL_CLIP_DISTANCE0 + i), + clip_mask[i] && ((regs.clip_distance_enabled >> i) & 1)); } } |