From 039b2930928c34c011fcc236d7f8c32599077ad0 Mon Sep 17 00:00:00 2001 From: wwylele Date: Fri, 5 May 2017 15:29:35 +0300 Subject: pica: shader_dirty if texture2 coord changed --- src/video_core/renderer_opengl/gl_rasterizer.cpp | 4 ++++ src/video_core/renderer_opengl/gl_shader_gen.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'src/video_core/renderer_opengl') diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index a47307099..12ac9bbd9 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -402,6 +402,10 @@ void RasterizerOpenGL::NotifyPicaRegisterChanged(u32 id) { SyncLogicOp(); break; + case PICA_REG_INDEX(texturing.main_config): + shader_dirty = true; + break; + // Texture 0 type case PICA_REG_INDEX(texturing.texture0.type): shader_dirty = true; diff --git a/src/video_core/renderer_opengl/gl_shader_gen.cpp b/src/video_core/renderer_opengl/gl_shader_gen.cpp index 5077e38b7..7b44dade8 100644 --- a/src/video_core/renderer_opengl/gl_shader_gen.cpp +++ b/src/video_core/renderer_opengl/gl_shader_gen.cpp @@ -40,7 +40,7 @@ PicaShaderConfig PicaShaderConfig::BuildFromRegs(const Pica::Regs& regs) { state.texture0_type = regs.texturing.texture0.type; - state.texture2_use_coord1 = regs.texturing.texture2_use_coord1 != 0; + state.texture2_use_coord1 = regs.texturing.main_config.texture2_use_coord1 != 0; // Copy relevant tev stages fields. // We don't sync const_color here because of the high variance, it is a -- cgit v1.2.3