Fix linear texture allocation using gbm
This commit is contained in:
@@ -80,7 +80,6 @@ bool OpenGL_InitSwapChainEGL(Instance * instance, unsigned int width, unsigned i
|
|||||||
eglInitialize(display, &major, &minor);
|
eglInitialize(display, &major, &minor);
|
||||||
|
|
||||||
eglBindAPI(EGL_OPENGL_API);
|
eglBindAPI(EGL_OPENGL_API);
|
||||||
|
|
||||||
#else
|
#else
|
||||||
EGLDisplay display = internalInstance->user_display;
|
EGLDisplay display = internalInstance->user_display;
|
||||||
#endif // USE_GBM
|
#endif // USE_GBM
|
||||||
@@ -133,6 +132,38 @@ bool OpenGL_InitSwapChainEGL(Instance * instance, unsigned int width, unsigned i
|
|||||||
// Import textures in user context
|
// Import textures in user context
|
||||||
//
|
//
|
||||||
|
|
||||||
|
#if USE_GBM
|
||||||
|
EGLAttrib attrib_list_left_tmp[] =
|
||||||
|
{
|
||||||
|
EGL_DMA_BUF_PLANE0_FD_EXT, left_texture_params.fd,
|
||||||
|
EGL_DMA_BUF_PLANE0_PITCH_EXT, left_texture_params.stride,
|
||||||
|
EGL_DMA_BUF_PLANE0_OFFSET_EXT, left_texture_params.offset,
|
||||||
|
EGL_WIDTH, left_texture_params.width,
|
||||||
|
EGL_HEIGHT, left_texture_params.height,
|
||||||
|
EGL_LINUX_DRM_FOURCC_EXT, left_texture_params.fourcc,
|
||||||
|
//EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT, left_texture_params.modifiers & 0xFFFFFFFF,
|
||||||
|
//EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT, left_texture_params.modifiers >> 32,
|
||||||
|
EGL_NONE,
|
||||||
|
};
|
||||||
|
|
||||||
|
left_image = eglCreateImage(internalInstance->user_display, EGL_NO_CONTEXT, EGL_LINUX_DMA_BUF_EXT, NULL, attrib_list_left_tmp);
|
||||||
|
|
||||||
|
EGLAttrib attrib_list_right_tmp[] =
|
||||||
|
{
|
||||||
|
EGL_DMA_BUF_PLANE0_FD_EXT, right_texture_params.fd,
|
||||||
|
EGL_DMA_BUF_PLANE0_PITCH_EXT, right_texture_params.stride,
|
||||||
|
EGL_DMA_BUF_PLANE0_OFFSET_EXT, right_texture_params.offset,
|
||||||
|
EGL_WIDTH, right_texture_params.width,
|
||||||
|
EGL_HEIGHT, right_texture_params.height,
|
||||||
|
EGL_LINUX_DRM_FOURCC_EXT, right_texture_params.fourcc,
|
||||||
|
//EGL_DMA_BUF_PLANE0_MODIFIER_LO_EXT, right_texture_params->modifiers & 0xFFFFFFFF,
|
||||||
|
//EGL_DMA_BUF_PLANE0_MODIFIER_HI_EXT, right_texture_params->modifiers >> 32,
|
||||||
|
EGL_NONE,
|
||||||
|
};
|
||||||
|
|
||||||
|
right_image = eglCreateImage(internalInstance->user_display, EGL_NO_CONTEXT, EGL_LINUX_DMA_BUF_EXT, NULL, attrib_list_right_tmp);
|
||||||
|
#endif // USE_GBM
|
||||||
|
|
||||||
PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2D_user = (PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) eglGetProcAddress ("glEGLImageTargetTexture2DOES");
|
PFNGLEGLIMAGETARGETTEXTURE2DOESPROC glEGLImageTargetTexture2D_user = (PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) eglGetProcAddress ("glEGLImageTargetTexture2DOES");
|
||||||
|
|
||||||
glGenTextures(2, textures);
|
glGenTextures(2, textures);
|
||||||
|
|||||||
Reference in New Issue
Block a user