Facilitate OpenGL debug logging via GUI (#1373)
* Allow printing GL Debug logs with GUI options Improve GL Debugger Make the new option persistent Address gdkchan's comments - Rename enum to GraphicsDebugLevel - Move Debugger Init to Renderer Init - Fix formatting * nit: newlines
This commit is contained in:
parent
1457ab5456
commit
f0c91d9efb
10 changed files with 231 additions and 44 deletions
|
@ -5,6 +5,7 @@ using OpenTK.Graphics;
|
|||
using OpenTK.Graphics.OpenGL;
|
||||
using OpenTK.Input;
|
||||
using Ryujinx.Configuration;
|
||||
using Ryujinx.Common.Configuration;
|
||||
using Ryujinx.Common.Configuration.Hid;
|
||||
using Ryujinx.Graphics.OpenGL;
|
||||
using Ryujinx.HLE;
|
||||
|
@ -47,10 +48,14 @@ namespace Ryujinx.Ui
|
|||
|
||||
private HotkeyButtons _prevHotkeyButtons;
|
||||
|
||||
public GlRenderer(Switch device)
|
||||
private GraphicsDebugLevel _glLogLevel;
|
||||
|
||||
public GlRenderer(Switch device, GraphicsDebugLevel glLogLevel)
|
||||
: base (GetGraphicsMode(),
|
||||
3, 3,
|
||||
GraphicsContextFlags.ForwardCompatible)
|
||||
glLogLevel == GraphicsDebugLevel.None
|
||||
? GraphicsContextFlags.ForwardCompatible
|
||||
: GraphicsContextFlags.ForwardCompatible | GraphicsContextFlags.Debug)
|
||||
{
|
||||
WaitEvent = new ManualResetEvent(false);
|
||||
|
||||
|
@ -73,6 +78,8 @@ namespace Ryujinx.Ui
|
|||
| EventMask.KeyReleaseMask));
|
||||
|
||||
this.Shown += Renderer_Shown;
|
||||
|
||||
_glLogLevel = glLogLevel;
|
||||
}
|
||||
|
||||
private static GraphicsMode GetGraphicsMode()
|
||||
|
@ -304,7 +311,7 @@ namespace Ryujinx.Ui
|
|||
// First take exclusivity on the OpenGL context.
|
||||
GraphicsContext.MakeCurrent(WindowInfo);
|
||||
|
||||
_renderer.Initialize();
|
||||
_renderer.Initialize(_glLogLevel);
|
||||
|
||||
// Make sure the first frame is not transparent.
|
||||
GL.ClearColor(OpenTK.Color.Black);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue