oizma / angleproject

Automatically exported from code.google.com/p/angleproject
Other
0 stars 0 forks source link

Fullscreen support in Angle #96

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hi,

i created a patch to add fullscreen support to Angle. It comes in form of a new 
boolean EGLConfig attribute called EGL_D3D_FULLSCREEN_ANGLE which can be used 
for creating window surfaces.

I attached a patch for the core libraries (egl, gles2) as well as a patch for 
the samples included in the SVN trunk. The later extends the es-utils 
functionality by callbacks for keyboard and mouse events as well as a simple 
way to instantiate a fullscreen window. See the Hello_Triangle project for an 
example.

I also attached a specs file for the extension in the format requested by 
Khronos.

Please let me know if there's anything i should change so this can be included 
in upstream.

Ciao,
Mario

p.s.: I wanted to post this as a request for enhancement but that seems not to 
be configured in the issue tracker settings. 

Original issue reported on code.google.com by badlogicgames on 14 Dec 2010 at 2:38

Attachments:

GoogleCodeExporter commented 9 years ago
Small update to the es-utils/samples patch. My win32-api jedi powers are quite 
rusty...

Original comment by badlogicgames on 15 Dec 2010 at 12:39

Attachments:

GoogleCodeExporter commented 9 years ago
updated patches to revision 533

Original comment by badlogicgames on 17 Jan 2011 at 8:02

Attachments:

GoogleCodeExporter commented 9 years ago
Updated patches for revision 538. eglSwapInterval has no effect in full-screen 
mode. VSynch is off by default.

Original comment by badlogicgames on 24 Jan 2011 at 1:39

Attachments:

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Other OpenGL/EGL implementations don't have built-in support for a full-screen 
mode, so what is the purpose of adding this to ANGLE? With OpenGL you're 
supposed to use OS-specific functions to achieve full-screen mode (if 
available). For example on Windows you could use ChangeDisplaySettings(). It 
might be convenient to have ANGLE take care of it by using Direct3D's built-in 
support for switching to a full-screen mode, but I'd recommend against that 
because your code wouldn't be cross-platform compatible.

At the very least there should be an EGL extension specification to make an 
attempt at trying to standardize this. But other implementations are not likely 
to adopt this because of the OS-specific workarounds to create a full-screen 
mode.

Closing this issue. If you still think there's value in this please provide an 
EGL extension spec and a new patchset which applies to the current codebase.

Original comment by c...@chromium.org on 31 Jan 2014 at 7:16

GoogleCodeExporter commented 9 years ago
Back when i filed this issue in 2010, the purpose was to use ANGLE in 
stand-alone applications (much like what's being done in the samples). I 
experimented with NVIDIA 3D Vision support back then, for which fullscreen is a 
requirement.

Since 4 years have passed since then, i moved on. Perfectly fine to clean out 
the issue tracker and close this issue. I'm probably not capable of writing a 
bullet proof EGL extension spec :)

Original comment by badlogicgames on 31 Jan 2014 at 7:24

GoogleCodeExporter commented 9 years ago
Oh, looks like i actually provided an EGL extension specification in the 
original post, so at least there's that.

Not gonna waste anymore of your time, keep up the good work!

Original comment by badlogicgames on 31 Jan 2014 at 7:26