Disable scissor before framebuffer blit

This commit is contained in:
Andy Adshead 2019-02-01 00:53:38 +00:00
commit 12af3900e5
2 changed files with 11 additions and 13 deletions

View file

@ -278,25 +278,22 @@ namespace Ryujinx.Graphics.Gal.OpenGL
{ {
forceUpdate = false; forceUpdate = false;
if (New.ScissorTestEnabled[Index] != Old.ScissorTestEnabled[Index]) if (New.ScissorTestEnabled[Index])
{ {
if (New.ScissorTestEnabled[Index]) // If there is only 1 scissor test geometry shaders are disables so the scissor test applies to all viewports
if (New.ScissorTestCount == 1)
{ {
// If there is only 1 scissor test geometry shaders are disables so the scissor test applies to all viewports GL.Enable(EnableCap.ScissorTest);
if (New.ScissorTestCount == 1)
{
GL.Enable(EnableCap.ScissorTest);
}
else
{
GL.Enable(IndexedEnableCap.ScissorTest, Index);
}
forceUpdate = true;
} }
else else
{ {
GL.Disable(IndexedEnableCap.ScissorTest, Index); GL.Enable(IndexedEnableCap.ScissorTest, Index);
} }
forceUpdate = true;
}
else
{
GL.Disable(IndexedEnableCap.ScissorTest, Index);
} }
if (New.ScissorTestEnabled[Index] && if (New.ScissorTestEnabled[Index] &&

View file

@ -366,6 +366,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
GL.Clear(ClearBufferMask.ColorBufferBit); GL.Clear(ClearBufferMask.ColorBufferBit);
GL.Disable(EnableCap.FramebufferSrgb); GL.Disable(EnableCap.FramebufferSrgb);
GL.Disable(EnableCap.ScissorTest);
GL.BlitFramebuffer( GL.BlitFramebuffer(
SrcX0, SrcX0,