mirror of
https://github.com/Ryujinx/Opentk.git
synced 2024-12-23 14:55:34 +00:00
Fallback to desktop context if embedded fails
Starting with OpenGL 4.1 and the ARB_ES2_compatibility extension, desktop contexts can execute OpenGL|ES code. This fallback will allow platforms to execute OpenGL|ES code even if EGL is not available (e.g. Nvidia/Windows).
This commit is contained in:
parent
94c02e827a
commit
80845315db
|
@ -23,8 +23,8 @@ namespace Examples.Tutorial
|
|||
{
|
||||
#region Constructor
|
||||
|
||||
public SimpleES20Window()
|
||||
: base(800, 600, new GraphicsMode(16, 16), "", GameWindowFlags.Default, DisplayDevice.Default, 2, 0, GraphicsContextFlags.Embedded)
|
||||
public SimpleES20Window(GraphicsContextFlags flags)
|
||||
: base(800, 600, new GraphicsMode(16, 16), "", GameWindowFlags.Default, DisplayDevice.Default, 2, 0, flags)
|
||||
{ }
|
||||
|
||||
#endregion
|
||||
|
@ -108,10 +108,25 @@ namespace Examples.Tutorial
|
|||
[STAThread]
|
||||
public static void Main()
|
||||
{
|
||||
using (SimpleES20Window example = new SimpleES20Window())
|
||||
SimpleES20Window example;
|
||||
try
|
||||
{
|
||||
Utilities.SetWindowTitle(example);
|
||||
example.Run(30.0, 0.0);
|
||||
example = new SimpleES20Window(GraphicsContextFlags.Default);
|
||||
|
||||
//example = new SimpleES20Window(GraphicsContextFlags.Embedded);
|
||||
}
|
||||
catch
|
||||
{
|
||||
example = new SimpleES20Window(GraphicsContextFlags.Default);
|
||||
}
|
||||
|
||||
if (example != null)
|
||||
{
|
||||
using (example)
|
||||
{
|
||||
Utilities.SetWindowTitle(example);
|
||||
example.Run(30.0, 0.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue