diff options
author | Subv <subv2112@gmail.com> | 2015-12-02 19:23:51 +0100 |
---|---|---|
committer | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2016-06-28 06:14:13 +0200 |
commit | f9be06b15f08cb559580e1d19b43158640a37d67 (patch) | |
tree | 9b20e75d7ef02e0feac2be0cb96843ebbb6814f8 /src/video_core/renderer_opengl/gl_rasterizer.h | |
parent | Merge pull request #1930 from scurest/superfluous-moves (diff) | |
download | yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar.gz yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar.bz2 yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar.lz yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar.xz yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.tar.zst yuzu-f9be06b15f08cb559580e1d19b43158640a37d67.zip |
Diffstat (limited to 'src/video_core/renderer_opengl/gl_rasterizer.h')
-rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.h b/src/video_core/renderer_opengl/gl_rasterizer.h index 42482df4b..193c10291 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.h +++ b/src/video_core/renderer_opengl/gl_rasterizer.h @@ -56,6 +56,8 @@ union PicaShaderConfig { const auto& regs = Pica::g_state.regs; + state.scissor_test_mode = regs.scissor_test.mode; + state.depthmap_enable = regs.depthmap_enable; state.alpha_test_func = regs.output_merger.alpha_test.enable ? @@ -172,6 +174,7 @@ union PicaShaderConfig { struct State { Pica::Regs::CompareFunc alpha_test_func; + Pica::Regs::ScissorMode scissor_test_mode; Pica::Regs::TextureConfig::TextureType texture0_type; std::array<TevStageConfigRaw, 6> tev_stages; u8 combiner_buffer_input; @@ -328,6 +331,10 @@ private: GLint alphatest_ref; GLfloat depth_scale; GLfloat depth_offset; + GLint scissor_right; + GLint scissor_bottom; + GLint scissor_left; + GLint scissor_top; alignas(16) GLvec3 fog_color; alignas(16) GLvec3 lighting_global_ambient; LightSrc light_src[8]; @@ -335,7 +342,7 @@ private: alignas(16) GLvec4 tev_combiner_buffer_color; }; - static_assert(sizeof(UniformData) == 0x3A0, "The size of the UniformData structure has changed, update the structure in the shader"); + static_assert(sizeof(UniformData) == 0x3B0, "The size of the UniformData structure has changed, update the structure in the shader"); static_assert(sizeof(UniformData) < 16384, "UniformData structure must be less than 16kb as per the OpenGL spec"); /// Sets the OpenGL shader in accordance with the current PICA register state @@ -384,6 +391,9 @@ private: /// Syncs the depth test states to match the PICA register void SyncDepthTest(); + /// Syncs the scissor test state to match the PICA register + void SyncScissorTest(); + /// Syncs the TEV combiner color buffer to match the PICA register void SyncCombinerColor(); |