[Interest] Setting current QOpenGLContext with an EGLContext
Thomas Sevaldrud
thomas at silentwings.no
Tue Sep 29 11:37:14 CEST 2015
Hi,
I'm still working on the EGL PBuffer/DirectX integration through Qt that I
posted about last week :-)
Thanks to good help from this list I now have the PBuffer and DirectX
texture set up with the share handle. I also have a QOpenGLContext which I
have used to set up the EGL PBuffer. I don't have a QSurface though, since
my surface is the EGL PBuffer.
So, the question now is how do I make the QOpenGLContext current. (I need a
QOpenGLContext::currentContext() for QOpenGLFunctions and so on).
The code looks something like this:
glContext_ = new QOpenGLContext;
glContext_->setFormat(format);
glContext_->create();
....
QPlatformNativeInterface *nativeInterface =
QGuiApplication::platformNativeInterface();
egl_display_ =
static_cast<EGLDisplay>(nativeInterface->nativeResourceForContext("eglDisplay",
glContext_));
egl_context_ =
static_cast<EGLContext>(nativeInterface->nativeResourceForContext("eglContext",
glContext_));
EGLConfig egl_config =
static_cast<EGLConfig>(nativeInterface->nativeResourceForContext("eglConfig",
glContext_));
EGLint attribs[] = { ...
};
egl_pbuffer_ = eglCreatePbufferSurface(egl_display_, egl_config, attribs);
... D3D setup stuff...
// Start rendering to PBuffer:
eglMakeCurrent(egl_display_, egl_pbuffer_, egl_pbuffer_, egl_context_);
... Here I should like to set glContext current somehow...
Any ideas?
- Thomas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150929/e37813ec/attachment.html>
More information about the Interest
mailing list