Disable scissor before framebuffer blit
This commit is contained in:
parent
3ac4a49a98
commit
12af3900e5
2 changed files with 11 additions and 13 deletions
|
@ -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] &&
|
||||||
|
|
|
@ -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,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue