Pārlūkot izejas kodu

Fixed bug 3940 - Add support for EGL_SURFACE_TYPE

tomwardio

Add support to be able to set EGL_SURFACE_TYPE bits when creating an EGL config. This is usefule when wanting to create pixel buffer surfaces in custom video drivers.
Sam Lantinga 7 gadi atpakaļ
vecāks
revīzija
7334a2a1b5
2 mainītis faili ar 6 papildinājumiem un 0 dzēšanām
  1. 5 0
      src/video/SDL_egl.c
  2. 1 0
      src/video/SDL_egl_c.h

+ 5 - 0
src/video/SDL_egl.c

@@ -527,6 +527,11 @@ SDL_EGL_ChooseConfig(_THIS)
         _this->egl_data->eglBindAPI(EGL_OPENGL_API);
     }
 
+    if (_this->egl_data->egl_surfacetype) {
+        attribs[i++] = EGL_SURFACE_TYPE;
+        attribs[i++] = _this->egl_data->egl_surfacetype;
+    }
+
     attribs[i++] = EGL_NONE;
 
     if (_this->egl_data->eglChooseConfig(_this->egl_data->egl_display,

+ 1 - 0
src/video/SDL_egl_c.h

@@ -35,6 +35,7 @@ typedef struct SDL_EGL_VideoData
     EGLDisplay egl_display;
     EGLConfig egl_config;
     int egl_swapinterval;
+    int egl_surfacetype;
     
     EGLDisplay(EGLAPIENTRY *eglGetDisplay) (NativeDisplayType display);
     EGLDisplay(EGLAPIENTRY *eglGetPlatformDisplay) (EGLenum platform,