author Sam Lantinga <slouken@libsdl.org>
Tue, 10 Jan 2017 08:54:33 -0800
changeset 10806 36f40b8cc979
parent 10557 71d4148e32de
child 11526 d0748685683f
permissions -rw-r--r--
Fixed bugs 2570, 3145, improved OpenGL ES context support on Windows and X11

Mark Callow

The attached patch does the following for the X11 and Windows platforms, the only ones where SDL attempts to use context_create_es_profile:

- Adds SDL_HINT_OPENGL_ES_DRIVER by which the application can
say to use the OpenGL ES driver & EGL rather than the Open GL
driver. (For bug #2570)
- Adds code to {WIN,X11}_GL_InitExtensions to determine the maximum
OpenGL ES version supported by the OpenGL driver (for bug #3145)
- Modifies the test that determines whether to use the OpenGL
driver or the real OpenGL ES driver to take into account the
hint, the requested and supported ES version and whether ES 1.X
is being requested. (For bug #2570 & bug #3145)
- Enables the testgles2 test for __WINDOWS__ and __LINUX__ and adds
the test to the VisualC projects.

With the fix in place I have run testdraw2, testgl and testgles2 without any issues and have run my own apps that use OpenGL, OpenGL ES 3 and OpenGL ES 1.1.
     1 0afe0e38e02cf2048e93582f01c52fbb91d3c7bb release-1.2.7
     2 230b156829ed13b31134d96f689c917981f57b84 release-1.2.5
     3 27cab50ec9c746e886ce0f3fdaa0b0cdc55a594f release-1.2.11
     4 2fe3fbd2bff50165b3cad33bf40d70b3bb3c9fd0 release-1.2.3
     5 3c052d3bcc76c899dfd4846be76243a78e8c7180 release-1.2.4
     6 3c5eed71a3320962551af3b3dfbee0c99fcf0086 release-1.2.10
     7 4867f7f7dd3426d1dbbeef48b3f3b3aa19590cc4 release-1.2.12
     8 6e28dae59e3baf4447c83e833a8d2ac912536f5b release-1.2.1
     9 7c2589fb8d4df54c6faabd3faebd0c0e73f67879 release-1.2.13
    10 86de11faf082881ad9b73a1a1d78733ca07f8db8 release-1.2.6
    11 bb051fa871aa0b53ea57df56a446cec3bb85924c release-1.2.2
    12 cfcb2e1c36ebe9809577adf768b0ec53e8768af9 release-1.2.8
    13 e044e7c70a50a2f54d14ee20d0933e904e5853b6 release-1.2.9
    14 f14cf9d71233934811774f941d0de121d5f96ccf release-1.2.14
    15 39c22a953456f6c9e2c8993c8ff973824104102a pre-touch-removal
    16 ccf5fbfa2afabab429ad911308f362201a94d810 macosx_10_4_supported
    17 d6a8fa507a45d9de7258e51585eab3e45c415149 release-2.0.0
    18 a8bd63b33636715f2cf6e7d36ab7201acbd478fe release-2.0.1
    19 a8bd63b33636715f2cf6e7d36ab7201acbd478fe release-2.0.1
    20 715a01415ac9305b9f8ec72b99fcf8cc9dd64dde release-2.0.1
    21 715a01415ac9305b9f8ec72b99fcf8cc9dd64dde release-2.0.1
    22 9ec71e56071cc80eda6691a3f8719ed5395dfcfb release-2.0.1
    23 9ec71e56071cc80eda6691a3f8719ed5395dfcfb release-2.0.1
    24 0000000000000000000000000000000000000000 release-2.0.1
    25 0000000000000000000000000000000000000000 release-2.0.1
    26 b9663c77f5c95ebf05f3c18e80619caae8ae1460 release-2.0.1
    27 be2102f000d0d2d9bab75e9703a1d503d0f6bb33 release-2.0.2
    28 f285b9487756ff681f76c85644222c03a7bfa1c7 release-2.0.3
    29 f285b9487756ff681f76c85644222c03a7bfa1c7 release-2.0.3
    30 704a0bfecf754e4e1383f83c7d5118b00cae26ea release-2.0.3
    31 e12c387305129c847b3928a123300b113782fe3f release-2.0.4
    32 007dfe83abf81b1ff5df40186f65e8e64987b825 release-2.0.5