Add a EGL renderer (via ANGLE) for Windows
This is a merge request to add an EGL renderer (via Google's ANGLE project) for the Windows GDK backend, for 3.22.x, as a part of the attempt to resolve issue #105. It is not totally ready, as the build system needs to be updated for this, and will also impose more dependency requirements for this as well. Please see the commit message on the current state of this work.
Similar work would also be done for the master/4.x branch once I am more confident of the work being done here, as the master branch is a bit too volatile for me to attempt to carry out the work there.
The most notable issues that needs to be resolved for this code are the following: -Performance-wise, the code runs quite a bit slower on some systems but is more-or-less on-par with the Desktop OpenGL counterparts on others. This may not be resolved in this commit/MR, but in another, since this may eventually touch code in GDK proper. -No updates to the build systems for this yet, since this is WIP--this is likely to be done in a documented option (and a compile-time macro for the "gdk3-win32" Visual Studio project). This is likely not enabled by default, at least for GTK+-3.22.x.
I think we could try to do the fallback mechanisms as things become clearer (such as LRN's observations that are pointed out in issue #105.
With blessings, thank you, and cheers!