Hmm… whatever I try I seem to be getting an EGL_BAD_MATCH…
Here’s the updated code:
eglDisplay(..);
eglIinitialize(...);
eglGetConfigs(..);
eglChooseConfig(...,&eglConfig,..);
eglSurface = eglCreatewindowSurface(...);
eglContext = eglCreateContext(..,eglConfig,..);
eglMakecurrent(....);
static const int pBufferAttribs[] = {
.....
};
pbuffer = eglCreatePbufferSurface(eglDisplay, eglConfig, pBufferAttribs);
int err = eglGetError(); //every time returns 3009 - EGL_BAD_MATCH
Here are the different combinations of pBufferAttribs I used:
(1)
{
EGL_WIDTH, 2,
EGL_HEIGHT, 2,
EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
EGL_TEXTURE_FORMAT, EGL_TEXTURE_RGB,
EGL_LARGEST_BUFFER, EGL_FALSE,
EGL_TEXTURE_TARGET, EGL_TEXTURE_2D,
EGL_MIPMAP_TEXTURE, EGL_FALSE,
EGL_NONE
}
(2)
{
EGL_WIDTH, 2,
EGL_HEIGHT, 2,
EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
EGL_TEXTURE_FORMAT, EGL_TEXTURE_RGB,
EGL_TEXTURE_TARGET, EGL_TEXTURE_2D,
EGL_MIPMAP_TEXTURE, EGL_FALSE,
EGL_NONE
}
(3)
{
EGL_WIDTH, 2,
EGL_HEIGHT, 2,
EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
EGL_NONE
}
(4)
{
EGL_WIDTH, 2,
EGL_HEIGHT, 2,
EGL_NONE
}
(5)
{
EGL_NONE
}
(6)
NULL
Every time, the same error right after eglCreatePbufferSurface.
I normally use a 16 bit 5_6_5 RGB texture, w-1024 h-512.
Am I missing something?